Agora RTC Objective-C API Reference  Refactor
AgoraObjects.h
Go to the documentation of this file.
1 //
2 // AgoraObjects.h
3 // AgoraRtcEngineKit
4 //
5 // Copyright (c) 2018 Agora. All rights reserved.
6 //
7 
8 #import <CoreMedia/CoreMedia.h>
9 #import <Foundation/Foundation.h>
10 #import "AgoraEnumerates.h"
12 
13 #if TARGET_OS_IPHONE
14 #import <UIKit/UIKit.h>
15 typedef UIView VIEW_CLASS;
16 typedef UIColor COLOR_CLASS;
17 typedef UIImage IMAGE_CLASS;
18 #elif TARGET_OS_MAC
19 #import <AppKit/AppKit.h>
20 typedef NSView VIEW_CLASS;
21 typedef NSColor COLOR_CLASS;
22 typedef NSImage IMAGE_CLASS;
23 #endif
24 
33 typedef int(^AgoraRtcMediaPlayerCustomSourceOnReadCallback)(id<AgoraRtcMediaPlayerProtocol> _Nonnull playerKit, unsigned char * _Nullable buffer, int bufferSize);
34 
48 typedef long long(^AgoraRtcMediaPlayerCustomSourceOnSeekCallback)(id<AgoraRtcMediaPlayerProtocol> _Nonnull playerKit, long long offset, int whence);
49 
50 __attribute__((visibility("default"))) @interface AgoraMediaSource : NSObject
54 @property(copy, nonatomic) NSString *_Nullable url;
58 @property(copy, nonatomic) NSString *_Nullable uri;
62 @property(assign, nonatomic) NSUInteger startPos;
68 @property(assign, nonatomic) BOOL autoPlay;
80 @property(assign, nonatomic) BOOL enableCache;
91 @property(assign, nonatomic) BOOL enableMultiAudioTrack;
97 @property(assign, nonatomic) BOOL isAgoraSource;
103 @property(assign, nonatomic) BOOL isLiveSource;
109 
110 @end
111 
112 __attribute__((visibility("default"))) @interface AgoraMediaPlayerCacheStatistics : NSObject
113 
114 @property(assign, nonatomic) NSInteger fileSize;
115 @property(assign, nonatomic) NSInteger cacheSize;
116 @property(assign, nonatomic) NSInteger downloadSize;
117 
118 @end
119 
124 __attribute__((visibility("default"))) @interface AgoraMediaPlayerUpdatedInfo : NSObject
125 @property(copy, nonatomic) NSString *_Nullable playerId;
126 @property(copy, nonatomic) NSString *_Nullable deviceId;
127 @property(strong, nonatomic) AgoraMediaPlayerCacheStatistics *_Nullable cacheStatistics;
128 @end
129 
134 __attribute__((visibility("default"))) @interface AgoraMediaPlayerSrcInfo : NSObject
138 @property(assign, nonatomic) int bitrateInKbps;
142 @property(copy, nonatomic) NSString *_Nullable name;
143 
144 @end
145 
146 
150 __attribute__((visibility("default"))) @interface AgoraDirectCdnStreamingStats : NSObject
154 @property(assign, nonatomic) NSUInteger videoWidth;
158 @property(assign, nonatomic) NSUInteger videoHeight;
162 @property(assign, nonatomic) NSUInteger fps;
166 @property(assign, nonatomic) NSUInteger videoBitrate;
170 @property(assign, nonatomic) NSUInteger audioBitrate;
171 
172 @end
173 
177 __attribute__((visibility("default"))) @interface AgoraDirectCdnStreamingMediaOptions : NSObject
183 @property(assign, nonatomic) BOOL publishCameraTrack;
189 @property(assign, nonatomic) BOOL publishMicrophoneTrack;
195 @property(assign, nonatomic) BOOL publishCustomAudioTrack;
201 @property(assign, nonatomic) BOOL publishCustomVideoTrack;
207 @property(assign, nonatomic) BOOL publishMediaPlayerAudioTrack;
212 @property(assign, nonatomic) NSInteger publishMediaPlayerId;
213 
217 @property(assign, nonatomic) NSInteger customVideoTrackId;
218 
219 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
220 
226 @property(assign, nonatomic) BOOL publishScreenTrack;
233 @property(assign, nonatomic) BOOL publishSecondaryScreenTrack;
240 @property(assign, nonatomic) BOOL publishThirdScreenTrack;
247 @property(assign, nonatomic) BOOL publishFourthScreenTrack;
254 @property(assign, nonatomic) BOOL publishLoopbackAudioTrack;
261 @property(copy, nonatomic) NSString *_Nullable publishLoopbackDeviceName;
262 #endif
263 
264 @end
265 
269 __attribute__((visibility("default"))) @interface AgoraEncodedVideoTrackOptions : NSObject
275 @property(assign, nonatomic) int ccMode;
286 @property(assign, nonatomic) int codecType;
290 @property(assign, nonatomic) int targetBitrate;
291 @end
292 
296 __attribute__((visibility("default"))) @interface AgoraRtcChannelMediaOptions : NSObject
302 @property(assign, nonatomic) BOOL publishCameraTrack;
308 @property(assign, nonatomic) BOOL publishSecondaryCameraTrack;
314 @property(assign, nonatomic) BOOL publishMicrophoneTrack;
315 #if TARGET_OS_IPHONE
316 
321 @property(assign, nonatomic) BOOL publishScreenCaptureVideo;
327 @property(assign, nonatomic) BOOL publishScreenCaptureAudio;
328 #elif TARGET_OS_MAC
329 
334 @property(assign, nonatomic) BOOL publishThirdCameraTrack;
340 @property(assign, nonatomic) BOOL publishFourthCameraTrack;
346 @property(assign, nonatomic) BOOL publishScreenTrack;
352 @property(assign, nonatomic) BOOL publishSecondaryScreenTrack;
358 @property(assign, nonatomic) BOOL publishThirdScreenTrack;
364 @property(assign, nonatomic) BOOL publishFourthScreenTrack;
365 #endif
366 
371 @property(assign, nonatomic) BOOL publishCustomAudioTrack;
375 @property(assign, nonatomic) NSInteger publishCustomAudioTrackId;
381 @property(assign, nonatomic) BOOL publishCustomVideoTrack;
387 @property(assign, nonatomic) BOOL publishEncodedVideoTrack;
393 @property(assign, nonatomic) BOOL publishMediaPlayerAudioTrack;
399 @property(assign, nonatomic) BOOL publishMediaPlayerVideoTrack;
405 @property(assign, nonatomic) BOOL publishTranscodedVideoTrack;
411 @property(assign, nonatomic) BOOL publishMixedAudioTrack;
421 @property(assign, nonatomic) NSInteger mixPolicyForMixedTrack;
427 @property(assign, nonatomic) BOOL publishLipSyncTrack;
435 @property(assign, nonatomic) BOOL autoSubscribeAudio;
443 @property(assign, nonatomic) BOOL autoSubscribeVideo;
449 @property(assign, nonatomic) BOOL enableAudioRecordingOrPlayout;
454 @property(assign, nonatomic) NSInteger publishMediaPlayerId;
459 @property(assign, nonatomic) AgoraClientRole clientRoleType;
464 @property(assign, nonatomic) AgoraAudienceLatencyLevelType audienceLatencyLevel;
469 @property(assign, nonatomic) AgoraVideoStreamType defaultVideoStreamType;
474 @property(assign, nonatomic) AgoraChannelProfile channelProfile;
479 @property(assign, nonatomic) NSInteger audioDelayMs;
484 @property(assign, nonatomic) NSInteger mediaPlayerAudioDelayMs;
488 @property(copy, nonatomic) NSString * _Nullable token;
495 @property(assign, nonatomic) BOOL enableBuiltInMediaEncryption;
496 
502 @property(assign, nonatomic) BOOL publishRhythmPlayerTrack;
510 @property(assign, nonatomic) BOOL isInteractiveAudience;
511 
515 @property(assign, nonatomic) NSInteger customVideoTrackId;
516 
522 @property(assign, nonatomic) BOOL isAudioFilterable;
523 
526 @property(copy, nonatomic) NSString * _Nullable parameters;
527 
528 @end
529 
532 __attribute__((visibility("default"))) @interface AgoraRtcVideoCanvas : NSObject
541 @property(strong, nonatomic) VIEW_CLASS *_Nullable view;
545 @property(assign, nonatomic) NSUInteger uid;
550 @property(assign, nonatomic) AgoraVideoRenderMode renderMode;
560 @property(assign, nonatomic) AgoraVideoMirrorMode mirrorMode;
565 @property(assign, nonatomic) AgoraVideoViewSetupMode setupMode;
570 @property(nonatomic, assign) AgoraVideoSourceType sourceType;
576 @property(nonatomic, assign) int mediaPlayerId;
582 @property(assign, nonatomic) CGRect cropArea;
583 
587 @property(assign, nonatomic) UInt32 backgroundColor;
588 
594 @property(assign, nonatomic) BOOL enableAlphaMask;
595 
599 @property(assign, nonatomic) int rotation;
600 
601 @end
602 
606 __attribute__((visibility("default"))) @interface AgoraLastmileProbeConfig : NSObject
614 @property (assign, nonatomic) BOOL probeUplink;
620 @property (assign, nonatomic) BOOL probeDownlink;
627 @property (assign, nonatomic) NSUInteger expectedUplinkBitrate;
632 @property (assign, nonatomic) NSUInteger expectedDownlinkBitrate;
633 @end
634 
638 __attribute__((visibility("default"))) @interface AgoraLastmileProbeOneWayResult : NSObject
642 @property (assign, nonatomic) NSUInteger packetLossRate;
646 @property (assign, nonatomic) NSUInteger jitter;
650 @property (assign, nonatomic) NSUInteger availableBandwidth;
651 @end
652 
656 __attribute__((visibility("default"))) @interface AgoraLastmileProbeResult : NSObject
661 @property (assign, nonatomic) AgoraLastmileProbeResultState state;
665 @property (assign, nonatomic) NSUInteger rtt;
671 @property (strong, nonatomic) AgoraLastmileProbeOneWayResult *_Nonnull uplinkReport;
677 @property (strong, nonatomic) AgoraLastmileProbeOneWayResult *_Nonnull downlinkReport;
678 @end
679 
680 
684 __attribute__((visibility("default"))) @interface AgoraRtcLocalVideoStats : NSObject
689 @property(assign, nonatomic) NSUInteger sentBitrate;
694 @property(assign, nonatomic) NSUInteger sentFrameRate;
698 @property(assign, nonatomic) NSUInteger uid;
699 
702 @property(assign, nonatomic) NSInteger captureFrameRate;
705 @property(assign, nonatomic) NSInteger captureFrameWidth;
708 @property(assign, nonatomic) NSInteger captureFrameHeight;
712 @property(assign, nonatomic) NSInteger regulatedCaptureFrameRate;
716 @property(assign, nonatomic) NSInteger regulatedCaptureFrameWidth;
720 @property(assign, nonatomic) NSInteger regulatedCaptureFrameHeight;
721 
724 @property(assign, nonatomic) NSInteger encoderOutputFrameRate;
727 @property(assign, nonatomic) NSInteger rendererOutputFrameRate;
730 @property(assign, nonatomic) NSInteger targetFrameRate;
732 @property(assign, nonatomic) AgoraVideoQualityAdaptIndication qualityAdaptIndication;
737 @property(assign, nonatomic) NSInteger targetBitrate;
742 @property(assign, nonatomic) NSInteger encodedBitrate;
746 @property(assign, nonatomic) NSInteger encodedFrameWidth;
750 @property(assign, nonatomic) NSInteger encodedFrameHeight;
754 @property(assign, nonatomic) NSInteger encodedFrameCount;
760 @property(assign, nonatomic) AgoraVideoCodecType codecType;
766 @property(assign, nonatomic) AgoraVideoHwEncoderAccelerating hwEncoderAccelerating;
770 @property(assign, nonatomic) NSInteger txPacketLossRate;
774 @property(assign, nonatomic) AgoraCaptureBrightnessLevelType captureBrightnessLevel NS_SWIFT_NAME(captureBrightnessLevel);
778 @property(assign, nonatomic) BOOL dualStreamEnabled;
779 @end
780 
782 __attribute__((visibility("default"))) @interface AgoraRtcRemoteVideoStats : NSObject
786 @property(assign, nonatomic) NSUInteger uid;
789 @property(assign, nonatomic) NSUInteger delay __deprecated;
792 @property(assign, nonatomic) NSUInteger e2eDelay;
795 @property(assign, nonatomic) NSUInteger width;
798 @property(assign, nonatomic) NSUInteger height;
801 @property(assign, nonatomic) NSUInteger receivedBitrate;
804 @property(assign, nonatomic) NSUInteger receivedFrameRate;
807 @property(assign, nonatomic) AgoraVideoStreamType rxStreamType;
808 
811 @property(assign, nonatomic) NSInteger decoderOutputFrameRate;
814 @property(assign, nonatomic) NSInteger rendererOutputFrameRate;
817 @property(assign, nonatomic) NSInteger frameLossRate;
820 @property(assign, nonatomic) NSInteger packetLossRate;
826 @property(assign, nonatomic) NSInteger totalFrozenTime;
831 @property(assign, nonatomic) NSUInteger totalActiveTime;
835 @property(assign, nonatomic) NSInteger publishDuration;
839 @property(assign, nonatomic) NSInteger frozenRate;
844 @property(assign, nonatomic) NSInteger avSyncTimeMs;
852 @property(assign, nonatomic) NSInteger mosValue;
856 @property(assign, nonatomic) NSUInteger rxVideoBytes;
857 
858 @end
859 
863 __attribute__((visibility("default"))) @interface AgoraRtcLocalAudioStats : NSObject
867 @property(assign, nonatomic) NSUInteger numChannels;
871 @property(assign, nonatomic) NSUInteger sentSampleRate;
875 @property(assign, nonatomic) NSUInteger sentBitrate;
878 @property(assign, nonatomic) NSUInteger internalCodec;
881 @property(assign, nonatomic) NSUInteger txPacketLossRate;
885 @property(assign, nonatomic) NSUInteger audioDeviceDelay;
886 
887 @end
888 
892 __attribute__((visibility("default"))) @interface AgoraRtcRemoteAudioStats : NSObject
896 @property(assign, nonatomic) NSUInteger uid;
909 @property(assign, nonatomic) NSUInteger quality;
913 @property(assign, nonatomic) NSUInteger networkTransportDelay;
917 @property(assign, nonatomic) NSUInteger jitterBufferDelay;
921 @property(assign, nonatomic) NSUInteger audioLossRate;
925 @property(assign, nonatomic) NSUInteger numChannels;
929 @property(assign, nonatomic) NSUInteger receivedSampleRate;
933 @property(assign, nonatomic) NSUInteger receivedBitrate;
940 @property(assign, nonatomic) NSUInteger totalFrozenTime;
945 @property(assign, nonatomic) NSUInteger totalActiveTime;
949 @property(assign, nonatomic) NSInteger publishDuration;
953 @property(assign, nonatomic) NSUInteger frozenRate;
971 @property(assign, nonatomic) NSUInteger mosValue;
976 @property (assign, nonatomic) NSUInteger frozenRateByCustomPlcCount;
980 @property (assign, nonatomic) NSUInteger plcCount;
981 
985 @property(assign, nonatomic) AgoraExperienceQuality qoeQuality;
989 @property(assign, nonatomic) AgoraExperiencePoorReason qualityChangedReason;
994 @property(assign, nonatomic) NSUInteger rxAudioBytes;
995 @end
996 
999 __attribute__((visibility("default"))) @interface AgoraRtcAudioVolumeInfo : NSObject
1002 @property(assign, nonatomic) NSUInteger uid;
1005 @property(assign, nonatomic) NSUInteger volume;
1006 
1007 @property(assign, nonatomic) NSUInteger vad;
1008 
1011 @property (assign, nonatomic) double voicePitch;
1012 
1013 @end
1014 
1018 __attribute__((visibility("default"))) @interface AgoraChannelStats : NSObject
1022 @property(assign, nonatomic) NSUInteger duration;
1026 @property(assign, nonatomic) NSUInteger txBytes;
1030 @property(assign, nonatomic) NSUInteger rxBytes;
1034 @property(assign, nonatomic) NSUInteger txAudioKBitrate;
1038 @property(assign, nonatomic) NSUInteger rxAudioKBitrate;
1042 @property(assign, nonatomic) NSUInteger txVideoKBitrate;
1046 @property(assign, nonatomic) NSUInteger rxVideoKBitrate;
1050 @property(assign, nonatomic) NSUInteger txAudioBytes;
1054 @property(assign, nonatomic) NSUInteger txVideoBytes;
1059 @property(assign, nonatomic) NSUInteger rxAudioBytes;
1063 @property(assign, nonatomic) NSUInteger rxVideoBytes;
1067 @property(assign, nonatomic) NSUInteger lastmileDelay;
1071 @property(assign, nonatomic) NSUInteger userCount;
1074 @property(assign, nonatomic) double cpuAppUsage;
1077 @property(assign, nonatomic) double cpuTotalUsage;
1080 @property(assign, nonatomic) NSInteger gatewayRtt;
1084 @property(assign, nonatomic) double memoryAppUsageRatio;
1088 @property(assign, nonatomic) double memoryTotalUsageRatio;
1092 @property(assign, nonatomic) NSInteger memoryAppUsageInKbytes;
1096 @property(assign, nonatomic) NSInteger connectTimeMs;
1097 
1101 @property(assign, nonatomic) NSUInteger txKBitrate;
1105 @property(assign, nonatomic) NSUInteger rxKBitrate;
1106 
1109 @property(assign, nonatomic) NSInteger firstAudioPacketDuration;
1112 @property(assign, nonatomic) NSInteger firstVideoPacketDuration;
1115 @property(assign, nonatomic) NSInteger firstVideoKeyFramePacketDuration;
1118 @property(assign, nonatomic) NSInteger packetsBeforeFirstKeyFramePacket;
1122 @property(assign, nonatomic) NSInteger txPacketLossRate;
1126 @property(assign, nonatomic) NSInteger rxPacketLossRate;
1127 
1128 @end
1131 __attribute__((visibility("default"))) @interface AgoraAdvancedVideoOptions : NSObject
1135 @property(assign, nonatomic) AgoraEncodingPreference encodingPreference;
1136 
1138 @property(assign, nonatomic) AgoraCompressionPreference compressionPreference;
1139 
1140 @end
1141 
1142 __attribute__((visibility("default"))) @interface AgoraVideoCodecCapLevels : NSObject
1143 
1144 @property(assign, nonatomic) AgoraVideoCodecCapabilityLevel hwDecodingLevel;
1145 @property(assign, nonatomic) AgoraVideoCodecCapabilityLevel swDecodingLevel;
1146 
1147 @end
1148 
1152 __attribute__((visibility("default"))) @interface AgoraVideoCodecCapInfo : NSObject
1153 
1155 @property(assign, nonatomic) AgoraVideoCodecType codecType;
1158 @property(assign, nonatomic) NSUInteger codecCapMask;
1159 
1161 @property(strong, nonatomic) AgoraVideoCodecCapLevels *_Nonnull codecCapLevels;
1162 
1163 @end
1166 __attribute__((visibility("default"))) @interface AgoraVideoEncoderConfiguration : NSObject
1195 @property(assign, nonatomic) CGSize dimensions;
1196 
1199 @property(assign, nonatomic) AgoraVideoCodecType codecType;
1200 
1203 @property(assign, nonatomic) AgoraVideoFrameRate frameRate;
1204 
1225 @property(assign, nonatomic) NSInteger bitrate;
1226 
1227 @property(assign, nonatomic) NSInteger minBitrate;
1228 
1231 @property(assign, nonatomic) AgoraVideoOutputOrientationMode orientationMode;
1232 
1235 @property(assign, nonatomic) AgoraVideoMirrorMode mirrorMode;
1236 
1244 @property (assign, nonatomic) AgoraDegradationPreference degradationPreference;
1245 
1247 @property (strong, nonatomic) AgoraAdvancedVideoOptions *_Nullable advancedVideoOptions;
1248 
1259 - (instancetype _Nonnull)initWithSize:(CGSize)size
1260  frameRate:(AgoraVideoFrameRate)frameRate
1261  bitrate:(NSInteger)bitrate
1262  orientationMode:(AgoraVideoOutputOrientationMode)orientationMode
1263  mirrorMode:(AgoraVideoMirrorMode)mirrorMode NS_SWIFT_NAME(init(size:frameRate:bitrate:orientationMode:mirrorMode:));
1264 
1276 - (instancetype _Nonnull)initWithWidth:(NSInteger)width
1277  height:(NSInteger)height
1278  frameRate:(AgoraVideoFrameRate)frameRate
1279  bitrate:(NSInteger)bitrate
1280  orientationMode:(AgoraVideoOutputOrientationMode)orientationMode
1281  mirrorMode:(AgoraVideoMirrorMode)mirrorMode NS_SWIFT_NAME(init(width:height:frameRate:bitrate:orientationMode:mirrorMode:));
1282 @end
1283 
1286 __attribute__((visibility("default"))) @interface AgoraLiveTranscodingUser : NSObject
1289 @property(assign, nonatomic) NSUInteger uid;
1292 @property(assign, nonatomic) CGRect rect;
1298 @property(assign, nonatomic) NSInteger zOrder;
1304 @property(assign, nonatomic) double alpha;
1319 @property(assign, nonatomic) NSInteger audioChannel;
1320 @end
1321 
1324 __attribute__((visibility("default"))) @interface AgoraLiveStreamAdvancedFeature : NSObject
1325 
1331 @property(copy, nonatomic) NSString* _Nullable featureName;
1332 
1338 @property(assign, nonatomic) BOOL opened;
1339 @end
1340 
1343 __attribute__((visibility("default"))) @interface AgoraImage : NSObject
1346 @property(strong, nonatomic) NSURL *_Nonnull url;
1349 @property(assign, nonatomic) CGRect rect;
1353 @property (assign, nonatomic) NSInteger zOrder;
1361 @property(assign, nonatomic) double alpha;
1362 @end
1363 
1366 __attribute__((visibility("default"))) @interface WatermarkOptions : NSObject
1372 @property(assign, nonatomic) BOOL visibleInPreview;
1380 @property(assign, nonatomic) CGRect positionInLandscapeMode;
1388 @property(assign, nonatomic) CGRect positionInPortraitMode;
1389 @end
1390 
1393 __attribute__((visibility("default"))) @interface AgoraLiveTranscoding : NSObject
1407 @property(assign, nonatomic) CGSize size;
1414 @property(assign, nonatomic) NSInteger videoBitrate;
1421 @property(assign, nonatomic) NSInteger videoFramerate;
1427 @property(assign, nonatomic) BOOL lowLatency;
1429 @property(assign, nonatomic) NSInteger videoGop;
1436 @property(assign, nonatomic) AgoraVideoCodecProfileType videoCodecProfile;
1437 
1442 @property(assign, nonatomic) AgoraVideoCodecTypeForStream videoCodecType;
1443 
1446 @property(copy, nonatomic) NSArray<AgoraLiveTranscodingUser*>* _Nullable transcodingUsers;
1447 
1450 @property(copy, nonatomic) NSString* _Nullable transcodingExtraInfo;
1451 
1455 @property(copy, nonatomic) NSArray<AgoraImage*>* _Nullable watermarkArray;
1456 
1460 @property(copy, nonatomic) NSArray<AgoraImage*>* _Nullable backgroundImageArray;
1461 
1471 @property(strong, nonatomic) COLOR_CLASS* _Nullable backgroundColor;
1472 
1475 @property(assign, nonatomic) AgoraAudioSampleRateType audioSampleRate;
1478 @property(assign, nonatomic) NSInteger audioBitrate;
1489 @property(assign, nonatomic) NSInteger audioChannels;
1495 @property(assign, nonatomic) AgoraAudioCodecProfileType audioCodecProfile;
1496 
1501 + (AgoraLiveTranscoding* _Nonnull)defaultTranscoding NS_SWIFT_NAME(default());
1502 
1510 - (int)addUser:(AgoraLiveTranscodingUser* _Nonnull)user NS_SWIFT_NAME(add(_:));
1511 
1519 - (int)removeUser:(NSUInteger)uid NS_SWIFT_NAME(removeUser(_:));
1520 
1530 - (void)setAdvancedFeatures:(NSString* _Nonnull)featureName opened:(BOOL)opened NS_SWIFT_NAME(setAdvancedFeatures(_:opened:));
1531 
1535 - (NSArray<AgoraLiveStreamAdvancedFeature*>* _Nullable)getAdvancedFeatures NS_SWIFT_NAME(getAdvancedFeatures());
1536 
1537 @end
1538 
1541 __attribute__((visibility("default"))) @interface AgoraLiveInjectStreamConfig : NSObject
1545 @property(assign, nonatomic) CGSize size;
1548 @property(assign, nonatomic) NSInteger videoGop;
1551 @property(assign, nonatomic) NSInteger videoFramerate;
1554 @property(assign, nonatomic) NSInteger videoBitrate;
1555 
1558 @property(assign, nonatomic) AgoraAudioSampleRateType audioSampleRate;
1561 @property(assign, nonatomic) NSInteger audioBitrate;
1564 @property(assign, nonatomic) NSInteger audioChannels;
1565 
1570 + (AgoraLiveInjectStreamConfig *_Nonnull)defaultConfig NS_SWIFT_NAME(defaultConfig());
1571 @end
1572 
1573  __deprecated
1574 
1577  __attribute__((visibility("default"))) @interface AgoraRtcVideoCompositingRegion
1578  : NSObject
1581  @property(assign, nonatomic) NSUInteger uid;
1584 @property(assign, nonatomic) CGFloat x;
1587 @property(assign, nonatomic) CGFloat y;
1590 @property(assign, nonatomic) CGFloat width;
1593 @property(assign, nonatomic) CGFloat height;
1596 @property(assign, nonatomic) NSInteger zOrder;
1599 @property(assign, nonatomic) CGFloat alpha;
1602 @property(assign, nonatomic) AgoraVideoRenderMode renderMode;
1603 @end
1604 
1605  __deprecated
1608  __attribute__((visibility("default"))) @interface AgoraRtcVideoCompositingLayout
1609  : NSObject
1612  @property(assign, nonatomic) NSInteger canvasWidth;
1615 @property(assign, nonatomic) NSInteger canvasHeight;
1618 @property(copy, nonatomic) NSString *_Nullable backgroundColor;
1621 @property(copy, nonatomic) NSArray<AgoraRtcVideoCompositingRegion *> *_Nullable regions;
1624 @property(copy, nonatomic) NSString *_Nullable appData;
1625 @end
1626 
1632  __deprecated __attribute__((visibility("default"))) @interface AgoraPublisherConfiguration
1633  : NSObject
1639  @property(assign, nonatomic) BOOL owner;
1640 
1643 @property(assign, nonatomic) NSInteger width;
1646 @property(assign, nonatomic) NSInteger height;
1649 @property(assign, nonatomic) NSInteger framerate;
1652 @property(assign, nonatomic) NSInteger bitrate;
1655 @property(assign, nonatomic) NSInteger audiosamplerate;
1658 @property(assign, nonatomic) NSInteger audiobitrate;
1661 @property(assign, nonatomic) NSInteger audiochannels;
1662 
1669 @property(assign, nonatomic) NSInteger defaultLayout;
1672 @property(assign, nonatomic) AgoraRtmpStreamLifeCycle lifeCycle;
1673 
1676 @property(assign, nonatomic) NSInteger injectStreamWidth;
1677 
1680 @property(assign, nonatomic) NSInteger injectStreamHeight;
1681 
1684 @property(copy, nonatomic) NSString *_Nullable injectStreamUrl;
1685 
1688 @property(copy, nonatomic) NSString *_Nullable publishUrl;
1689 
1693 @property(copy, nonatomic) NSString *_Nullable rawStreamUrl;
1694 
1697 @property(copy, nonatomic) NSString *_Nullable extraInfo;
1698 
1701 - (BOOL)validate NS_SWIFT_NAME(validate());
1702 
1703 - (NSString * _Nullable)toJsonString NS_SWIFT_NAME(toJsonString());
1704 @end
1705 
1706 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
1707 
1710 __attribute__((visibility("default"))) @interface AgoraRtcDeviceInfo : NSObject
1711 @property (assign, nonatomic) int __deprecated index;
1712 
1715 @property(assign, nonatomic) AgoraMediaDeviceType type;
1716 
1719 @property(copy, nonatomic) NSString *_Nullable deviceId;
1720 
1723 @property(copy, nonatomic) NSString *_Nullable deviceName;
1724 
1727 @property(assign, nonatomic) AgoraAudioOutputRouting routing;
1728 @end
1729 #endif
1730 
1733 __attribute__((visibility("default"))) @interface AgoraVideoFrame : NSObject
1746 @property(assign, nonatomic) NSInteger format;
1747 
1751 @property(assign, nonatomic) CMTime time; // Time for this frame.
1752 
1756 @property(assign, nonatomic) int stride DEPRECATED_MSG_ATTRIBUTE("use strideInPixels instead");
1757 
1761 @property(assign, nonatomic) int strideInPixels; // Number of pixels between two consecutive rows.
1762  // Note: in pixel, not byte. Not used for iOS
1763  // textures.
1764 
1767 @property(assign, nonatomic) int height; // Number of rows of pixels. Not used for iOS textures.
1768 
1771 @property(assign, nonatomic) CVPixelBufferRef _Nullable textureBuf;
1772 
1775 @property(strong, nonatomic) IMAGE_CLASS * _Nullable image;
1776 
1779 @property(strong, nonatomic) NSData *_Nullable dataBuf; // Raw data buffer. Not used for iOS textures.
1780 
1787 @property(strong, nonatomic) NSData *_Nullable alphaBuf;
1788 
1791 @property(assign, nonatomic) int cropLeft; // Number of pixels to crop on the left boundary.
1794 @property(assign, nonatomic) int cropTop; // Number of pixels to crop on the top boundary.
1797 @property(assign, nonatomic) int cropRight; // Number of pixels to crop on the right boundary.
1800 @property(assign, nonatomic) int cropBottom; // Number of pixels to crop on the bottom boundary.
1804 @property(assign, nonatomic) int rotation; // 0, 90, 180, 270. See document for rotation calculation.
1805 /* Note
1806  * 1. strideInPixels
1807  * Stride is in pixels, not bytes
1808  * 2. About the frame width and height
1809  * No field is defined for the width. However, it can be deduced by:
1810  * croppedWidth = (strideInPixels - cropLeft - cropRight)
1811  * And
1812  * croppedHeight = (height - cropTop - cropBottom)
1813  * 3. About crop
1814  * _________________________________________________________________.....
1815  * | ^ | ^
1816  * | | | |
1817  * | cropTop | |
1818  * | | | |
1819  * | v | |
1820  * | ________________________________ | |
1821  * | | | | |
1822  * | | | | |
1823  * |<-- cropLeft -->| valid region |<- cropRight ->|
1824  * | | | | height
1825  * | | | |
1826  * | |_____________________________ | | |
1827  * | ^ | |
1828  * | | | |
1829  * | cropBottom | |
1830  * | | | |
1831  * | v | v
1832  * _________________________________________________________________......
1833  * | |
1834  * |<---------------- strideInPixels ----------------------------->|
1835  *
1836  * If your buffer contains garbage data, you can crop them. For example, the frame size is
1837  * 360 x 640, often the buffer stride is 368, that is, there extra 8 pixels on the
1838  * right are for padding, and should be removed. In this case, you can set:
1839  * strideInPixels = 368;
1840  * height = 640;
1841  * cropRight = 8;
1842  * // cropLeft, cropTop, cropBottom are set to a default of 0
1843  */
1844 
1848 - (void)fillAlphaData;
1849 @end
1850 
1851 __attribute__((visibility("default"))) @interface AgoraLogConfig: NSObject
1863 @property (copy, nonatomic) NSString * _Nullable filePath;
1871 @property (assign, nonatomic) NSInteger fileSizeInKB;
1877 @property (assign, nonatomic) AgoraLogLevel level;
1878 @end
1879 
1883 __attribute__((visibility("default"))) @interface AgoraRtcEngineConfig: NSObject
1884 
1889  @property (copy, nonatomic) NSString * _Nullable appId;
1890 
1894  @property (assign, nonatomic) AgoraChannelProfile channelProfile;
1895 
1899  @property (copy, nonatomic) NSString * _Nullable license;
1900 
1908  @property (assign, nonatomic) AgoraAudioScenario audioScenario;
1918  @property (assign, nonatomic) AgoraAreaCodeType areaCode;
1919  @property (strong, nonatomic) AgoraLogConfig * _Nullable logConfig;
1925  @property (assign, nonatomic) AgoraThreadPriorityType threadPriority;
1926  @property (weak, nonatomic) id<AgoraMediaFilterEventDelegate> _Nullable eventDelegate;
1932  @property (assign, nonatomic) BOOL domainLimit;
1933 
1939  @property (assign, nonatomic) BOOL autoRegisterAgoraExtensions;
1940 @end
1941 
1945 __attribute__((visibility("default"))) @interface AgoraAudioFrame : NSObject
1948 @property(assign, nonatomic) NSInteger samplesPerChannel;
1952 @property(assign, nonatomic) NSInteger bytesPerSample;
1959 @property(assign, nonatomic) NSInteger channels;
1962 @property(assign, nonatomic) NSInteger samplesPerSec;
1967 @property(assign, nonatomic) void* _Nullable buffer;
1975 @property(assign, nonatomic) int64_t renderTimeMs;
1978 @property(assign, nonatomic) int64_t presentationMs;
1981 @property(assign, nonatomic) NSInteger avSyncType;
1985 @property(assign, nonatomic) uint32_t rtpTimestamp;
1986 @end
1987 
2016 __attribute__((visibility("default"))) @interface AgoraAudioParams : NSObject
2017 
2026 @property (assign, nonatomic) NSInteger sampleRate;
2027 
2028 /* The number of audio channels, which can be set as either of the following values:
2029 
2030  - `1`: Mono (Default)
2031  - `2`: Stereo
2032  */
2033 @property (assign, nonatomic) NSInteger channel;
2034 
2035 /* The use mode of the audio data. See AgoraAudioRawFrameOperationMode.
2036  */
2037 @property (assign, nonatomic) AgoraAudioRawFrameOperationMode mode;
2038 
2042 @property (assign, nonatomic) NSInteger samplesPerCall;
2043 
2044 @end
2045 
2049 __attribute__((visibility("default"))) @interface AgoraEncodedAudioFrameInfo: NSObject
2050  @property (assign, nonatomic) NSInteger samplesPerChannel;
2051  @property (assign, nonatomic) NSInteger channels;
2052  @property (assign, nonatomic) NSInteger samplesPerSec;
2053  @property (assign, nonatomic) AgoraAudioCodecType codecType;
2054 @end
2055 
2059 __attribute__((visibility("default"))) @interface AgoraUplinkNetworkInfo : NSObject
2063 @property(nonatomic, assign) int videoEncoderTargetBitrateBps;
2064 @end
2065 
2069 __attribute__((visibility("default"))) @interface AgoraDownlinkNetworkInfo : NSObject
2073 @property(nonatomic, assign) int lastmileBufferDelayTimeMs;
2077 @property(nonatomic, assign) int bandwidthEstimationBps;
2078 @end
2079 
2083 __attribute__((visibility("default"))) @interface AgoraLeaveChannelOptions : NSObject
2089 @property(nonatomic, assign) BOOL stopAudioMixing;
2090 
2096 @property(nonatomic, assign) BOOL stopAllEffect;
2097 
2103 @property(nonatomic, assign) BOOL stopMicrophoneRecording;
2104 
2105 @end
2106 
2107 __attribute__((visibility("default"))) @interface AgoraOutputVideoFrame : NSObject
2108 
2121 @property (nonatomic, assign) NSInteger type;
2125 @property (nonatomic, assign) int width;
2129 @property (nonatomic, assign) int height;
2133 @property (nonatomic, assign) int yStride;
2137 @property (nonatomic, assign) int uStride;
2141 @property (nonatomic, assign) int vStride;
2145 @property (nonatomic, assign) uint8_t* _Nullable yBuffer;
2149 @property (nonatomic, assign) uint8_t* _Nullable uBuffer;
2153 @property (nonatomic, assign) uint8_t* _Nullable vBuffer;
2157 @property (nonatomic, assign) int rotation;
2164 @property (nonatomic, assign) int64_t renderTimeMs;
2168 @property (nonatomic, assign) int avSyncType;
2169 
2172 @property(assign, nonatomic) CVPixelBufferRef _Nullable pixelBuffer;
2177 @property (nonatomic, assign) uint8_t* _Nullable alphaBuffer;
2178 
2182 @property(nonatomic, strong) NSDictionary *_Nonnull metaInfo;
2183 
2184 @end
2185 
2188 __attribute__((visibility("default"))) @interface AgoraEncryptionConfig: NSObject
2189 
2192  @property (assign, nonatomic) AgoraEncryptionMode encryptionMode;
2193 
2200  @property (copy, nonatomic) NSString * _Nullable encryptionKey;
2201  @property (strong, nonatomic) NSData * _Nullable encryptionKdfSalt;
2202  @property (assign, nonatomic) BOOL datastreamEncryptionEnabled;
2203  @end
2204 
2207 __attribute__((visibility("default"))) @interface AgoraUserInfo: NSObject
2208 
2211 @property(assign, nonatomic) NSUInteger uid;
2212 
2215  @property (copy, nonatomic) NSString * _Nullable userAccount;
2216  @end
2217 
2220 __attribute__((visibility("default"))) @interface AgoraClientRoleOptions: NSObject
2221 
2224 @property (assign, nonatomic) AgoraAudienceLatencyLevelType audienceLatencyLevel;
2225 
2226 @end
2227 
2230 __attribute__((visibility("default"))) @interface AgoraCameraCapturerConfiguration: NSObject
2236 #if TARGET_OS_IOS
2237 @property (assign, nonatomic) AgoraCameraDirection cameraDirection;
2238 #elif TARGET_OS_MAC
2239 
2242 @property (copy, nonatomic) NSString * _Nullable deviceId;
2243 #endif
2244 
2248 @property(assign, nonatomic) CGSize dimensions;
2249 
2252 @property(assign, nonatomic) int frameRate;
2253 
2258 @property(assign, nonatomic) BOOL followEncodeDimensionRatio;
2259 
2260 @end
2261 
2264 __attribute__((visibility("default"))) @interface AgoraDataStreamConfig: NSObject
2265 
2266 @property (assign, nonatomic) BOOL ordered;
2267 
2268 @property (assign, nonatomic) BOOL syncWithAudio;
2269 @end
2270 
2271 
2274 __attribute__((visibility("default"))) @interface AgoraChannelMediaRelayInfo: NSObject
2277 @property (copy, nonatomic) NSString * _Nullable token;
2280 @property (copy, nonatomic) NSString * _Nullable channelName;
2283 @property (assign, nonatomic) NSUInteger uid;
2288 - (instancetype _Nonnull)initWithToken:(NSString *_Nullable)token NS_SWIFT_NAME(init(token:));
2289 @end
2290 
2293 __attribute__((visibility("default"))) @interface AgoraChannelMediaRelayConfiguration: NSObject
2303 @property (strong, nonatomic, readonly) NSDictionary<NSString *, AgoraChannelMediaRelayInfo *> *_Nullable destinationInfos;
2313 @property (strong, nonatomic) AgoraChannelMediaRelayInfo *_Nonnull sourceInfo;
2332 - (BOOL)setDestinationInfo:(AgoraChannelMediaRelayInfo *_Nonnull)destinationInfo forChannelName:(NSString *_Nonnull)channelName NS_SWIFT_NAME(setDestinationInfo(_:forChannelName:));
2340 - (BOOL)removeDestinationInfoForChannelName:(NSString *_Nonnull)channelName NS_SWIFT_NAME(removeDestinationInfo(forChannelName:));
2341 @end
2342 
2343 
2345 __attribute__((visibility("default"))) @interface AgoraBeautyOptions : NSObject
2346 
2355 @property(nonatomic, assign) AgoraLighteningContrastLevel lighteningContrastLevel;
2356 
2361 @property(nonatomic, assign) float lighteningLevel;
2362 
2367 @property(nonatomic, assign) float smoothnessLevel;
2368 
2373 @property(nonatomic, assign) float rednessLevel;
2374 
2379 @property(nonatomic, assign) float sharpnessLevel;
2380 
2381 @end
2382 
2388 __attribute__((visibility("default"))) @interface AgoraVideoDenoiserOptions : NSObject
2389 
2392 @property(nonatomic, assign) AgoraVideoDenoiserMode mode;
2393 
2396 @property(nonatomic, assign) AgoraVideoDenoiserLevel level;
2397 
2398 @end
2399 
2405 __attribute__((visibility("default"))) @interface AgoraLowlightEnhanceOptions : NSObject
2406 
2408 @property(nonatomic, assign) AgoraLowlightEnhanceMode mode;
2409 
2411 @property(nonatomic, assign) AgoraLowlightEnhanceLevel level;
2412 
2413 @end
2414 
2420 __attribute__((visibility("default"))) @interface AgoraColorEnhanceOptions : NSObject
2421 
2423 @property(nonatomic, assign) float strengthLevel;
2424 
2426 @property(nonatomic, assign) float skinProtectLevel;
2427 
2428 @end
2429 
2430 
2433 __attribute__((visibility("default"))) @interface AgoraVirtualBackgroundSource : NSObject
2434 
2437 @property(nonatomic, assign) AgoraVirtualBackgroundSourceType backgroundSourceType NS_SWIFT_NAME(backgroundSourceType);
2438 
2447 @property(nonatomic, assign) NSUInteger color NS_SWIFT_NAME(color);
2448 
2455 @property(nonatomic, copy) NSString* _Nullable source NS_SWIFT_NAME(source);
2456 
2458 @property(nonatomic, assign) AgoraBlurDegree blurDegree;
2459 
2460 @end
2461 
2464 __attribute__((visibility("default"))) @interface AgoraSegmentationProperty: NSObject
2465 
2466 @property(nonatomic, assign) SegModelType modelType;
2467 
2468 @property(nonatomic, assign) float greenCapacity;
2469 
2470 @end
2471 
2472 
2475 __attribute__((visibility("default"))) @interface AgoraTranscodingVideoStream: NSObject
2479 @property (assign, nonatomic) AgoraVideoSourceType sourceType;
2483 @property (assign, nonatomic) NSUInteger remoteUserUid;
2487 @property (copy, nonatomic) NSString * _Nullable imageUrl;
2491 @property(assign, nonatomic) NSUInteger mediaPlayerId;
2495 @property (assign, nonatomic) CGRect rect;
2501 @property (assign, nonatomic) NSInteger zOrder;
2505 @property(assign, nonatomic) double alpha;
2509 @property(assign, nonatomic) BOOL mirror;
2510 
2511 @end
2512 
2515 __attribute__((visibility("default"))) @interface AgoraLocalTranscoderConfiguration: NSObject
2519 @property(copy, nonatomic) NSArray<AgoraTranscodingVideoStream *> *_Nullable videoInputStreams;
2523 @property (strong, nonatomic) AgoraVideoEncoderConfiguration *_Nonnull videoOutputConfiguration;
2524 
2530 @property(assign, nonatomic) BOOL syncWithPrimaryCamera;
2531 
2532 @end
2533 
2536 __attribute__((visibility("default"))) @interface AgoraScreenCaptureParameters: NSObject
2541 @property (assign, nonatomic) CGSize dimensions;
2546 @property (assign, nonatomic) NSInteger frameRate;
2551 @property (assign, nonatomic) NSInteger bitrate;
2552 
2558 @property(assign, nonatomic) BOOL captureMouseCursor;
2559 
2568 @property(assign, nonatomic) BOOL windowFocus;
2569 
2578 @property(copy, nonatomic) NSArray* _Nullable excludeWindowList;
2579 
2588 @property(assign, nonatomic) BOOL highLighted;
2594 @property(strong, nonatomic) COLOR_CLASS* _Nullable highLightColor;
2598 @property(assign, nonatomic) NSUInteger highLightWidth;
2599 
2600 @end
2601 
2602 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
2603 
2605 __attribute__((visibility("default"))) @interface AgoraScreenCaptureConfiguration: NSObject
2611 @property(assign, nonatomic) BOOL isCaptureWindow;
2615 @property(assign, nonatomic) UInt32 displayId;
2621 @property(assign, nonatomic) UInt32 windowId;
2622 
2626 @property(strong, nonatomic) AgoraScreenCaptureParameters* _Nonnull params;
2634 @property(assign, nonatomic) CGRect regionRect;
2635 
2636 @end
2637 #endif
2638 
2639 __attribute__((visibility("default"))) @interface AgoraScreenVideoParameters : NSObject
2640 
2671 @property(assign, nonatomic) CGSize dimensions;
2684 @property(assign, nonatomic) AgoraVideoFrameRate frameRate;
2738 @property(assign, nonatomic) NSInteger bitrate;
2739 
2742 @property(assign, nonatomic) AgoraVideoContentHint contentHint;
2743 
2744 @end
2745 
2746 __attribute__((visibility("default"))) @interface AgoraScreenAudioParameters : NSObject
2747 
2748 @property(assign, nonatomic) NSInteger captureSignalVolume;
2749 
2750 @end
2751 
2752 __attribute__((visibility("default"))) @interface AgoraScreenCaptureParameters2 : NSObject
2756 @property(assign, nonatomic) BOOL captureAudio;
2760 @property(strong, nonatomic) AgoraScreenAudioParameters* _Nonnull audioParams;
2764 @property(assign, nonatomic) BOOL captureVideo;
2768 @property(strong, nonatomic) AgoraScreenVideoParameters* _Nonnull videoParams;
2769 @end
2770 
2774 __attribute__((visibility("default"))) @interface AgoraAudioRecordingConfiguration: NSObject
2779 @property (copy, nonatomic) NSString * _Nullable filePath;
2789 @property (assign, nonatomic) NSUInteger sampleRate;
2793 @property (assign, nonatomic) AgoraAudioFileRecordingType fileRecordOption;
2798 @property (assign, nonatomic) AgoraAudioRecordingQuality quality;
2799 
2805 @property (assign, nonatomic) NSInteger recordingChannel;
2806 
2807 @end
2808 
2811 __attribute__((visibility("default"))) @interface AgoraSimulcastStreamConfig: NSObject
2812 
2816  @property (assign, nonatomic) int kBitrate;
2820  @property (assign, nonatomic) int framerate;
2824  @property (assign, nonatomic) CGSize dimensions;
2825  @end
2826 
2830 __attribute__((visibility("default"))) @interface AgoraRtcMediaStreamInfo : NSObject
2832 @property(nonatomic, assign) NSInteger streamIndex;
2834 @property(nonatomic, assign) AgoraMediaStreamType streamType;
2836 @property(nonatomic, copy) NSString *_Nonnull codecName;
2838 @property(nonatomic, copy) NSString *_Nullable language;
2840 @property(nonatomic, assign) NSInteger videoFrameRate;
2842 @property(nonatomic, assign) NSInteger videoBitRate;
2844 @property(nonatomic, assign) NSInteger videoWidth;
2846 @property(nonatomic, assign) NSInteger videoHeight;
2848 @property(nonatomic, assign) NSInteger audioSampleRate;
2850 @property(nonatomic, assign) NSInteger audioChannels;
2852 @property(nonatomic, assign) NSInteger duration;
2854 @property(nonatomic, assign) NSInteger rotation;
2855 
2856 @end
2857 
2858 __attribute__((visibility("default"))) @interface AgoraAudioSpectrumInfo : NSObject
2859 
2861 @property(nonatomic, assign) NSInteger uid;
2862 @property(nonatomic, strong) NSArray<NSNumber *> * _Nullable audioSpectrumData;
2863 
2864 @end
2865 
2869 __attribute__((visibility("default"))) @interface AgoraAudioEncodedFrameDelegateConfig: NSObject
2873 @property (assign, nonatomic) AgoraAudioEncodedFrameDelegatePosition postionType;
2877 @property (assign, nonatomic) AgoraAudioEncodingType encodingType;
2878 @end
2879 
2880 __attribute__((visibility("default"))) @interface AgoraContentInspectModule: NSObject
2881 @property (assign, nonatomic) AgoraContentInspectType type;
2882 
2883 @property (assign, nonatomic) NSInteger interval;
2884 @end
2885 
2886 __attribute__((visibility("default"))) @interface AgoraContentInspectConfig: NSObject
2887 @property (nonatomic, copy) NSString* _Nullable extraInfo;
2891 @property (nonatomic, copy) NSString* _Nullable serverConfig;
2892 @property(copy, nonatomic) NSArray<AgoraContentInspectModule*>* _Nullable modules;
2893 @end
2897 __attribute__((visibility("default"))) @interface AgoraRtcConnection: NSObject <NSCopying>
2898 
2906 - (instancetype _Nonnull)initWithChannelId:(NSString *_Nonnull)channelId localUid:(NSInteger)localUid;
2907 
2908 /* channelId Unique channel name for the AgoraRTC session in the string
2909  * format. The string length must be less than 64 bytes. Supported character
2910  * scopes are:
2911  * - All lowercase English letters: a to z.
2912  * - All uppercase English letters: A to Z.
2913  * - All numeric characters: 0 to 9.
2914  * - The space character.
2915  * - Punctuation characters and other symbols, including: "!", "#", "$", "%", "&", "(", ")", "+", "-", ":", ";", "<", "=", ".", ">", "?", "@", "[", "]", "^", "_", " {", "}", "|", "~", ",".
2916  */
2917 @property (nonatomic, copy) NSString *_Nonnull channelId;
2918 /* uid Local User ID. A 32-bit unsigned integer with a value ranging from 1 to
2919  * (2<sup>32</sup>-1). The `uid` must be unique and not set to 0 . Your app
2920  * must record and maintain the returned `uid` since the SDK does not do so.
2921  */
2922 @property (nonatomic, assign) NSUInteger localUid;
2923 
2924 @end
2928 __attribute__((visibility("default"))) @interface AgoraVideoSubscriptionOptions: NSObject
2929 
2930 /*
2931 * The type of the video stream to subscribe to.
2932 *
2933 * The default value is `VIDEO_STREAM_HIGH`, which means the high-quality
2934 * video stream.
2935 */
2936 @property (nonatomic, assign) AgoraVideoStreamType type;
2937 /*
2938 * Whether to subscribe to encoded video data only:
2939 * - `true`: Subscribe to encoded video data only.
2940 * - `false`: (Default) Subscribe to decoded video data.
2941 */
2942 @property (nonatomic, assign) bool encodedFrameOnly;
2943 
2944 @end
2945 
2949 __attribute__((visibility("default"))) @interface AgoraRecorderStreamInfo: NSObject
2950 
2951 /* channelId Unique channel name for the AgoraRTC session in the string
2952  * format. The string length must be less than 64 bytes. Supported character
2953  * scopes are:
2954  * - All lowercase English letters: a to z.
2955  * - All uppercase English letters: A to Z.
2956  * - All numeric characters: 0 to 9.
2957  * - The space character.
2958  * - Punctuation characters and other symbols, including: "!", "#", "$", "%", "&", "(", ")", "+", "-", ":", ";", "<", "=", ".", ">", "?", "@", "[", "]", "^", "_", " {", "}", "|", "~", ",".
2959  */
2960 @property (nonatomic, copy) NSString *_Nonnull channelId;
2961 /* uid Local User ID. A 32-bit unsigned integer with a value ranging from 1 to
2962  * (2<sup>32</sup>-1). The `uid` must be unique and not set to 0 . Your app
2963  * must record and maintain the returned `uid` since the SDK does not do so.
2964  */
2965 @property (nonatomic, nonatomic) NSUInteger uid;
2966 
2967 @end
2971 __attribute__((visibility("default"))) @interface AgoraEncodedVideoFrameInfo: NSObject
2972 
2976 @property (assign, nonatomic) AgoraVideoCodecType codecType;
2980 @property (assign, nonatomic) NSInteger width;
2984 @property (assign, nonatomic) NSInteger height;
2991 @property (assign, nonatomic) NSInteger framesPerSecond;
2995 @property (assign, nonatomic) AgoraVideoFrameType frameType;
2999 @property (assign, nonatomic) NSInteger rotation;
3003 @property (assign, nonatomic) NSInteger trackId; // This can be reserved for multiple video tracks, we need to create different ssrc
3004  // and additional payload for later implementation.
3008 @property (assign, nonatomic) NSInteger captureTimeMs;
3012 @property (assign, nonatomic) NSInteger decodeTimeMs;
3016 @property (assign, nonatomic) NSInteger uid;
3020 @property (assign, nonatomic) AgoraVideoStreamType streamType;
3021 @end
3022 
3023 NS_SWIFT_NAME(LogUploadServerInfo) __attribute__((visibility("default"))) @interface LogUploadServerInfo : NSObject
3026 @property(copy, nonatomic) NSString* _Nullable serverDomain;
3029 @property(copy, nonatomic) NSString* _Nullable serverPath;
3032 @property(assign, nonatomic) NSInteger serverPort;
3037 @property(assign, nonatomic) BOOL serverHttps;
3038 @end
3039 
3040 NS_SWIFT_NAME(AdvancedConfigInfo) __attribute__((visibility("default"))) @interface AdvancedConfigInfo : NSObject
3043 @property(strong, nonatomic) LogUploadServerInfo* _Nullable logUploadServer;
3044 @end
3045 
3046 NS_SWIFT_NAME(AgoraLocalAccessPointConfiguration) __attribute__((visibility("default"))) @interface AgoraLocalAccessPointConfiguration : NSObject
3049 @property(copy, nonatomic) NSArray* _Nullable ipList NS_SWIFT_NAME(ipList);
3052 @property(copy, nonatomic) NSArray* _Nullable domainList NS_SWIFT_NAME(domainList);
3056 @property(copy, nonatomic) NSString* _Nullable verifyDomainName NS_SWIFT_NAME(verifyDomainName);
3059 @property(assign, nonatomic) AgoraLocalProxyMode mode NS_SWIFT_NAME(mode);
3062 @property(strong, nonatomic) AdvancedConfigInfo* _Nullable advancedConfig NS_SWIFT_NAME(advancedConfig);
3063 @end
3064 
3069 __attribute__((visibility("default"))) @interface AgoraRhythmPlayerConfig: NSObject
3075 @property (assign, nonatomic) int beatsPerMeasure;
3076 /*
3077  * The range is 60 to 360.
3078  * The default value is 60,
3079  * which means that the rhythm player plays 60 beats in one minute.
3080  */
3081 @property (assign, nonatomic) int beatsPerMinute;
3082 
3083 @end
3084 
3087 NS_SWIFT_NAME(AgoraFacePositionInfo) __attribute__((visibility("default"))) @interface AgoraFacePositionInfo : NSObject
3088 
3091 @property(assign, nonatomic) NSInteger x NS_SWIFT_NAME(x);
3092 
3095 @property(assign, nonatomic) NSInteger y NS_SWIFT_NAME(y);
3096 
3099 @property(assign, nonatomic) NSInteger width NS_SWIFT_NAME(width);
3100 
3103 @property(assign, nonatomic) NSInteger height NS_SWIFT_NAME(height);
3104 
3107 @property(assign, nonatomic) NSInteger distance NS_SWIFT_NAME(distance);
3108 @end
3109 
3112 __attribute__((visibility("default"))) @interface AgoraAdvancedAudioOptions: NSObject
3113 
3114 @property(assign, nonatomic) AgoraAudioProcessChannels audioProcessingChannels;
3115 
3116 @end
3117 
3118 __attribute__((visibility("default"))) @interface AgoraImageTrackOptions : NSObject
3119 @property(copy, nonatomic) NSString *_Nullable imageUrl;
3120 @property(assign, nonatomic) int fps;
3121 @property(assign, nonatomic) AgoraVideoMirrorMode mirrorMode;
3122 @end
3123 
3128 __attribute__((visibility("default"))) @interface AgoraSpatialAudioParams : NSObject
3132 @property(assign, nonatomic) double speaker_azimuth;
3136 @property(assign, nonatomic) double speaker_elevation;
3140 @property(assign, nonatomic) double speaker_distance;
3144 @property(assign, nonatomic) NSInteger speaker_orientation;
3148 @property(assign, nonatomic) BOOL enable_blur;
3152 @property(assign, nonatomic) BOOL enable_air_absorb;
3156 @property(assign, nonatomic) double speaker_attenuation;
3160 @property(assign, nonatomic) BOOL enable_doppler;
3161 @end
3162 
3163 NS_SWIFT_NAME(AgoraEchoTestConfiguration)
3164 __attribute__((visibility("default"))) @interface AgoraEchoTestConfiguration : NSObject
3172 @property(strong, nonatomic) VIEW_CLASS* _Nullable view NS_SWIFT_NAME(view);
3175 @property(assign, nonatomic) BOOL enableAudio NS_SWIFT_NAME(enableAudio);
3178 @property(assign, nonatomic) BOOL enableVideo NS_SWIFT_NAME(enableVideo);
3181 @property(copy, nonatomic) NSString* _Nullable token NS_SWIFT_NAME(token);
3184 @property(copy, nonatomic) NSString* _Nonnull channelId NS_SWIFT_NAME(channelId);
3189 @property(assign, nonatomic) NSInteger intervalInSeconds NS_SWIFT_NAME(intervalInSeconds);
3190 @end
3191 
3195 NS_SWIFT_NAME(AgoraWlAccStats) __attribute__((visibility("default"))) @interface AgoraWlAccStats : NSObject
3199 @property(assign, nonatomic) NSInteger e2eDelayPercent NS_SWIFT_NAME(e2eDelayPercent);
3203 @property(assign, nonatomic) NSInteger frozenRatioPercent NS_SWIFT_NAME(frozenRatioPercent);
3207 @property(assign, nonatomic) NSInteger lossRatePercent NS_SWIFT_NAME(lossRatePercent);
3208 @end
3209 
3210 __attribute__((visibility("default"))) @interface AgoraMediaRecorderInfo : NSObject
3211 
3214 @property(copy, nonatomic) NSString* _Nonnull recorderFileName;
3217 @property(assign, nonatomic) NSUInteger durationMs;
3220 @property(assign, nonatomic) NSUInteger fileSize;
3221 
3222 @end
3223 
3224 __attribute__((visibility("default"))) @interface AgoraMediaRecorderConfiguration : NSObject
3225 
3228 @property(copy, nonatomic) NSString* _Nonnull storagePath;
3231 @property(assign, nonatomic) AgoraMediaRecorderContainerFormat containerFormat;
3234 @property(assign, nonatomic) AgoraMediaRecorderStreamType streamType;
3237 @property(assign, nonatomic) NSUInteger maxDurationMs;
3240 @property(assign, nonatomic) NSUInteger recorderInfoUpdateInterval;
3241 
3242 @end
3243 
3244 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
3245 
3249 __attribute__((visibility("default"))) @interface AgoraScreenCaptureSourceInfo : NSObject
3251 @property(assign, nonatomic) AgoraScreenCaptureSourceType type;
3253 @property(assign, nonatomic) CGWindowID sourceId;
3255 @property(copy, nonatomic) NSString* _Nonnull sourceName;
3257 @property(strong, nonatomic) NSImage* _Nonnull thumbImage;
3259 @property(strong, nonatomic) NSImage* _Nullable iconImage;
3261 @property(copy, nonatomic) NSString* _Nonnull processPath;
3263 @property(copy, nonatomic) NSString* _Nonnull sourceTitle;
3265 @property(assign, nonatomic) CGRect position;
3271 @property(assign, nonatomic) BOOL primaryMonitor;
3272 
3273 @end
3274 
3275 #endif
3276 
3277 NS_SWIFT_NAME(AgoraExtensionInfo) __attribute__((visibility("default"))) @interface AgoraExtensionInfo : NSObject
3278 
3282 @property (assign, nonatomic) AgoraMediaSourceType sourceType NS_SWIFT_NAME(sourceType);
3283 
3289 @property (assign, nonatomic) NSUInteger remoteUid NS_SWIFT_NAME(remoteUid);
3290 
3302 @property (copy, nonatomic) NSString *_Nonnull channelId NS_SWIFT_NAME(channelId);
3303 
3307 @property (assign, nonatomic) NSUInteger localUid NS_SWIFT_NAME(localUid);
3308 
3309 @end
3310 
3313 NS_SWIFT_NAME(AgoraAudioTrackConfig) __attribute__((visibility("default"))) @interface AgoraAudioTrackConfig : NSObject
3319 @property (assign, nonatomic) BOOL enableLocalPlayback NS_SWIFT_NAME(enableLocalPlayback);
3320 
3321 @end
3322 
3326 NS_SWIFT_NAME(AgoraVideoRenderingTracingInfo) __attribute__((visibility("default"))) @interface AgoraVideoRenderingTracingInfo : NSObject
3330 @property (assign, nonatomic) NSInteger elapsedTime NS_SWIFT_NAME(elapsedTime);
3337 @property (assign, nonatomic) NSInteger start2JoinChannel NS_SWIFT_NAME(start2JoinChannel);
3341 @property (assign, nonatomic) NSInteger join2JoinSuccess NS_SWIFT_NAME(join2JoinSuccess);
3349 @property (assign, nonatomic) NSInteger joinSuccess2RemoteJoined NS_SWIFT_NAME(joinSuccess2RemoteJoined);
3357 @property (assign, nonatomic) NSInteger remoteJoined2SetView NS_SWIFT_NAME(remoteJoined2SetView);
3366 @property (assign, nonatomic) NSInteger remoteJoined2UnmuteVideo NS_SWIFT_NAME(remoteJoined2UnmuteVideo);
3375 @property (assign, nonatomic) NSInteger remoteJoined2PacketReceived NS_SWIFT_NAME(remoteJoined2PacketReceived);
3376 
3377 @end
AgoraRecorderStreamInfo
Definition: AgoraObjects.h:2950
AgoraMediaSource
Definition: AgoraObjects.h:51
AgoraLowlightEnhanceLevel
AgoraLowlightEnhanceLevel
Definition: AgoraEnumerates.h:1974
AgoraFacePositionInfo
Definition: AgoraObjects.h:3088
AgoraRtcMediaPlayerCustomSourceOnReadCallback
int(^ AgoraRtcMediaPlayerCustomSourceOnReadCallback)(id< AgoraRtcMediaPlayerProtocol > _Nonnull playerKit, unsigned char *_Nullable buffer, int bufferSize)
The player requests to read the data callback, you need to fill the specified length of data into the...
Definition: AgoraObjects.h:33
AgoraLocalProxyMode
AgoraLocalProxyMode
Definition: AgoraEnumerates.h:3157
AgoraMediaSource::isLiveSource
BOOL isLiveSource
Definition: AgoraObjects.h:103
AgoraDirectCdnStreamingStats
Definition: AgoraObjects.h:151
AgoraDegradationPreference
AgoraDegradationPreference
Definition: AgoraEnumerates.h:1868
AgoraCameraDirection
AgoraCameraDirection
Definition: AgoraEnumerates.h:2376
AgoraMediaSource::playerOnReadCallback
AgoraRtcMediaPlayerCustomSourceOnReadCallback _Nonnull playerOnReadCallback
Definition: AgoraObjects.h:107
AgoraMediaSource::startPos
NSUInteger startPos
Definition: AgoraObjects.h:62
AgoraEncodedVideoTrackOptions
Definition: AgoraObjects.h:270
AgoraVideoRenderingTracingInfo
Definition: AgoraObjects.h:3327
AgoraScreenAudioParameters
Definition: AgoraObjects.h:2747
AgoraRtcChannelMediaOptions
Definition: AgoraObjects.h:297
AgoraMediaFilterEventDelegate.h
AgoraAudioScenario
AgoraAudioScenario
Definition: AgoraEnumerates.h:1287
AgoraRhythmPlayerConfig
Definition: AgoraObjects.h:3070
AgoraBeautyOptions
Definition: AgoraObjects.h:2346
AgoraVideoCodecCapInfo
Definition: AgoraObjects.h:1153
AgoraVideoSubscriptionOptions
Definition: AgoraObjects.h:2929
AgoraOutputVideoFrame
Definition: AgoraObjects.h:2108
AgoraAudioTrackConfig
Definition: AgoraObjects.h:3314
AgoraClientRole
AgoraClientRole
Definition: AgoraEnumerates.h:521
AgoraScreenCaptureParameters2
Definition: AgoraObjects.h:2753
AgoraExperiencePoorReason
AgoraExperiencePoorReason
Definition: AgoraEnumerates.h:763
AgoraMediaSource::uri
NSString *_Nullable uri
Definition: AgoraObjects.h:58
AgoraVideoDenoiserMode
AgoraVideoDenoiserMode
Definition: AgoraEnumerates.h:1938
AgoraContentInspectModule
Definition: AgoraObjects.h:2881
AgoraMediaPlayerSrcInfo
The information of the media stream object.
Definition: AgoraObjects.h:135
AdvancedConfigInfo
Definition: AgoraObjects.h:3041
AgoraMediaSource::url
NSString *_Nullable url
Definition: AgoraObjects.h:54
AgoraLighteningContrastLevel
AgoraLighteningContrastLevel
Definition: AgoraEnumerates.h:1925
AgoraEnumerates.h
AgoraVideoFrame
Definition: AgoraObjects.h:1734
AgoraSimulcastStreamConfig
Definition: AgoraObjects.h:2812
AgoraRtcConnection::channelId
NSString *_Nonnull channelId
Definition: AgoraObjects.h:2917
AgoraScreenCaptureParameters
Definition: AgoraObjects.h:2537
AgoraAudioRawFrameOperationMode
AgoraAudioRawFrameOperationMode
Definition: AgoraEnumerates.h:1367
AgoraMediaRecorderInfo
Definition: AgoraObjects.h:3211
AgoraSegmentationProperty
Definition: AgoraObjects.h:2465
AgoraVideoDenoiserLevel
AgoraVideoDenoiserLevel
Definition: AgoraEnumerates.h:1949
AgoraRtcRemoteVideoStats
Definition: AgoraObjects.h:783
AgoraVideoViewSetupMode
AgoraVideoViewSetupMode
Definition: AgoraEnumerates.h:3195
AgoraMediaSource::autoPlay
BOOL autoPlay
Definition: AgoraObjects.h:68
AgoraContentInspectConfig
Definition: AgoraObjects.h:2887
AgoraAudioEncodedFrameDelegateConfig
Definition: AgoraObjects.h:2870
AgoraTranscodingVideoStream
Definition: AgoraObjects.h:2476
AgoraDirectCdnStreamingMediaOptions
Definition: AgoraObjects.h:178
AgoraAudioCodecType
AgoraAudioCodecType
Definition: AgoraEnumerates.h:687
AgoraAudioEncodedFrameDelegatePosition
AgoraAudioEncodedFrameDelegatePosition
Definition: AgoraEnumerates.h:677
AgoraRtcMediaPlayerProtocol-p
Definition: AgoraRtcMediaPlayerProtocol.h:23
AgoraRtcConnection::localUid
NSUInteger localUid
Definition: AgoraObjects.h:2922
AgoraVideoDenoiserOptions
Definition: AgoraObjects.h:2389
AgoraLastmileProbeConfig
Definition: AgoraObjects.h:607
AgoraAudienceLatencyLevelType
AgoraAudienceLatencyLevelType
Definition: AgoraEnumerates.h:529
AgoraLastmileProbeResultState
AgoraLastmileProbeResultState
Definition: AgoraEnumerates.h:785
AgoraWlAccStats
Definition: AgoraObjects.h:3196
AgoraRtcMediaStreamInfo
Definition: AgoraObjects.h:2831
AgoraChannelMediaRelayInfo
Definition: AgoraObjects.h:2275
AgoraMediaSource::enableMultiAudioTrack
BOOL enableMultiAudioTrack
Definition: AgoraObjects.h:91
WatermarkOptions
Definition: AgoraObjects.h:1367
AgoraVideoSourceType
AgoraVideoSourceType
Definition: AgoraEnumerates.h:2634
AgoraAudioFrame
Definition: AgoraObjects.h:1946
AgoraMediaRecorderStreamType
AgoraMediaRecorderStreamType
Definition: AgoraEnumerates.h:3280
AgoraAudioEncodingType
AgoraAudioEncodingType
Definition: AgoraEnumerates.h:694
AgoraMediaSource::enableCache
BOOL enableCache
Definition: AgoraObjects.h:80
AgoraAreaCodeType
AgoraAreaCodeType
Definition: AgoraEnumerates.h:2232
VIEW_CLASS
UIView VIEW_CLASS
Definition: AgoraObjects.h:15
AgoraChannelProfile
AgoraChannelProfile
Definition: AgoraEnumerates.h:487
COLOR_CLASS
UIColor COLOR_CLASS
Definition: AgoraObjects.h:16
AgoraBlurDegree
AgoraBlurDegree
Definition: AgoraEnumerates.h:1998
AgoraAudioSpectrumInfo
Definition: AgoraObjects.h:2859
AgoraLeaveChannelOptions
Definition: AgoraObjects.h:2084
AgoraDataStreamConfig
Definition: AgoraObjects.h:2265
AgoraLowlightEnhanceMode
AgoraLowlightEnhanceMode
Definition: AgoraEnumerates.h:1963
AgoraRtcRemoteAudioStats
Definition: AgoraObjects.h:893
AgoraUserInfo
Definition: AgoraObjects.h:2208
AgoraVideoCodecCapabilityLevel
AgoraVideoCodecCapabilityLevel
Definition: AgoraEnumerates.h:400
AgoraRtcEngineConfig
Definition: AgoraObjects.h:1884
AgoraMediaStreamType
AgoraMediaStreamType
Definition: AgoraEnumerates.h:2720
AgoraImageTrackOptions
Definition: AgoraObjects.h:3119
AgoraVideoRenderMode
AgoraVideoRenderMode
Definition: AgoraEnumerates.h:825
AgoraLastmileProbeOneWayResult
Definition: AgoraObjects.h:639
AgoraVideoQualityAdaptIndication
AgoraVideoQualityAdaptIndication
Definition: AgoraEnumerates.h:815
AgoraContentInspectType
AgoraContentInspectType
Definition: AgoraEnumerates.h:3043
AgoraEncryptionConfig
Definition: AgoraObjects.h:2189
AgoraEncodedVideoFrameInfo
Definition: AgoraObjects.h:2972
AgoraRtcMediaPlayerCustomSourceOnSeekCallback
long long(^ AgoraRtcMediaPlayerCustomSourceOnSeekCallback)(id< AgoraRtcMediaPlayerProtocol > _Nonnull playerKit, long long offset, int whence)
The Player seek event callback, you need to operate the corresponding stream seek operation,...
Definition: AgoraObjects.h:48
AgoraChannelMediaRelayConfiguration
Definition: AgoraObjects.h:2294
AgoraVideoStreamType
AgoraVideoStreamType
Definition: AgoraEnumerates.h:807
AgoraVideoCodecTypeForStream
AgoraVideoCodecTypeForStream
Definition: AgoraEnumerates.h:434
AgoraEchoTestConfiguration
Definition: AgoraObjects.h:3165
AgoraAdvancedAudioOptions
Definition: AgoraObjects.h:3113
AgoraVideoCodecCapLevels
Definition: AgoraObjects.h:1143
AgoraRtcAudioVolumeInfo
Definition: AgoraObjects.h:1000
AgoraVideoHwEncoderAccelerating
AgoraVideoHwEncoderAccelerating
Definition: AgoraEnumerates.h:418
AgoraMediaPlayerCacheStatistics
Definition: AgoraObjects.h:113
AgoraAudioProcessChannels
AgoraAudioProcessChannels
Definition: AgoraEnumerates.h:3201
AgoraLocalAccessPointConfiguration
Definition: AgoraObjects.h:3047
AgoraEncodingPreference
AgoraEncodingPreference
Definition: AgoraEnumerates.h:1880
AgoraThreadPriorityType
AgoraThreadPriorityType
Definition: AgoraEnumerates.h:3016
AgoraScreenVideoParameters
Definition: AgoraObjects.h:2640
AgoraVirtualBackgroundSource
Definition: AgoraObjects.h:2434
AgoraLiveStreamAdvancedFeature
Definition: AgoraObjects.h:1325
AgoraRtcConnection
Definition: AgoraObjects.h:2897
AgoraLowlightEnhanceOptions
Definition: AgoraObjects.h:2406
AgoraExperienceQuality
AgoraExperienceQuality
Definition: AgoraEnumerates.h:752
__deprecated
#define __deprecated
Definition: AgoraBase.h:63
AgoraAudioCodecProfileType
AgoraAudioCodecProfileType
Definition: AgoraEnumerates.h:1109
AgoraVideoContentHint
AgoraVideoContentHint
Definition: AgoraEnumerates.h:3005
AgoraMediaSource::isAgoraSource
BOOL isAgoraSource
Definition: AgoraObjects.h:97
AgoraLocalTranscoderConfiguration
Definition: AgoraObjects.h:2516
AgoraRtcVideoCanvas
Definition: AgoraObjects.h:533
AgoraEncodedAudioFrameInfo
Definition: AgoraObjects.h:2050
AgoraVirtualBackgroundSourceType
AgoraVirtualBackgroundSourceType
Definition: AgoraEnumerates.h:1984
SegModelType
SegModelType
Definition: AgoraEnumerates.h:2007
AgoraMediaSource::playerOnSeekCallback
AgoraRtcMediaPlayerCustomSourceOnSeekCallback _Nonnull playerOnSeekCallback
Definition: AgoraObjects.h:108
AgoraAudioRecordingConfiguration
Definition: AgoraObjects.h:2775
LogUploadServerInfo
Definition: AgoraObjects.h:3024
AgoraVideoFrameType
AgoraVideoFrameType
Definition: AgoraEnumerates.h:1787
AgoraColorEnhanceOptions
Definition: AgoraObjects.h:2421
AgoraMediaRecorderConfiguration
Definition: AgoraObjects.h:3225
AgoraMediaRecorderContainerFormat
AgoraMediaRecorderContainerFormat
Definition: AgoraEnumerates.h:3289
AgoraLogConfig
Definition: AgoraObjects.h:1852
AgoraClientRoleOptions
Definition: AgoraObjects.h:2221
AgoraMediaSourceType
AgoraMediaSourceType
Definition: AgoraEnumerates.h:2568
AgoraAudioFileRecordingType
AgoraAudioFileRecordingType
Definition: AgoraEnumerates.h:667
AgoraRtcLocalAudioStats
Definition: AgoraObjects.h:864
AgoraCameraCapturerConfiguration
Definition: AgoraObjects.h:2231
AgoraCompressionPreference
AgoraCompressionPreference
Definition: AgoraEnumerates.h:1896
IMAGE_CLASS
UIImage IMAGE_CLASS
Definition: AgoraObjects.h:17
AgoraAdvancedVideoOptions
Definition: AgoraObjects.h:1132
AgoraExtensionInfo
Definition: AgoraObjects.h:3278
AgoraMediaPlayerUpdatedInfo
player_id and device_id has value when user trigger interface of opening.
Definition: AgoraObjects.h:125
AgoraLogLevel
AgoraLogLevel
Definition: AgoraEnumerates.h:2207
AgoraScreenCaptureSourceType
AgoraScreenCaptureSourceType
Definition: AgoraEnumerates.h:3298
AgoraLastmileProbeResult
Definition: AgoraObjects.h:657
AgoraChannelStats
Definition: AgoraObjects.h:1019
AgoraCaptureBrightnessLevelType
AgoraCaptureBrightnessLevelType
Definition: AgoraEnumerates.h:537