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 @end
220 
224 __attribute__((visibility("default"))) @interface AgoraEncodedVideoTrackOptions : NSObject
230 @property(assign, nonatomic) int ccMode;
241 @property(assign, nonatomic) int codecType;
245 @property(assign, nonatomic) int targetBitrate;
246 @end
247 
251 __attribute__((visibility("default"))) @interface AgoraRtcChannelMediaOptions : NSObject
257 @property(assign, nonatomic) BOOL publishCameraTrack;
263 @property(assign, nonatomic) BOOL publishSecondaryCameraTrack;
269 @property(assign, nonatomic) BOOL publishMicrophoneTrack;
270 #if TARGET_OS_IPHONE
271 
276 @property(assign, nonatomic) BOOL publishScreenCaptureVideo;
282 @property(assign, nonatomic) BOOL publishScreenCaptureAudio;
283 #elif TARGET_OS_MAC
284 
289 @property(assign, nonatomic) BOOL publishThirdCameraTrack;
295 @property(assign, nonatomic) BOOL publishFourthCameraTrack;
301 @property(assign, nonatomic) BOOL publishScreenTrack;
307 @property(assign, nonatomic) BOOL publishSecondaryScreenTrack;
313 @property(assign, nonatomic) BOOL publishThirdScreenTrack;
319 @property(assign, nonatomic) BOOL publishFourthScreenTrack;
320 #endif
321 
326 @property(assign, nonatomic) BOOL publishCustomAudioTrack;
330 @property(assign, nonatomic) NSInteger publishCustomAudioTrackId;
336 @property(assign, nonatomic) BOOL publishCustomVideoTrack;
342 @property(assign, nonatomic) BOOL publishEncodedVideoTrack;
348 @property(assign, nonatomic) BOOL publishMediaPlayerAudioTrack;
354 @property(assign, nonatomic) BOOL publishMediaPlayerVideoTrack;
360 @property(assign, nonatomic) BOOL publishTranscodedVideoTrack;
366 @property(assign, nonatomic) BOOL publishMixedAudioTrack;
374 @property(assign, nonatomic) BOOL autoSubscribeAudio;
382 @property(assign, nonatomic) BOOL autoSubscribeVideo;
388 @property(assign, nonatomic) BOOL enableAudioRecordingOrPlayout;
393 @property(assign, nonatomic) NSInteger publishMediaPlayerId;
398 @property(assign, nonatomic) AgoraClientRole clientRoleType;
403 @property(assign, nonatomic) AgoraAudienceLatencyLevelType audienceLatencyLevel;
408 @property(assign, nonatomic) AgoraVideoStreamType defaultVideoStreamType;
413 @property(assign, nonatomic) AgoraChannelProfile channelProfile;
418 @property(assign, nonatomic) NSInteger audioDelayMs;
423 @property(assign, nonatomic) NSInteger mediaPlayerAudioDelayMs;
427 @property(copy, nonatomic) NSString * _Nullable token;
434 @property(assign, nonatomic) BOOL enableBuiltInMediaEncryption;
435 
441 @property(assign, nonatomic) BOOL publishRhythmPlayerTrack;
449 @property(assign, nonatomic) BOOL isInteractiveAudience;
450 
454 @property(assign, nonatomic) NSInteger customVideoTrackId;
455 
461 @property(assign, nonatomic) BOOL isAudioFilterable;
462 
463 @end
464 
467 __attribute__((visibility("default"))) @interface AgoraRtcVideoCanvas : NSObject
476 @property(strong, nonatomic) VIEW_CLASS *_Nullable view;
480 @property(assign, nonatomic) NSUInteger uid;
485 @property(assign, nonatomic) AgoraVideoRenderMode renderMode;
495 @property(assign, nonatomic) AgoraVideoMirrorMode mirrorMode;
500 @property(assign, nonatomic) AgoraVideoViewSetupMode setupMode;
505 @property(nonatomic, assign) AgoraVideoSourceType sourceType;
511 @property(nonatomic, assign) int mediaPlayerId;
517 @property(assign, nonatomic) CGRect cropArea;
518 
522 @property(assign, nonatomic) UInt32 backgroundColor;
523 
529 @property(assign, nonatomic) BOOL enableAlphaMask;
530 
531 @end
532 
536 __attribute__((visibility("default"))) @interface AgoraLastmileProbeConfig : NSObject
544 @property (assign, nonatomic) BOOL probeUplink;
550 @property (assign, nonatomic) BOOL probeDownlink;
557 @property (assign, nonatomic) NSUInteger expectedUplinkBitrate;
562 @property (assign, nonatomic) NSUInteger expectedDownlinkBitrate;
563 @end
564 
568 __attribute__((visibility("default"))) @interface AgoraLastmileProbeOneWayResult : NSObject
572 @property (assign, nonatomic) NSUInteger packetLossRate;
576 @property (assign, nonatomic) NSUInteger jitter;
580 @property (assign, nonatomic) NSUInteger availableBandwidth;
581 @end
582 
586 __attribute__((visibility("default"))) @interface AgoraLastmileProbeResult : NSObject
591 @property (assign, nonatomic) AgoraLastmileProbeResultState state;
595 @property (assign, nonatomic) NSUInteger rtt;
601 @property (strong, nonatomic) AgoraLastmileProbeOneWayResult *_Nonnull uplinkReport;
607 @property (strong, nonatomic) AgoraLastmileProbeOneWayResult *_Nonnull downlinkReport;
608 @end
609 
610 
614 __attribute__((visibility("default"))) @interface AgoraRtcLocalVideoStats : NSObject
619 @property(assign, nonatomic) NSUInteger sentBitrate;
624 @property(assign, nonatomic) NSUInteger sentFrameRate;
628 @property(assign, nonatomic) NSUInteger uid;
629 
632 @property(assign, nonatomic) NSInteger captureFrameRate;
635 @property(assign, nonatomic) NSInteger captureFrameWidth;
638 @property(assign, nonatomic) NSInteger captureFrameHeight;
642 @property(assign, nonatomic) NSInteger regulatedCaptureFrameRate;
646 @property(assign, nonatomic) NSInteger regulatedCaptureFrameWidth;
650 @property(assign, nonatomic) NSInteger regulatedCaptureFrameHeight;
651 
654 @property(assign, nonatomic) NSInteger encoderOutputFrameRate;
657 @property(assign, nonatomic) NSInteger rendererOutputFrameRate;
660 @property(assign, nonatomic) NSInteger targetFrameRate;
662 @property(assign, nonatomic) AgoraVideoQualityAdaptIndication qualityAdaptIndication;
667 @property(assign, nonatomic) NSInteger targetBitrate;
672 @property(assign, nonatomic) NSInteger encodedBitrate;
676 @property(assign, nonatomic) NSInteger encodedFrameWidth;
680 @property(assign, nonatomic) NSInteger encodedFrameHeight;
684 @property(assign, nonatomic) NSInteger encodedFrameCount;
690 @property(assign, nonatomic) AgoraVideoCodecType codecType;
696 @property(assign, nonatomic) AgoraVideoHwEncoderAccelerating hwEncoderAccelerating;
700 @property(assign, nonatomic) NSInteger txPacketLossRate;
704 @property(assign, nonatomic) AgoraCaptureBrightnessLevelType captureBrightnessLevel NS_SWIFT_NAME(captureBrightnessLevel);
708 @property(assign, nonatomic) BOOL dualStreamEnabled;
709 @end
710 
712 __attribute__((visibility("default"))) @interface AgoraRtcRemoteVideoStats : NSObject
716 @property(assign, nonatomic) NSUInteger uid;
719 @property(assign, nonatomic) NSUInteger delay __deprecated;
722 @property(assign, nonatomic) NSUInteger e2eDelay;
725 @property(assign, nonatomic) NSUInteger width;
728 @property(assign, nonatomic) NSUInteger height;
731 @property(assign, nonatomic) NSUInteger receivedBitrate;
734 @property(assign, nonatomic) NSUInteger receivedFrameRate;
737 @property(assign, nonatomic) AgoraVideoStreamType rxStreamType;
738 
741 @property(assign, nonatomic) NSInteger decoderOutputFrameRate;
744 @property(assign, nonatomic) NSInteger rendererOutputFrameRate;
747 @property(assign, nonatomic) NSInteger frameLossRate;
750 @property(assign, nonatomic) NSInteger packetLossRate;
756 @property(assign, nonatomic) NSInteger totalFrozenTime;
761 @property(assign, nonatomic) NSUInteger totalActiveTime;
765 @property(assign, nonatomic) NSInteger publishDuration;
769 @property(assign, nonatomic) NSInteger frozenRate;
774 @property(assign, nonatomic) NSInteger avSyncTimeMs;
782 @property(assign, nonatomic) NSInteger mosValue;
786 @property(assign, nonatomic) NSUInteger rxVideoBytes;
787 
788 @end
789 
793 __attribute__((visibility("default"))) @interface AgoraRtcLocalAudioStats : NSObject
797 @property(assign, nonatomic) NSUInteger numChannels;
801 @property(assign, nonatomic) NSUInteger sentSampleRate;
805 @property(assign, nonatomic) NSUInteger sentBitrate;
808 @property(assign, nonatomic) NSUInteger internalCodec;
811 @property(assign, nonatomic) NSUInteger txPacketLossRate;
815 @property(assign, nonatomic) NSUInteger audioDeviceDelay;
816 
817 @end
818 
822 __attribute__((visibility("default"))) @interface AgoraRtcRemoteAudioStats : NSObject
826 @property(assign, nonatomic) NSUInteger uid;
839 @property(assign, nonatomic) NSUInteger quality;
843 @property(assign, nonatomic) NSUInteger networkTransportDelay;
847 @property(assign, nonatomic) NSUInteger jitterBufferDelay;
851 @property(assign, nonatomic) NSUInteger audioLossRate;
855 @property(assign, nonatomic) NSUInteger numChannels;
859 @property(assign, nonatomic) NSUInteger receivedSampleRate;
863 @property(assign, nonatomic) NSUInteger receivedBitrate;
870 @property(assign, nonatomic) NSUInteger totalFrozenTime;
875 @property(assign, nonatomic) NSUInteger totalActiveTime;
879 @property(assign, nonatomic) NSInteger publishDuration;
883 @property(assign, nonatomic) NSUInteger frozenRate;
901 @property(assign, nonatomic) NSUInteger mosValue;
906 @property (assign, nonatomic) NSUInteger frozenRateByCustomPlcCount;
910 @property (assign, nonatomic) NSUInteger plcCount;
911 
915 @property(assign, nonatomic) AgoraExperienceQuality qoeQuality;
919 @property(assign, nonatomic) AgoraExperiencePoorReason qualityChangedReason;
924 @property(assign, nonatomic) NSUInteger rxAudioBytes;
925 @end
926 
929 __attribute__((visibility("default"))) @interface AgoraRtcAudioVolumeInfo : NSObject
932 @property(assign, nonatomic) NSUInteger uid;
935 @property(assign, nonatomic) NSUInteger volume;
936 
937 @property(assign, nonatomic) NSUInteger vad;
938 
941 @property (assign, nonatomic) double voicePitch;
942 
943 @end
944 
948 __attribute__((visibility("default"))) @interface AgoraChannelStats : NSObject
952 @property(assign, nonatomic) NSUInteger duration;
956 @property(assign, nonatomic) NSUInteger txBytes;
960 @property(assign, nonatomic) NSUInteger rxBytes;
964 @property(assign, nonatomic) NSUInteger txAudioKBitrate;
968 @property(assign, nonatomic) NSUInteger rxAudioKBitrate;
972 @property(assign, nonatomic) NSUInteger txVideoKBitrate;
976 @property(assign, nonatomic) NSUInteger rxVideoKBitrate;
980 @property(assign, nonatomic) NSUInteger txAudioBytes;
984 @property(assign, nonatomic) NSUInteger txVideoBytes;
989 @property(assign, nonatomic) NSUInteger rxAudioBytes;
993 @property(assign, nonatomic) NSUInteger rxVideoBytes;
997 @property(assign, nonatomic) NSUInteger lastmileDelay;
1001 @property(assign, nonatomic) NSUInteger userCount;
1004 @property(assign, nonatomic) double cpuAppUsage;
1007 @property(assign, nonatomic) double cpuTotalUsage;
1010 @property(assign, nonatomic) NSInteger gatewayRtt;
1014 @property(assign, nonatomic) double memoryAppUsageRatio;
1018 @property(assign, nonatomic) double memoryTotalUsageRatio;
1022 @property(assign, nonatomic) NSInteger memoryAppUsageInKbytes;
1026 @property(assign, nonatomic) NSInteger connectTimeMs;
1027 
1031 @property(assign, nonatomic) NSUInteger txKBitrate;
1035 @property(assign, nonatomic) NSUInteger rxKBitrate;
1036 
1039 @property(assign, nonatomic) NSInteger firstAudioPacketDuration;
1042 @property(assign, nonatomic) NSInteger firstVideoPacketDuration;
1045 @property(assign, nonatomic) NSInteger firstVideoKeyFramePacketDuration;
1048 @property(assign, nonatomic) NSInteger packetsBeforeFirstKeyFramePacket;
1052 @property(assign, nonatomic) NSInteger txPacketLossRate;
1056 @property(assign, nonatomic) NSInteger rxPacketLossRate;
1057 
1058 @end
1061 __attribute__((visibility("default"))) @interface AgoraAdvancedVideoOptions : NSObject
1065 @property(assign, nonatomic) AgoraEncodingPreference encodingPreference;
1066 
1068 @property(assign, nonatomic) AgoraCompressionPreference compressionPreference;
1069 
1070 @end
1071 
1072 __attribute__((visibility("default"))) @interface AgoraVideoCodecCapLevels : NSObject
1073 
1074 @property(assign, nonatomic) AgoraVideoCodecCapabilityLevel hwDecodingLevel;
1075 @property(assign, nonatomic) AgoraVideoCodecCapabilityLevel swDecodingLevel;
1076 
1077 @end
1078 
1082 __attribute__((visibility("default"))) @interface AgoraVideoCodecCapInfo : NSObject
1083 
1085 @property(assign, nonatomic) AgoraVideoCodecType codecType;
1088 @property(assign, nonatomic) NSUInteger codecCapMask;
1089 
1091 @property(strong, nonatomic) AgoraVideoCodecCapLevels *_Nonnull codecCapLevels;
1092 
1093 @end
1096 __attribute__((visibility("default"))) @interface AgoraVideoEncoderConfiguration : NSObject
1125 @property(assign, nonatomic) CGSize dimensions;
1126 
1129 @property(assign, nonatomic) AgoraVideoCodecType codecType;
1130 
1133 @property(assign, nonatomic) AgoraVideoFrameRate frameRate;
1134 
1155 @property(assign, nonatomic) NSInteger bitrate;
1156 
1157 @property(assign, nonatomic) NSInteger minBitrate;
1158 
1161 @property(assign, nonatomic) AgoraVideoOutputOrientationMode orientationMode;
1162 
1165 @property(assign, nonatomic) AgoraVideoMirrorMode mirrorMode;
1166 
1174 @property (assign, nonatomic) AgoraDegradationPreference degradationPreference;
1175 
1177 @property (strong, nonatomic) AgoraAdvancedVideoOptions *_Nullable advancedVideoOptions;
1178 
1189 - (instancetype _Nonnull)initWithSize:(CGSize)size
1190  frameRate:(AgoraVideoFrameRate)frameRate
1191  bitrate:(NSInteger)bitrate
1192  orientationMode:(AgoraVideoOutputOrientationMode)orientationMode
1193  mirrorMode:(AgoraVideoMirrorMode)mirrorMode NS_SWIFT_NAME(init(size:frameRate:bitrate:orientationMode:mirrorMode:));
1194 
1206 - (instancetype _Nonnull)initWithWidth:(NSInteger)width
1207  height:(NSInteger)height
1208  frameRate:(AgoraVideoFrameRate)frameRate
1209  bitrate:(NSInteger)bitrate
1210  orientationMode:(AgoraVideoOutputOrientationMode)orientationMode
1211  mirrorMode:(AgoraVideoMirrorMode)mirrorMode NS_SWIFT_NAME(init(width:height:frameRate:bitrate:orientationMode:mirrorMode:));
1212 @end
1213 
1216 __attribute__((visibility("default"))) @interface AgoraLiveTranscodingUser : NSObject
1219 @property(assign, nonatomic) NSUInteger uid;
1222 @property(assign, nonatomic) CGRect rect;
1228 @property(assign, nonatomic) NSInteger zOrder;
1234 @property(assign, nonatomic) double alpha;
1249 @property(assign, nonatomic) NSInteger audioChannel;
1250 @end
1251 
1254 __attribute__((visibility("default"))) @interface AgoraLiveStreamAdvancedFeature : NSObject
1255 
1261 @property(copy, nonatomic) NSString* _Nullable featureName;
1262 
1268 @property(assign, nonatomic) BOOL opened;
1269 @end
1270 
1273 __attribute__((visibility("default"))) @interface AgoraImage : NSObject
1276 @property(strong, nonatomic) NSURL *_Nonnull url;
1279 @property(assign, nonatomic) CGRect rect;
1283 @property (assign, nonatomic) NSInteger zOrder;
1291 @property(assign, nonatomic) double alpha;
1292 @end
1293 
1296 __attribute__((visibility("default"))) @interface WatermarkOptions : NSObject
1302 @property(assign, nonatomic) BOOL visibleInPreview;
1310 @property(assign, nonatomic) CGRect positionInLandscapeMode;
1318 @property(assign, nonatomic) CGRect positionInPortraitMode;
1319 @end
1320 
1323 __attribute__((visibility("default"))) @interface AgoraLiveTranscoding : NSObject
1337 @property(assign, nonatomic) CGSize size;
1344 @property(assign, nonatomic) NSInteger videoBitrate;
1351 @property(assign, nonatomic) NSInteger videoFramerate;
1357 @property(assign, nonatomic) BOOL lowLatency;
1359 @property(assign, nonatomic) NSInteger videoGop;
1366 @property(assign, nonatomic) AgoraVideoCodecProfileType videoCodecProfile;
1367 
1372 @property(assign, nonatomic) AgoraVideoCodecTypeForStream videoCodecType;
1373 
1376 @property(copy, nonatomic) NSArray<AgoraLiveTranscodingUser*>* _Nullable transcodingUsers;
1377 
1380 @property(copy, nonatomic) NSString* _Nullable transcodingExtraInfo;
1381 
1385 @property(copy, nonatomic) NSArray<AgoraImage*>* _Nullable watermarkArray;
1386 
1390 @property(copy, nonatomic) NSArray<AgoraImage*>* _Nullable backgroundImageArray;
1391 
1401 @property(strong, nonatomic) COLOR_CLASS* _Nullable backgroundColor;
1402 
1405 @property(assign, nonatomic) AgoraAudioSampleRateType audioSampleRate;
1408 @property(assign, nonatomic) NSInteger audioBitrate;
1419 @property(assign, nonatomic) NSInteger audioChannels;
1425 @property(assign, nonatomic) AgoraAudioCodecProfileType audioCodecProfile;
1426 
1431 + (AgoraLiveTranscoding* _Nonnull)defaultTranscoding NS_SWIFT_NAME(default());
1432 
1440 - (int)addUser:(AgoraLiveTranscodingUser* _Nonnull)user NS_SWIFT_NAME(add(_:));
1441 
1449 - (int)removeUser:(NSUInteger)uid NS_SWIFT_NAME(removeUser(_:));
1450 
1460 - (void)setAdvancedFeatures:(NSString* _Nonnull)featureName opened:(BOOL)opened NS_SWIFT_NAME(setAdvancedFeatures(_:opened:));
1461 
1465 - (NSArray<AgoraLiveStreamAdvancedFeature*>* _Nullable)getAdvancedFeatures NS_SWIFT_NAME(getAdvancedFeatures());
1466 
1467 @end
1468 
1471 __attribute__((visibility("default"))) @interface AgoraLiveInjectStreamConfig : NSObject
1475 @property(assign, nonatomic) CGSize size;
1478 @property(assign, nonatomic) NSInteger videoGop;
1481 @property(assign, nonatomic) NSInteger videoFramerate;
1484 @property(assign, nonatomic) NSInteger videoBitrate;
1485 
1488 @property(assign, nonatomic) AgoraAudioSampleRateType audioSampleRate;
1491 @property(assign, nonatomic) NSInteger audioBitrate;
1494 @property(assign, nonatomic) NSInteger audioChannels;
1495 
1500 + (AgoraLiveInjectStreamConfig *_Nonnull)defaultConfig NS_SWIFT_NAME(defaultConfig());
1501 @end
1502 
1503  __deprecated
1504 
1507  __attribute__((visibility("default"))) @interface AgoraRtcVideoCompositingRegion
1508  : NSObject
1511  @property(assign, nonatomic) NSUInteger uid;
1514 @property(assign, nonatomic) CGFloat x;
1517 @property(assign, nonatomic) CGFloat y;
1520 @property(assign, nonatomic) CGFloat width;
1523 @property(assign, nonatomic) CGFloat height;
1526 @property(assign, nonatomic) NSInteger zOrder;
1529 @property(assign, nonatomic) CGFloat alpha;
1532 @property(assign, nonatomic) AgoraVideoRenderMode renderMode;
1533 @end
1534 
1535  __deprecated
1538  __attribute__((visibility("default"))) @interface AgoraRtcVideoCompositingLayout
1539  : NSObject
1542  @property(assign, nonatomic) NSInteger canvasWidth;
1545 @property(assign, nonatomic) NSInteger canvasHeight;
1548 @property(copy, nonatomic) NSString *_Nullable backgroundColor;
1551 @property(copy, nonatomic) NSArray<AgoraRtcVideoCompositingRegion *> *_Nullable regions;
1554 @property(copy, nonatomic) NSString *_Nullable appData;
1555 @end
1556 
1562  __deprecated __attribute__((visibility("default"))) @interface AgoraPublisherConfiguration
1563  : NSObject
1569  @property(assign, nonatomic) BOOL owner;
1570 
1573 @property(assign, nonatomic) NSInteger width;
1576 @property(assign, nonatomic) NSInteger height;
1579 @property(assign, nonatomic) NSInteger framerate;
1582 @property(assign, nonatomic) NSInteger bitrate;
1585 @property(assign, nonatomic) NSInteger audiosamplerate;
1588 @property(assign, nonatomic) NSInteger audiobitrate;
1591 @property(assign, nonatomic) NSInteger audiochannels;
1592 
1599 @property(assign, nonatomic) NSInteger defaultLayout;
1602 @property(assign, nonatomic) AgoraRtmpStreamLifeCycle lifeCycle;
1603 
1606 @property(assign, nonatomic) NSInteger injectStreamWidth;
1607 
1610 @property(assign, nonatomic) NSInteger injectStreamHeight;
1611 
1614 @property(copy, nonatomic) NSString *_Nullable injectStreamUrl;
1615 
1618 @property(copy, nonatomic) NSString *_Nullable publishUrl;
1619 
1623 @property(copy, nonatomic) NSString *_Nullable rawStreamUrl;
1624 
1627 @property(copy, nonatomic) NSString *_Nullable extraInfo;
1628 
1631 - (BOOL)validate NS_SWIFT_NAME(validate());
1632 
1633 - (NSString * _Nullable)toJsonString NS_SWIFT_NAME(toJsonString());
1634 @end
1635 
1636 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
1637 
1640 __attribute__((visibility("default"))) @interface AgoraRtcDeviceInfo : NSObject
1641 @property (assign, nonatomic) int __deprecated index;
1642 
1645 @property(assign, nonatomic) AgoraMediaDeviceType type;
1646 
1649 @property(copy, nonatomic) NSString *_Nullable deviceId;
1650 
1653 @property(copy, nonatomic) NSString *_Nullable deviceName;
1654 
1657 @property(assign, nonatomic) AgoraAudioOutputRouting routing;
1658 @end
1659 #endif
1660 
1663 __attribute__((visibility("default"))) @interface AgoraVideoFrame : NSObject
1676 @property(assign, nonatomic) NSInteger format;
1677 
1681 @property(assign, nonatomic) CMTime time; // Time for this frame.
1682 
1686 @property(assign, nonatomic) int stride DEPRECATED_MSG_ATTRIBUTE("use strideInPixels instead");
1687 
1691 @property(assign, nonatomic) int strideInPixels; // Number of pixels between two consecutive rows.
1692  // Note: in pixel, not byte. Not used for iOS
1693  // textures.
1694 
1697 @property(assign, nonatomic) int height; // Number of rows of pixels. Not used for iOS textures.
1698 
1701 @property(assign, nonatomic) CVPixelBufferRef _Nullable textureBuf;
1702 
1705 @property(strong, nonatomic) IMAGE_CLASS * _Nullable image;
1706 
1709 @property(strong, nonatomic) NSData *_Nullable dataBuf; // Raw data buffer. Not used for iOS textures.
1710 
1713 @property(assign, nonatomic) int cropLeft; // Number of pixels to crop on the left boundary.
1716 @property(assign, nonatomic) int cropTop; // Number of pixels to crop on the top boundary.
1719 @property(assign, nonatomic) int cropRight; // Number of pixels to crop on the right boundary.
1722 @property(assign, nonatomic) int cropBottom; // Number of pixels to crop on the bottom boundary.
1726 @property(assign, nonatomic) int rotation; // 0, 90, 180, 270. See document for rotation calculation.
1727 /* Note
1728  * 1. strideInPixels
1729  * Stride is in pixels, not bytes
1730  * 2. About the frame width and height
1731  * No field is defined for the width. However, it can be deduced by:
1732  * croppedWidth = (strideInPixels - cropLeft - cropRight)
1733  * And
1734  * croppedHeight = (height - cropTop - cropBottom)
1735  * 3. About crop
1736  * _________________________________________________________________.....
1737  * | ^ | ^
1738  * | | | |
1739  * | cropTop | |
1740  * | | | |
1741  * | v | |
1742  * | ________________________________ | |
1743  * | | | | |
1744  * | | | | |
1745  * |<-- cropLeft -->| valid region |<- cropRight ->|
1746  * | | | | height
1747  * | | | |
1748  * | |_____________________________ | | |
1749  * | ^ | |
1750  * | | | |
1751  * | cropBottom | |
1752  * | | | |
1753  * | v | v
1754  * _________________________________________________________________......
1755  * | |
1756  * |<---------------- strideInPixels ----------------------------->|
1757  *
1758  * If your buffer contains garbage data, you can crop them. For example, the frame size is
1759  * 360 x 640, often the buffer stride is 368, that is, there extra 8 pixels on the
1760  * right are for padding, and should be removed. In this case, you can set:
1761  * strideInPixels = 368;
1762  * height = 640;
1763  * cropRight = 8;
1764  * // cropLeft, cropTop, cropBottom are set to a default of 0
1765  */
1766 @end
1767 
1768 __attribute__((visibility("default"))) @interface AgoraLogConfig: NSObject
1780 @property (copy, nonatomic) NSString * _Nullable filePath;
1788 @property (assign, nonatomic) NSInteger fileSizeInKB;
1794 @property (assign, nonatomic) AgoraLogLevel level;
1795 @end
1796 
1800 __attribute__((visibility("default"))) @interface AgoraRtcEngineConfig: NSObject
1801 
1806  @property (copy, nonatomic) NSString * _Nullable appId;
1807 
1811  @property (assign, nonatomic) AgoraChannelProfile channelProfile;
1812 
1816  @property (copy, nonatomic) NSString * _Nullable license;
1817 
1825  @property (assign, nonatomic) AgoraAudioScenario audioScenario;
1835  @property (assign, nonatomic) AgoraAreaCodeType areaCode;
1836  @property (strong, nonatomic) AgoraLogConfig * _Nullable logConfig;
1842  @property (assign, nonatomic) AgoraThreadPriorityType threadPriority;
1843  @property (weak, nonatomic) id<AgoraMediaFilterEventDelegate> _Nullable eventDelegate;
1849  @property (assign, nonatomic) BOOL domainLimit;
1850 
1856  @property (assign, nonatomic) BOOL autoRegisterAgoraExtensions;
1857 @end
1858 
1862 __attribute__((visibility("default"))) @interface AgoraAudioFrame : NSObject
1865 @property(assign, nonatomic) NSInteger samplesPerChannel;
1869 @property(assign, nonatomic) NSInteger bytesPerSample;
1876 @property(assign, nonatomic) NSInteger channels;
1879 @property(assign, nonatomic) NSInteger samplesPerSec;
1884 @property(assign, nonatomic) void* _Nullable buffer;
1892 @property(assign, nonatomic) int64_t renderTimeMs;
1895 @property(assign, nonatomic) int64_t presentationMs;
1898 @property(assign, nonatomic) NSInteger avSyncType;
1902 @property(assign, nonatomic) uint32_t rtpTimestamp;
1903 @end
1904 
1933 __attribute__((visibility("default"))) @interface AgoraAudioParams : NSObject
1934 
1943 @property (assign, nonatomic) NSInteger sampleRate;
1944 
1945 /* The number of audio channels, which can be set as either of the following values:
1946 
1947  - `1`: Mono (Default)
1948  - `2`: Stereo
1949  */
1950 @property (assign, nonatomic) NSInteger channel;
1951 
1952 /* The use mode of the audio data. See AgoraAudioRawFrameOperationMode.
1953  */
1954 @property (assign, nonatomic) AgoraAudioRawFrameOperationMode mode;
1955 
1959 @property (assign, nonatomic) NSInteger samplesPerCall;
1960 
1961 @end
1962 
1966 __attribute__((visibility("default"))) @interface AgoraEncodedAudioFrameInfo: NSObject
1967  @property (assign, nonatomic) NSInteger samplesPerChannel;
1968  @property (assign, nonatomic) NSInteger channels;
1969  @property (assign, nonatomic) NSInteger samplesPerSec;
1970  @property (assign, nonatomic) AgoraAudioCodecType codecType;
1971 @end
1972 
1976 __attribute__((visibility("default"))) @interface AgoraUplinkNetworkInfo : NSObject
1980 @property(nonatomic, assign) int videoEncoderTargetBitrateBps;
1981 @end
1982 
1986 __attribute__((visibility("default"))) @interface AgoraDownlinkNetworkInfo : NSObject
1990 @property(nonatomic, assign) int lastmileBufferDelayTimeMs;
1994 @property(nonatomic, assign) int bandwidthEstimationBps;
1995 @end
1996 
2000 __attribute__((visibility("default"))) @interface AgoraLeaveChannelOptions : NSObject
2006 @property(nonatomic, assign) BOOL stopAudioMixing;
2007 
2013 @property(nonatomic, assign) BOOL stopAllEffect;
2014 
2020 @property(nonatomic, assign) BOOL stopMicrophoneRecording;
2021 
2022 @end
2023 
2024 __attribute__((visibility("default"))) @interface AgoraOutputVideoFrame : NSObject
2025 
2038 @property (nonatomic, assign) NSInteger type;
2042 @property (nonatomic, assign) int width;
2046 @property (nonatomic, assign) int height;
2050 @property (nonatomic, assign) int yStride;
2054 @property (nonatomic, assign) int uStride;
2058 @property (nonatomic, assign) int vStride;
2062 @property (nonatomic, assign) uint8_t* _Nullable yBuffer;
2066 @property (nonatomic, assign) uint8_t* _Nullable uBuffer;
2070 @property (nonatomic, assign) uint8_t* _Nullable vBuffer;
2074 @property (nonatomic, assign) int rotation;
2081 @property (nonatomic, assign) int64_t renderTimeMs;
2085 @property (nonatomic, assign) int avSyncType;
2086 
2089 @property(assign, nonatomic) CVPixelBufferRef _Nullable pixelBuffer;
2094 @property (nonatomic, assign) uint8_t* _Nullable alphaBuffer;
2095 
2099 @property(nonatomic, strong) NSDictionary *_Nonnull metaInfo;
2100 
2101 @end
2102 
2105 __attribute__((visibility("default"))) @interface AgoraEncryptionConfig: NSObject
2106 
2109  @property (assign, nonatomic) AgoraEncryptionMode encryptionMode;
2110 
2117  @property (copy, nonatomic) NSString * _Nullable encryptionKey;
2118  @property (strong, nonatomic) NSData * _Nullable encryptionKdfSalt;
2119  @property (assign, nonatomic) BOOL datastreamEncryptionEnabled;
2120  @end
2121 
2124 __attribute__((visibility("default"))) @interface AgoraUserInfo: NSObject
2125 
2128 @property(assign, nonatomic) NSUInteger uid;
2129 
2132  @property (copy, nonatomic) NSString * _Nullable userAccount;
2133  @end
2134 
2137 __attribute__((visibility("default"))) @interface AgoraClientRoleOptions: NSObject
2138 
2141 @property (assign, nonatomic) AgoraAudienceLatencyLevelType audienceLatencyLevel;
2142 
2143 @end
2144 
2147 __attribute__((visibility("default"))) @interface AgoraCameraCapturerConfiguration: NSObject
2153 #if TARGET_OS_IOS
2154 @property (assign, nonatomic) AgoraCameraDirection cameraDirection;
2155 #elif TARGET_OS_MAC
2156 
2159 @property (copy, nonatomic) NSString * _Nullable deviceId;
2160 #endif
2161 
2165 @property(assign, nonatomic) CGSize dimensions;
2166 
2169 @property(assign, nonatomic) int frameRate;
2170 
2175 @property(assign, nonatomic) BOOL followEncodeDimensionRatio;
2176 
2177 @end
2178 
2181 __attribute__((visibility("default"))) @interface AgoraDataStreamConfig: NSObject
2182 
2183 @property (assign, nonatomic) BOOL ordered;
2184 
2185 @property (assign, nonatomic) BOOL syncWithAudio;
2186 @end
2187 
2188 
2191 __attribute__((visibility("default"))) @interface AgoraChannelMediaRelayInfo: NSObject
2194 @property (copy, nonatomic) NSString * _Nullable token;
2197 @property (copy, nonatomic) NSString * _Nullable channelName;
2200 @property (assign, nonatomic) NSUInteger uid;
2205 - (instancetype _Nonnull)initWithToken:(NSString *_Nullable)token NS_SWIFT_NAME(init(token:));
2206 @end
2207 
2210 __attribute__((visibility("default"))) @interface AgoraChannelMediaRelayConfiguration: NSObject
2220 @property (strong, nonatomic, readonly) NSDictionary<NSString *, AgoraChannelMediaRelayInfo *> *_Nullable destinationInfos;
2230 @property (strong, nonatomic) AgoraChannelMediaRelayInfo *_Nonnull sourceInfo;
2249 - (BOOL)setDestinationInfo:(AgoraChannelMediaRelayInfo *_Nonnull)destinationInfo forChannelName:(NSString *_Nonnull)channelName NS_SWIFT_NAME(setDestinationInfo(_:forChannelName:));
2257 - (BOOL)removeDestinationInfoForChannelName:(NSString *_Nonnull)channelName NS_SWIFT_NAME(removeDestinationInfo(forChannelName:));
2258 @end
2259 
2260 
2262 __attribute__((visibility("default"))) @interface AgoraBeautyOptions : NSObject
2263 
2272 @property(nonatomic, assign) AgoraLighteningContrastLevel lighteningContrastLevel;
2273 
2278 @property(nonatomic, assign) float lighteningLevel;
2279 
2284 @property(nonatomic, assign) float smoothnessLevel;
2285 
2290 @property(nonatomic, assign) float rednessLevel;
2291 
2296 @property(nonatomic, assign) float sharpnessLevel;
2297 
2298 @end
2299 
2305 __attribute__((visibility("default"))) @interface AgoraVideoDenoiserOptions : NSObject
2306 
2309 @property(nonatomic, assign) AgoraVideoDenoiserMode mode;
2310 
2313 @property(nonatomic, assign) AgoraVideoDenoiserLevel level;
2314 
2315 @end
2316 
2322 __attribute__((visibility("default"))) @interface AgoraLowlightEnhanceOptions : NSObject
2323 
2325 @property(nonatomic, assign) AgoraLowlightEnhanceMode mode;
2326 
2328 @property(nonatomic, assign) AgoraLowlightEnhanceLevel level;
2329 
2330 @end
2331 
2337 __attribute__((visibility("default"))) @interface AgoraColorEnhanceOptions : NSObject
2338 
2340 @property(nonatomic, assign) float strengthLevel;
2341 
2343 @property(nonatomic, assign) float skinProtectLevel;
2344 
2345 @end
2346 
2347 
2350 __attribute__((visibility("default"))) @interface AgoraVirtualBackgroundSource : NSObject
2351 
2354 @property(nonatomic, assign) AgoraVirtualBackgroundSourceType backgroundSourceType NS_SWIFT_NAME(backgroundSourceType);
2355 
2364 @property(nonatomic, assign) NSUInteger color NS_SWIFT_NAME(color);
2365 
2372 @property(nonatomic, copy) NSString* _Nullable source NS_SWIFT_NAME(source);
2373 
2375 @property(nonatomic, assign) AgoraBlurDegree blurDegree;
2376 
2377 @end
2378 
2381 __attribute__((visibility("default"))) @interface AgoraSegmentationProperty: NSObject
2382 
2383 @property(nonatomic, assign) SegModelType modelType;
2384 
2385 @property(nonatomic, assign) float greenCapacity;
2386 
2387 @end
2388 
2389 
2392 __attribute__((visibility("default"))) @interface AgoraTranscodingVideoStream: NSObject
2396 @property (assign, nonatomic) AgoraVideoSourceType sourceType;
2400 @property (assign, nonatomic) NSUInteger remoteUserUid;
2404 @property (copy, nonatomic) NSString * _Nullable imageUrl;
2408 @property(assign, nonatomic) NSUInteger mediaPlayerId;
2412 @property (assign, nonatomic) CGRect rect;
2418 @property (assign, nonatomic) NSInteger zOrder;
2422 @property(assign, nonatomic) double alpha;
2426 @property(assign, nonatomic) BOOL mirror;
2427 
2428 @end
2429 
2432 __attribute__((visibility("default"))) @interface AgoraLocalTranscoderConfiguration: NSObject
2436 @property(copy, nonatomic) NSArray<AgoraTranscodingVideoStream *> *_Nullable videoInputStreams;
2440 @property (strong, nonatomic) AgoraVideoEncoderConfiguration *_Nonnull videoOutputConfiguration;
2441 
2447 @property(assign, nonatomic) BOOL syncWithPrimaryCamera;
2448 
2449 @end
2450 
2453 __attribute__((visibility("default"))) @interface AgoraScreenCaptureParameters: NSObject
2458 @property (assign, nonatomic) CGSize dimensions;
2463 @property (assign, nonatomic) NSInteger frameRate;
2468 @property (assign, nonatomic) NSInteger bitrate;
2469 
2475 @property(assign, nonatomic) BOOL captureMouseCursor;
2476 
2485 @property(assign, nonatomic) BOOL windowFocus;
2486 
2495 @property(copy, nonatomic) NSArray* _Nullable excludeWindowList;
2496 
2505 @property(assign, nonatomic) BOOL highLighted;
2511 @property(strong, nonatomic) COLOR_CLASS* _Nullable highLightColor;
2515 @property(assign, nonatomic) NSUInteger highLightWidth;
2516 
2517 @end
2518 
2519 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
2520 
2522 __attribute__((visibility("default"))) @interface AgoraScreenCaptureConfiguration: NSObject
2528 @property(assign, nonatomic) BOOL isCaptureWindow;
2532 @property(assign, nonatomic) UInt32 displayId;
2538 @property(assign, nonatomic) UInt32 windowId;
2539 
2543 @property(strong, nonatomic) AgoraScreenCaptureParameters* _Nonnull params;
2551 @property(assign, nonatomic) CGRect regionRect;
2552 
2553 @end
2554 #endif
2555 
2556 __attribute__((visibility("default"))) @interface AgoraScreenVideoParameters : NSObject
2557 
2588 @property(assign, nonatomic) CGSize dimensions;
2601 @property(assign, nonatomic) AgoraVideoFrameRate frameRate;
2655 @property(assign, nonatomic) NSInteger bitrate;
2656 
2659 @property(assign, nonatomic) AgoraVideoContentHint contentHint;
2660 
2661 @end
2662 
2663 __attribute__((visibility("default"))) @interface AgoraScreenAudioParameters : NSObject
2664 
2665 @property(assign, nonatomic) NSInteger captureSignalVolume;
2666 
2667 @end
2668 
2669 __attribute__((visibility("default"))) @interface AgoraScreenCaptureParameters2 : NSObject
2673 @property(assign, nonatomic) BOOL captureAudio;
2677 @property(strong, nonatomic) AgoraScreenAudioParameters* _Nonnull audioParams;
2681 @property(assign, nonatomic) BOOL captureVideo;
2685 @property(strong, nonatomic) AgoraScreenVideoParameters* _Nonnull videoParams;
2686 @end
2687 
2691 __attribute__((visibility("default"))) @interface AgoraAudioRecordingConfiguration: NSObject
2696 @property (copy, nonatomic) NSString * _Nullable filePath;
2706 @property (assign, nonatomic) NSUInteger sampleRate;
2710 @property (assign, nonatomic) AgoraAudioFileRecordingType fileRecordOption;
2715 @property (assign, nonatomic) AgoraAudioRecordingQuality quality;
2716 
2722 @property (assign, nonatomic) NSInteger recordingChannel;
2723 
2724 @end
2725 
2728 __attribute__((visibility("default"))) @interface AgoraSimulcastStreamConfig: NSObject
2729 
2733  @property (assign, nonatomic) int kBitrate;
2737  @property (assign, nonatomic) int framerate;
2741  @property (assign, nonatomic) CGSize dimensions;
2742  @end
2743 
2747 __attribute__((visibility("default"))) @interface AgoraRtcMediaStreamInfo : NSObject
2749 @property(nonatomic, assign) NSInteger streamIndex;
2751 @property(nonatomic, assign) AgoraMediaStreamType streamType;
2753 @property(nonatomic, copy) NSString *_Nonnull codecName;
2755 @property(nonatomic, copy) NSString *_Nullable language;
2757 @property(nonatomic, assign) NSInteger videoFrameRate;
2759 @property(nonatomic, assign) NSInteger videoBitRate;
2761 @property(nonatomic, assign) NSInteger videoWidth;
2763 @property(nonatomic, assign) NSInteger videoHeight;
2765 @property(nonatomic, assign) NSInteger audioSampleRate;
2767 @property(nonatomic, assign) NSInteger audioChannels;
2769 @property(nonatomic, assign) NSInteger duration;
2771 @property(nonatomic, assign) NSInteger rotation;
2772 
2773 @end
2774 
2775 __attribute__((visibility("default"))) @interface AgoraAudioSpectrumInfo : NSObject
2776 
2778 @property(nonatomic, assign) NSInteger uid;
2779 @property(nonatomic, strong) NSArray<NSNumber *> * _Nullable audioSpectrumData;
2780 
2781 @end
2782 
2786 __attribute__((visibility("default"))) @interface AgoraAudioEncodedFrameDelegateConfig: NSObject
2790 @property (assign, nonatomic) AgoraAudioEncodedFrameDelegatePosition postionType;
2794 @property (assign, nonatomic) AgoraAudioEncodingType encodingType;
2795 @end
2796 
2797 __attribute__((visibility("default"))) @interface AgoraContentInspectModule: NSObject
2798 @property (assign, nonatomic) AgoraContentInspectType type;
2799 
2800 @property (assign, nonatomic) NSInteger interval;
2801 @end
2802 
2803 __attribute__((visibility("default"))) @interface AgoraContentInspectConfig: NSObject
2804 @property (nonatomic, copy) NSString* _Nullable extraInfo;
2808 @property (nonatomic, copy) NSString* _Nullable serverConfig;
2809 @property(copy, nonatomic) NSArray<AgoraContentInspectModule*>* _Nullable modules;
2810 @end
2814 __attribute__((visibility("default"))) @interface AgoraRtcConnection: NSObject <NSCopying>
2815 
2823 - (instancetype _Nonnull)initWithChannelId:(NSString *_Nonnull)channelId localUid:(NSInteger)localUid;
2824 
2825 /* channelId Unique channel name for the AgoraRTC session in the string
2826  * format. The string length must be less than 64 bytes. Supported character
2827  * scopes are:
2828  * - All lowercase English letters: a to z.
2829  * - All uppercase English letters: A to Z.
2830  * - All numeric characters: 0 to 9.
2831  * - The space character.
2832  * - Punctuation characters and other symbols, including: "!", "#", "$", "%", "&", "(", ")", "+", "-", ":", ";", "<", "=", ".", ">", "?", "@", "[", "]", "^", "_", " {", "}", "|", "~", ",".
2833  */
2834 @property (nonatomic, copy) NSString *_Nonnull channelId;
2835 /* uid Local User ID. A 32-bit unsigned integer with a value ranging from 1 to
2836  * (2<sup>32</sup>-1). The `uid` must be unique and not set to 0 . Your app
2837  * must record and maintain the returned `uid` since the SDK does not do so.
2838  */
2839 @property (nonatomic, assign) NSUInteger localUid;
2840 
2841 @end
2845 __attribute__((visibility("default"))) @interface AgoraVideoSubscriptionOptions: NSObject
2846 
2847 /*
2848 * The type of the video stream to subscribe to.
2849 *
2850 * The default value is `VIDEO_STREAM_HIGH`, which means the high-quality
2851 * video stream.
2852 */
2853 @property (nonatomic, assign) AgoraVideoStreamType type;
2854 /*
2855 * Whether to subscribe to encoded video data only:
2856 * - `true`: Subscribe to encoded video data only.
2857 * - `false`: (Default) Subscribe to decoded video data.
2858 */
2859 @property (nonatomic, assign) bool encodedFrameOnly;
2860 
2861 @end
2862 
2866 __attribute__((visibility("default"))) @interface AgoraRecorderStreamInfo: NSObject
2867 
2868 /* channelId Unique channel name for the AgoraRTC session in the string
2869  * format. The string length must be less than 64 bytes. Supported character
2870  * scopes are:
2871  * - All lowercase English letters: a to z.
2872  * - All uppercase English letters: A to Z.
2873  * - All numeric characters: 0 to 9.
2874  * - The space character.
2875  * - Punctuation characters and other symbols, including: "!", "#", "$", "%", "&", "(", ")", "+", "-", ":", ";", "<", "=", ".", ">", "?", "@", "[", "]", "^", "_", " {", "}", "|", "~", ",".
2876  */
2877 @property (nonatomic, copy) NSString *_Nonnull channelId;
2878 /* uid Local User ID. A 32-bit unsigned integer with a value ranging from 1 to
2879  * (2<sup>32</sup>-1). The `uid` must be unique and not set to 0 . Your app
2880  * must record and maintain the returned `uid` since the SDK does not do so.
2881  */
2882 @property (nonatomic, nonatomic) NSUInteger uid;
2883 
2884 @end
2888 __attribute__((visibility("default"))) @interface AgoraEncodedVideoFrameInfo: NSObject
2889 
2893 @property (assign, nonatomic) AgoraVideoCodecType codecType;
2897 @property (assign, nonatomic) NSInteger width;
2901 @property (assign, nonatomic) NSInteger height;
2908 @property (assign, nonatomic) NSInteger framesPerSecond;
2912 @property (assign, nonatomic) AgoraVideoFrameType frameType;
2916 @property (assign, nonatomic) NSInteger rotation;
2920 @property (assign, nonatomic) NSInteger trackId; // This can be reserved for multiple video tracks, we need to create different ssrc
2921  // and additional payload for later implementation.
2925 @property (assign, nonatomic) NSInteger captureTimeMs;
2929 @property (assign, nonatomic) NSInteger decodeTimeMs;
2933 @property (assign, nonatomic) NSInteger uid;
2937 @property (assign, nonatomic) AgoraVideoStreamType streamType;
2938 @end
2939 
2940 NS_SWIFT_NAME(LogUploadServerInfo) __attribute__((visibility("default"))) @interface LogUploadServerInfo : NSObject
2943 @property(copy, nonatomic) NSString* _Nullable serverDomain;
2946 @property(copy, nonatomic) NSString* _Nullable serverPath;
2949 @property(assign, nonatomic) NSInteger serverPort;
2954 @property(assign, nonatomic) BOOL serverHttps;
2955 @end
2956 
2957 NS_SWIFT_NAME(AdvancedConfigInfo) __attribute__((visibility("default"))) @interface AdvancedConfigInfo : NSObject
2960 @property(strong, nonatomic) LogUploadServerInfo* _Nullable logUploadServer;
2961 @end
2962 
2963 NS_SWIFT_NAME(AgoraLocalAccessPointConfiguration) __attribute__((visibility("default"))) @interface AgoraLocalAccessPointConfiguration : NSObject
2966 @property(copy, nonatomic) NSArray* _Nullable ipList NS_SWIFT_NAME(ipList);
2969 @property(copy, nonatomic) NSArray* _Nullable domainList NS_SWIFT_NAME(domainList);
2973 @property(copy, nonatomic) NSString* _Nullable verifyDomainName NS_SWIFT_NAME(verifyDomainName);
2976 @property(assign, nonatomic) AgoraLocalProxyMode mode NS_SWIFT_NAME(mode);
2979 @property(strong, nonatomic) AdvancedConfigInfo* _Nullable advancedConfig NS_SWIFT_NAME(advancedConfig);
2980 @end
2981 
2986 __attribute__((visibility("default"))) @interface AgoraRhythmPlayerConfig: NSObject
2992 @property (assign, nonatomic) int beatsPerMeasure;
2993 /*
2994  * The range is 60 to 360.
2995  * The default value is 60,
2996  * which means that the rhythm player plays 60 beats in one minute.
2997  */
2998 @property (assign, nonatomic) int beatsPerMinute;
2999 
3000 @end
3001 
3004 NS_SWIFT_NAME(AgoraFacePositionInfo) __attribute__((visibility("default"))) @interface AgoraFacePositionInfo : NSObject
3005 
3008 @property(assign, nonatomic) NSInteger x NS_SWIFT_NAME(x);
3009 
3012 @property(assign, nonatomic) NSInteger y NS_SWIFT_NAME(y);
3013 
3016 @property(assign, nonatomic) NSInteger width NS_SWIFT_NAME(width);
3017 
3020 @property(assign, nonatomic) NSInteger height NS_SWIFT_NAME(height);
3021 
3024 @property(assign, nonatomic) NSInteger distance NS_SWIFT_NAME(distance);
3025 @end
3026 
3029 __attribute__((visibility("default"))) @interface AgoraAdvancedAudioOptions: NSObject
3030 
3031 @property(assign, nonatomic) AgoraAudioProcessChannels audioProcessingChannels;
3032 
3033 @end
3034 
3035 __attribute__((visibility("default"))) @interface AgoraImageTrackOptions : NSObject
3036 @property(copy, nonatomic) NSString *_Nullable imageUrl;
3037 @property(assign, nonatomic) int fps;
3038 @property(assign, nonatomic) AgoraVideoMirrorMode mirrorMode;
3039 @end
3040 
3045 __attribute__((visibility("default"))) @interface AgoraSpatialAudioParams : NSObject
3049 @property(assign, nonatomic) double speaker_azimuth;
3053 @property(assign, nonatomic) double speaker_elevation;
3057 @property(assign, nonatomic) double speaker_distance;
3061 @property(assign, nonatomic) NSInteger speaker_orientation;
3065 @property(assign, nonatomic) BOOL enable_blur;
3069 @property(assign, nonatomic) BOOL enable_air_absorb;
3073 @property(assign, nonatomic) double speaker_attenuation;
3077 @property(assign, nonatomic) BOOL enable_doppler;
3078 @end
3079 
3080 NS_SWIFT_NAME(AgoraEchoTestConfiguration)
3081 __attribute__((visibility("default"))) @interface AgoraEchoTestConfiguration : NSObject
3089 @property(strong, nonatomic) VIEW_CLASS* _Nullable view NS_SWIFT_NAME(view);
3092 @property(assign, nonatomic) BOOL enableAudio NS_SWIFT_NAME(enableAudio);
3095 @property(assign, nonatomic) BOOL enableVideo NS_SWIFT_NAME(enableVideo);
3098 @property(copy, nonatomic) NSString* _Nullable token NS_SWIFT_NAME(token);
3101 @property(copy, nonatomic) NSString* _Nonnull channelId NS_SWIFT_NAME(channelId);
3106 @property(assign, nonatomic) NSInteger intervalInSeconds NS_SWIFT_NAME(intervalInSeconds);
3107 @end
3108 
3112 NS_SWIFT_NAME(AgoraWlAccStats) __attribute__((visibility("default"))) @interface AgoraWlAccStats : NSObject
3116 @property(assign, nonatomic) NSInteger e2eDelayPercent NS_SWIFT_NAME(e2eDelayPercent);
3120 @property(assign, nonatomic) NSInteger frozenRatioPercent NS_SWIFT_NAME(frozenRatioPercent);
3124 @property(assign, nonatomic) NSInteger lossRatePercent NS_SWIFT_NAME(lossRatePercent);
3125 @end
3126 
3127 __attribute__((visibility("default"))) @interface AgoraMediaRecorderInfo : NSObject
3128 
3131 @property(copy, nonatomic) NSString* _Nonnull recorderFileName;
3134 @property(assign, nonatomic) NSUInteger durationMs;
3137 @property(assign, nonatomic) NSUInteger fileSize;
3138 
3139 @end
3140 
3141 __attribute__((visibility("default"))) @interface AgoraMediaRecorderConfiguration : NSObject
3142 
3145 @property(copy, nonatomic) NSString* _Nonnull storagePath;
3148 @property(assign, nonatomic) AgoraMediaRecorderContainerFormat containerFormat;
3151 @property(assign, nonatomic) AgoraMediaRecorderStreamType streamType;
3154 @property(assign, nonatomic) NSUInteger maxDurationMs;
3157 @property(assign, nonatomic) NSUInteger recorderInfoUpdateInterval;
3158 
3159 @end
3160 
3161 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
3162 
3166 __attribute__((visibility("default"))) @interface AgoraScreenCaptureSourceInfo : NSObject
3168 @property(assign, nonatomic) AgoraScreenCaptureSourceType type;
3170 @property(assign, nonatomic) CGWindowID sourceId;
3172 @property(copy, nonatomic) NSString* _Nonnull sourceName;
3174 @property(strong, nonatomic) NSImage* _Nonnull thumbImage;
3176 @property(strong, nonatomic) NSImage* _Nullable iconImage;
3178 @property(copy, nonatomic) NSString* _Nonnull processPath;
3180 @property(copy, nonatomic) NSString* _Nonnull sourceTitle;
3182 @property(assign, nonatomic) CGRect position;
3188 @property(assign, nonatomic) BOOL primaryMonitor;
3189 
3190 @end
3191 
3192 #endif
3193 
3194 NS_SWIFT_NAME(AgoraExtensionInfo) __attribute__((visibility("default"))) @interface AgoraExtensionInfo : NSObject
3195 
3199 @property (assign, nonatomic) AgoraMediaSourceType sourceType NS_SWIFT_NAME(sourceType);
3200 
3206 @property (assign, nonatomic) NSUInteger remoteUid NS_SWIFT_NAME(remoteUid);
3207 
3219 @property (copy, nonatomic) NSString *_Nonnull channelId NS_SWIFT_NAME(channelId);
3220 
3224 @property (assign, nonatomic) NSUInteger localUid NS_SWIFT_NAME(localUid);
3225 
3226 @end
3227 
3230 NS_SWIFT_NAME(AgoraAudioTrackConfig) __attribute__((visibility("default"))) @interface AgoraAudioTrackConfig : NSObject
3236 @property (assign, nonatomic) BOOL enableLocalPlayback NS_SWIFT_NAME(enableLocalPlayback);
3237 
3238 @end
3239 
3243 NS_SWIFT_NAME(AgoraVideoRenderingTracingInfo) __attribute__((visibility("default"))) @interface AgoraVideoRenderingTracingInfo : NSObject
3247 @property (assign, nonatomic) NSInteger elapsedTime NS_SWIFT_NAME(elapsedTime);
3254 @property (assign, nonatomic) NSInteger start2JoinChannel NS_SWIFT_NAME(start2JoinChannel);
3258 @property (assign, nonatomic) NSInteger join2JoinSuccess NS_SWIFT_NAME(join2JoinSuccess);
3266 @property (assign, nonatomic) NSInteger joinSuccess2RemoteJoined NS_SWIFT_NAME(joinSuccess2RemoteJoined);
3274 @property (assign, nonatomic) NSInteger remoteJoined2SetView NS_SWIFT_NAME(remoteJoined2SetView);
3283 @property (assign, nonatomic) NSInteger remoteJoined2UnmuteVideo NS_SWIFT_NAME(remoteJoined2UnmuteVideo);
3292 @property (assign, nonatomic) NSInteger remoteJoined2PacketReceived NS_SWIFT_NAME(remoteJoined2PacketReceived);
3293 
3294 @end
AgoraRecorderStreamInfo
Definition: AgoraObjects.h:2867
AgoraMediaSource
Definition: AgoraObjects.h:51
AgoraLowlightEnhanceLevel
AgoraLowlightEnhanceLevel
Definition: AgoraEnumerates.h:1951
AgoraFacePositionInfo
Definition: AgoraObjects.h:3005
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:3108
AgoraMediaSource::isLiveSource
BOOL isLiveSource
Definition: AgoraObjects.h:103
AgoraDirectCdnStreamingStats
Definition: AgoraObjects.h:151
AgoraDegradationPreference
AgoraDegradationPreference
Definition: AgoraEnumerates.h:1845
AgoraCameraDirection
AgoraCameraDirection
Definition: AgoraEnumerates.h:2334
AgoraMediaSource::playerOnReadCallback
AgoraRtcMediaPlayerCustomSourceOnReadCallback _Nonnull playerOnReadCallback
Definition: AgoraObjects.h:107
AgoraMediaSource::startPos
NSUInteger startPos
Definition: AgoraObjects.h:62
AgoraEncodedVideoTrackOptions
Definition: AgoraObjects.h:225
AgoraVideoRenderingTracingInfo
Definition: AgoraObjects.h:3244
AgoraScreenAudioParameters
Definition: AgoraObjects.h:2664
AgoraRtcChannelMediaOptions
Definition: AgoraObjects.h:252
AgoraMediaFilterEventDelegate.h
AgoraAudioScenario
AgoraAudioScenario
Definition: AgoraEnumerates.h:1264
AgoraRhythmPlayerConfig
Definition: AgoraObjects.h:2987
AgoraBeautyOptions
Definition: AgoraObjects.h:2263
AgoraVideoCodecCapInfo
Definition: AgoraObjects.h:1083
AgoraVideoSubscriptionOptions
Definition: AgoraObjects.h:2846
AgoraOutputVideoFrame
Definition: AgoraObjects.h:2025
AgoraAudioTrackConfig
Definition: AgoraObjects.h:3231
AgoraClientRole
AgoraClientRole
Definition: AgoraEnumerates.h:521
AgoraScreenCaptureParameters2
Definition: AgoraObjects.h:2670
AgoraExperiencePoorReason
AgoraExperiencePoorReason
Definition: AgoraEnumerates.h:763
AgoraMediaSource::uri
NSString *_Nullable uri
Definition: AgoraObjects.h:58
AgoraVideoDenoiserMode
AgoraVideoDenoiserMode
Definition: AgoraEnumerates.h:1915
AgoraContentInspectModule
Definition: AgoraObjects.h:2798
AgoraMediaPlayerSrcInfo
The information of the media stream object.
Definition: AgoraObjects.h:135
AdvancedConfigInfo
Definition: AgoraObjects.h:2958
AgoraMediaSource::url
NSString *_Nullable url
Definition: AgoraObjects.h:54
AgoraLighteningContrastLevel
AgoraLighteningContrastLevel
Definition: AgoraEnumerates.h:1902
AgoraEnumerates.h
AgoraVideoFrame
Definition: AgoraObjects.h:1664
AgoraSimulcastStreamConfig
Definition: AgoraObjects.h:2729
AgoraRtcConnection::channelId
NSString *_Nonnull channelId
Definition: AgoraObjects.h:2834
AgoraScreenCaptureParameters
Definition: AgoraObjects.h:2454
AgoraAudioRawFrameOperationMode
AgoraAudioRawFrameOperationMode
Definition: AgoraEnumerates.h:1344
AgoraMediaRecorderInfo
Definition: AgoraObjects.h:3128
AgoraSegmentationProperty
Definition: AgoraObjects.h:2382
AgoraVideoDenoiserLevel
AgoraVideoDenoiserLevel
Definition: AgoraEnumerates.h:1926
AgoraRtcRemoteVideoStats
Definition: AgoraObjects.h:713
AgoraVideoViewSetupMode
AgoraVideoViewSetupMode
Definition: AgoraEnumerates.h:3146
AgoraMediaSource::autoPlay
BOOL autoPlay
Definition: AgoraObjects.h:68
AgoraContentInspectConfig
Definition: AgoraObjects.h:2804
AgoraAudioEncodedFrameDelegateConfig
Definition: AgoraObjects.h:2787
AgoraTranscodingVideoStream
Definition: AgoraObjects.h:2393
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:2839
AgoraVideoDenoiserOptions
Definition: AgoraObjects.h:2306
AgoraLastmileProbeConfig
Definition: AgoraObjects.h:537
AgoraAudienceLatencyLevelType
AgoraAudienceLatencyLevelType
Definition: AgoraEnumerates.h:529
AgoraLastmileProbeResultState
AgoraLastmileProbeResultState
Definition: AgoraEnumerates.h:785
AgoraWlAccStats
Definition: AgoraObjects.h:3113
AgoraRtcMediaStreamInfo
Definition: AgoraObjects.h:2748
AgoraChannelMediaRelayInfo
Definition: AgoraObjects.h:2192
AgoraMediaSource::enableMultiAudioTrack
BOOL enableMultiAudioTrack
Definition: AgoraObjects.h:91
WatermarkOptions
Definition: AgoraObjects.h:1297
AgoraVideoSourceType
AgoraVideoSourceType
Definition: AgoraEnumerates.h:2588
AgoraAudioFrame
Definition: AgoraObjects.h:1863
AgoraMediaRecorderStreamType
AgoraMediaRecorderStreamType
Definition: AgoraEnumerates.h:3231
AgoraAudioEncodingType
AgoraAudioEncodingType
Definition: AgoraEnumerates.h:694
AgoraMediaSource::enableCache
BOOL enableCache
Definition: AgoraObjects.h:80
AgoraAreaCodeType
AgoraAreaCodeType
Definition: AgoraEnumerates.h:2209
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:1975
AgoraAudioSpectrumInfo
Definition: AgoraObjects.h:2776
AgoraLeaveChannelOptions
Definition: AgoraObjects.h:2001
AgoraDataStreamConfig
Definition: AgoraObjects.h:2182
AgoraLowlightEnhanceMode
AgoraLowlightEnhanceMode
Definition: AgoraEnumerates.h:1940
AgoraRtcRemoteAudioStats
Definition: AgoraObjects.h:823
AgoraUserInfo
Definition: AgoraObjects.h:2125
AgoraVideoCodecCapabilityLevel
AgoraVideoCodecCapabilityLevel
Definition: AgoraEnumerates.h:400
AgoraRtcEngineConfig
Definition: AgoraObjects.h:1801
AgoraMediaStreamType
AgoraMediaStreamType
Definition: AgoraEnumerates.h:2671
AgoraImageTrackOptions
Definition: AgoraObjects.h:3036
AgoraVideoRenderMode
AgoraVideoRenderMode
Definition: AgoraEnumerates.h:825
AgoraLastmileProbeOneWayResult
Definition: AgoraObjects.h:569
AgoraVideoQualityAdaptIndication
AgoraVideoQualityAdaptIndication
Definition: AgoraEnumerates.h:815
AgoraContentInspectType
AgoraContentInspectType
Definition: AgoraEnumerates.h:2994
AgoraEncryptionConfig
Definition: AgoraObjects.h:2106
AgoraEncodedVideoFrameInfo
Definition: AgoraObjects.h:2889
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:2211
AgoraVideoStreamType
AgoraVideoStreamType
Definition: AgoraEnumerates.h:807
AgoraVideoCodecTypeForStream
AgoraVideoCodecTypeForStream
Definition: AgoraEnumerates.h:434
AgoraEchoTestConfiguration
Definition: AgoraObjects.h:3082
AgoraAdvancedAudioOptions
Definition: AgoraObjects.h:3030
AgoraVideoCodecCapLevels
Definition: AgoraObjects.h:1073
AgoraRtcAudioVolumeInfo
Definition: AgoraObjects.h:930
AgoraVideoHwEncoderAccelerating
AgoraVideoHwEncoderAccelerating
Definition: AgoraEnumerates.h:418
AgoraMediaPlayerCacheStatistics
Definition: AgoraObjects.h:113
AgoraAudioProcessChannels
AgoraAudioProcessChannels
Definition: AgoraEnumerates.h:3152
AgoraLocalAccessPointConfiguration
Definition: AgoraObjects.h:2964
AgoraEncodingPreference
AgoraEncodingPreference
Definition: AgoraEnumerates.h:1857
AgoraThreadPriorityType
AgoraThreadPriorityType
Definition: AgoraEnumerates.h:2967
AgoraScreenVideoParameters
Definition: AgoraObjects.h:2557
AgoraVirtualBackgroundSource
Definition: AgoraObjects.h:2351
AgoraLiveStreamAdvancedFeature
Definition: AgoraObjects.h:1255
AgoraRtcConnection
Definition: AgoraObjects.h:2814
AgoraLowlightEnhanceOptions
Definition: AgoraObjects.h:2323
AgoraExperienceQuality
AgoraExperienceQuality
Definition: AgoraEnumerates.h:752
__deprecated
#define __deprecated
Definition: AgoraBase.h:63
AgoraAudioCodecProfileType
AgoraAudioCodecProfileType
Definition: AgoraEnumerates.h:1086
AgoraVideoContentHint
AgoraVideoContentHint
Definition: AgoraEnumerates.h:2956
AgoraMediaSource::isAgoraSource
BOOL isAgoraSource
Definition: AgoraObjects.h:97
AgoraLocalTranscoderConfiguration
Definition: AgoraObjects.h:2433
AgoraRtcVideoCanvas
Definition: AgoraObjects.h:468
AgoraEncodedAudioFrameInfo
Definition: AgoraObjects.h:1967
AgoraVirtualBackgroundSourceType
AgoraVirtualBackgroundSourceType
Definition: AgoraEnumerates.h:1961
SegModelType
SegModelType
Definition: AgoraEnumerates.h:1984
AgoraMediaSource::playerOnSeekCallback
AgoraRtcMediaPlayerCustomSourceOnSeekCallback _Nonnull playerOnSeekCallback
Definition: AgoraObjects.h:108
AgoraAudioRecordingConfiguration
Definition: AgoraObjects.h:2692
LogUploadServerInfo
Definition: AgoraObjects.h:2941
AgoraVideoFrameType
AgoraVideoFrameType
Definition: AgoraEnumerates.h:1764
AgoraColorEnhanceOptions
Definition: AgoraObjects.h:2338
AgoraMediaRecorderConfiguration
Definition: AgoraObjects.h:3142
AgoraMediaRecorderContainerFormat
AgoraMediaRecorderContainerFormat
Definition: AgoraEnumerates.h:3240
AgoraLogConfig
Definition: AgoraObjects.h:1769
AgoraClientRoleOptions
Definition: AgoraObjects.h:2138
AgoraMediaSourceType
AgoraMediaSourceType
Definition: AgoraEnumerates.h:2526
AgoraAudioFileRecordingType
AgoraAudioFileRecordingType
Definition: AgoraEnumerates.h:667
AgoraRtcLocalAudioStats
Definition: AgoraObjects.h:794
AgoraCameraCapturerConfiguration
Definition: AgoraObjects.h:2148
AgoraCompressionPreference
AgoraCompressionPreference
Definition: AgoraEnumerates.h:1873
IMAGE_CLASS
UIImage IMAGE_CLASS
Definition: AgoraObjects.h:17
AgoraAdvancedVideoOptions
Definition: AgoraObjects.h:1062
AgoraExtensionInfo
Definition: AgoraObjects.h:3195
AgoraMediaPlayerUpdatedInfo
player_id and device_id has value when user trigger interface of opening.
Definition: AgoraObjects.h:125
AgoraLogLevel
AgoraLogLevel
Definition: AgoraEnumerates.h:2184
AgoraScreenCaptureSourceType
AgoraScreenCaptureSourceType
Definition: AgoraEnumerates.h:3249
AgoraLastmileProbeResult
Definition: AgoraObjects.h:587
AgoraChannelStats
Definition: AgoraObjects.h:949
AgoraCaptureBrightnessLevelType
AgoraCaptureBrightnessLevelType
Definition: AgoraEnumerates.h:537