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"
11 
12 #if TARGET_OS_IPHONE
13 #import <UIKit/UIKit.h>
14 typedef UIView VIEW_CLASS;
15 typedef UIColor COLOR_CLASS;
16 typedef UIImage IMAGE_CLASS;
17 #elif TARGET_OS_MAC
18 #import <AppKit/AppKit.h>
19 typedef NSView VIEW_CLASS;
20 typedef NSColor COLOR_CLASS;
21 typedef NSImage IMAGE_CLASS;
22 #endif
23 
26 
44 typedef int(^AgoraRtcMediaPlayerCustomSourceOnReadCallback)(id<AgoraRtcMediaPlayerProtocol> _Nonnull playerKit, unsigned char * _Nullable buffer, int bufferSize);
45 
72 typedef long long(^AgoraRtcMediaPlayerCustomSourceOnSeekCallback)(id<AgoraRtcMediaPlayerProtocol> _Nonnull playerKit, long long offset, int whence);
73 
78 __attribute__((visibility("default"))) @interface AgoraMediaSource : NSObject
86 @property(copy, nonatomic) NSString *_Nullable url;
90 @property(copy, nonatomic) NSString *_Nullable uri;
94 @property(assign, nonatomic) NSUInteger startPos;
102 @property(assign, nonatomic) BOOL autoPlay;
117 @property(assign, nonatomic) BOOL enableCache;
126 @property(assign, nonatomic) BOOL enableMultiAudioTrack;
138 @property(assign, nonatomic) BOOL isAgoraSource;
148 @property(assign, nonatomic) BOOL isLiveSource;
167 
168 @end
169 
173 __attribute__((visibility("default"))) @interface AgoraMediaPlayerCacheStatistics : NSObject
174 
178 @property(assign, nonatomic) NSInteger fileSize;
182 @property(assign, nonatomic) NSInteger cacheSize;
186 @property(assign, nonatomic) NSInteger downloadSize;
187 
188 @end
189 
193 __attribute__((visibility("default"))) @interface AgoraMediaPlayerPlaybackStats : NSObject
197 @property(assign, nonatomic) NSInteger videoFps;
201 @property(assign, nonatomic) NSInteger videoBitrateInKbps;
205 @property(assign, nonatomic) NSInteger audioBitrateInKbps;
209 @property(assign, nonatomic) NSInteger totalBitrateInKbps;
210 @end
211 
215 __attribute__((visibility("default"))) @interface AgoraMediaPlayerUpdatedInfo : NSObject
219 @property(copy, nonatomic) NSString *_Nullable internalPlayerUuid;
223 @property(copy, nonatomic) NSString *_Nullable deviceId;
227 @property(assign, nonatomic) NSInteger videoHeight;
231 @property(assign, nonatomic) NSInteger videoWidth;
235 @property(assign, nonatomic) NSInteger audioSampleRate;
239 @property(assign, nonatomic) NSInteger audioChannels;
243 @property(assign, nonatomic) NSInteger audioBitsPerSample;
244 @end
245 
249 __attribute__((visibility("default"))) @interface AgoraMediaPlayerSrcInfo : NSObject
253 @property(assign, nonatomic) int bitrateInKbps;
257 @property(copy, nonatomic) NSString *_Nullable name;
258 
259 @end
260 
261 
267 __attribute__((visibility("default"))) @interface AgoraDirectCdnStreamingStats : NSObject
271 @property(assign, nonatomic) NSUInteger videoWidth;
275 @property(assign, nonatomic) NSUInteger videoHeight;
279 @property(assign, nonatomic) NSUInteger fps;
283 @property(assign, nonatomic) NSUInteger videoBitrate;
287 @property(assign, nonatomic) NSUInteger audioBitrate;
288 
289 @end
290 
296 __attribute__((visibility("default"))) @interface AgoraDirectCdnStreamingMediaOptions : NSObject
302 @property(assign, nonatomic) BOOL publishCameraTrack;
308 @property(assign, nonatomic) BOOL publishMicrophoneTrack;
314 @property(assign, nonatomic) BOOL publishCustomAudioTrack;
320 @property(assign, nonatomic) BOOL publishCustomVideoTrack;
326 @property(assign, nonatomic) BOOL publishMediaPlayerAudioTrack;
331 @property(assign, nonatomic) NSInteger publishMediaPlayerId;
332 
337 @property(assign, nonatomic) NSInteger customVideoTrackId;
338 
339 @end
340 
344 __attribute__((visibility("default"))) @interface AgoraEncodedVideoTrackOptions : NSObject
350 @property(assign, nonatomic) int ccMode;
360 @property(assign, nonatomic) int codecType;
364 @property(assign, nonatomic) int targetBitrate;
365 @end
366 
382 __attribute__((visibility("default"))) @interface AgoraRtcChannelMediaOptions : NSObject
388 @property(assign, nonatomic) BOOL publishCameraTrack;
394 @property(assign, nonatomic) BOOL publishSecondaryCameraTrack;
400 @property(assign, nonatomic) BOOL publishMicrophoneTrack;
401 
407 @property(assign, nonatomic) BOOL publishScreenCaptureAudio;
408 #if TARGET_OS_IPHONE
409 
416 @property(assign, nonatomic) BOOL publishScreenCaptureVideo;
417 
418 #elif TARGET_OS_MAC
419 
424 @property(assign, nonatomic) BOOL publishThirdCameraTrack;
430 @property(assign, nonatomic) BOOL publishFourthCameraTrack;
436 @property(assign, nonatomic) BOOL publishScreenTrack;
442 @property(assign, nonatomic) BOOL publishSecondaryScreenTrack;
448 @property(assign, nonatomic) BOOL publishThirdScreenTrack;
454 @property(assign, nonatomic) BOOL publishFourthScreenTrack;
455 #endif
456 
461 @property(assign, nonatomic) BOOL publishCustomAudioTrack;
466 @property(assign, nonatomic) NSInteger publishCustomAudioTrackId;
472 @property(assign, nonatomic) BOOL publishCustomVideoTrack;
478 @property(assign, nonatomic) BOOL publishEncodedVideoTrack;
484 @property(assign, nonatomic) BOOL publishMediaPlayerAudioTrack;
490 @property(assign, nonatomic) BOOL publishMediaPlayerVideoTrack;
496 @property(assign, nonatomic) BOOL publishTranscodedVideoTrack;
502 @property(assign, nonatomic) BOOL publishMixedAudioTrack;
508 @property(assign, nonatomic) BOOL publishLipSyncTrack;
514 @property(assign, nonatomic) BOOL autoSubscribeAudio;
520 @property(assign, nonatomic) BOOL autoSubscribeVideo;
528 @property(assign, nonatomic) BOOL enableAudioRecordingOrPlayout;
532 @property(assign, nonatomic) NSInteger publishMediaPlayerId;
539 @property(assign, nonatomic) AgoraClientRole clientRoleType;
544 @property(assign, nonatomic) AgoraAudienceLatencyLevelType audienceLatencyLevel;
548 @property(assign, nonatomic) AgoraVideoStreamType defaultVideoStreamType;
552 @property(assign, nonatomic) AgoraChannelProfile channelProfile;
558 @property(assign, nonatomic) NSInteger audioDelayMs;
563 @property(assign, nonatomic) NSInteger mediaPlayerAudioDelayMs;
575 @property(copy, nonatomic) NSString * _Nullable token;
582 @property(assign, nonatomic) BOOL enableBuiltInMediaEncryption;
583 
590 @property(assign, nonatomic) BOOL publishRhythmPlayerTrack;
603 @property(assign, nonatomic) BOOL isInteractiveAudience;
604 
609 @property(assign, nonatomic) NSInteger customVideoTrackId;
610 
618 @property(assign, nonatomic) BOOL isAudioFilterable;
619 
623 @property(copy, nonatomic) NSString * _Nullable parameters;
624 
634 @property(assign, nonatomic) BOOL enableMultipath;
635 
641 @property(assign, nonatomic) AgoraMultipathMode uplinkMultipathMode;
642 
648 @property(assign, nonatomic) AgoraMultipathMode downlinkMultipathMode;
649 
655 @property(assign, nonatomic) AgoraMultipathType preferMultipathType;
656 
657 @end
658 
662 __attribute__((visibility("default"))) @interface AgoraRtcVideoCanvas : NSObject
666 @property(assign, nonatomic) NSUInteger uid;
667 
673 @property(assign, nonatomic) NSUInteger subviewUid;
674 
680 @property(strong, nonatomic) VIEW_CLASS *_Nullable view;
684 @property(assign, nonatomic) AgoraVideoRenderMode renderMode;
692 @property(assign, nonatomic) AgoraVideoMirrorMode mirrorMode;
696 @property(assign, nonatomic) AgoraVideoViewSetupMode setupMode;
700 @property(nonatomic, assign) AgoraVideoSourceType sourceType;
704 @property(nonatomic, assign) int mediaPlayerId;
710 @property(assign, nonatomic) CGRect cropArea;
711 
716 @property(assign, nonatomic) UInt32 backgroundColor;
717 
730 @property(assign, nonatomic) BOOL enableAlphaMask;
731 
735 @property(assign, nonatomic) AgoraVideoModulePosition position;
736 @end
737 
741 __attribute__((visibility("default"))) @interface AgoraLastmileProbeConfig : NSObject
748 @property (assign, nonatomic) BOOL probeUplink;
754 @property (assign, nonatomic) BOOL probeDownlink;
759 @property (assign, nonatomic) NSUInteger expectedUplinkBitrate;
764 @property (assign, nonatomic) NSUInteger expectedDownlinkBitrate;
765 @end
766 
770 __attribute__((visibility("default"))) @interface AgoraLastmileProbeOneWayResult : NSObject
774 @property (assign, nonatomic) NSUInteger packetLossRate;
778 @property (assign, nonatomic) NSUInteger jitter;
782 @property (assign, nonatomic) NSUInteger availableBandwidth;
783 @end
784 
788 __attribute__((visibility("default"))) @interface AgoraLastmileProbeResult : NSObject
792 @property (assign, nonatomic) AgoraLastmileProbeResultState state;
796 @property (assign, nonatomic) NSUInteger rtt;
800 @property (strong, nonatomic) AgoraLastmileProbeOneWayResult *_Nonnull uplinkReport;
804 @property (strong, nonatomic) AgoraLastmileProbeOneWayResult *_Nonnull downlinkReport;
805 @end
809 __attribute__((visibility("default"))) @interface AgoraRtcLocalVideoStats : NSObject
813 @property(assign, nonatomic) NSUInteger uid;
814 
819 @property(assign, nonatomic) NSUInteger sentBitrate;
824 @property(assign, nonatomic) NSUInteger sentFrameRate;
828 @property(assign, nonatomic) NSInteger captureFrameRate;
832 @property(assign, nonatomic) NSInteger captureFrameWidth;
836 @property(assign, nonatomic) NSInteger captureFrameHeight;
842 @property(assign, nonatomic) NSInteger regulatedCaptureFrameRate;
848 @property(assign, nonatomic) NSInteger regulatedCaptureFrameWidth;
854 @property(assign, nonatomic) NSInteger regulatedCaptureFrameHeight;
855 
859 @property(assign, nonatomic) NSInteger encoderOutputFrameRate;
863 @property(assign, nonatomic) NSInteger rendererOutputFrameRate;
867 @property(assign, nonatomic) NSInteger targetFrameRate;
872 @property(assign, nonatomic) AgoraVideoQualityAdaptIndication qualityAdaptIndication;
877 @property(assign, nonatomic) NSInteger targetBitrate;
882 @property(assign, nonatomic) NSInteger encodedBitrate;
886 @property(assign, nonatomic) NSInteger encodedFrameWidth;
890 @property(assign, nonatomic) NSInteger encodedFrameHeight;
894 @property(assign, nonatomic) NSInteger encodedFrameCount;
898 @property(assign, nonatomic) AgoraVideoCodecType codecType;
905 @property(assign, nonatomic) AgoraVideoEncodedFrameDepth encodedFrameDepth;
909 @property(assign, nonatomic) AgoraVideoHwEncoderAccelerating hwEncoderAccelerating;
914 @property(assign, nonatomic) NSInteger txPacketLossRate;
919 @property(assign, nonatomic) AgoraCaptureBrightnessLevelType captureBrightnessLevel NS_SWIFT_NAME(captureBrightnessLevel);
923 @property(assign, nonatomic) BOOL dualStreamEnabled;
924 @end
925 
929 __attribute__((visibility("default"))) @interface AgoraRtcRemoteVideoStats : NSObject
933 @property(assign, nonatomic) NSUInteger uid;
934 
941 @property(assign, nonatomic) NSUInteger delay __deprecated;
946 @property(assign, nonatomic) NSUInteger e2eDelay;
950 @property(assign, nonatomic) NSUInteger width;
954 @property(assign, nonatomic) NSUInteger height;
958 @property(assign, nonatomic) NSUInteger receivedBitrate;
962 @property(assign, nonatomic) AgoraVideoStreamType rxStreamType;
963 
967 @property(assign, nonatomic) NSInteger decoderOutputFrameRate;
971 @property(assign, nonatomic) NSInteger rendererOutputFrameRate;
975 @property(assign, nonatomic) NSInteger frameLossRate;
979 @property(assign, nonatomic) NSInteger packetLossRate;
985 @property(assign, nonatomic) NSInteger totalFrozenTime;
991 @property(assign, nonatomic) NSUInteger totalActiveTime;
995 @property(assign, nonatomic) NSInteger publishDuration;
1001 @property(assign, nonatomic) NSInteger frozenRate;
1006 @property(assign, nonatomic) NSInteger avSyncTimeMs;
1014 @property(assign, nonatomic) NSInteger mosValue;
1018 @property(assign, nonatomic) NSUInteger rxVideoBytes;
1019 
1020 @end
1021 
1025 __attribute__((visibility("default"))) @interface AgoraRtcLocalAudioStats : NSObject
1029 @property(assign, nonatomic) NSUInteger numChannels;
1033 @property(assign, nonatomic) NSUInteger sentSampleRate;
1037 @property(assign, nonatomic) NSUInteger sentBitrate;
1041 @property(assign, nonatomic) NSUInteger internalCodec;
1046 @property(assign, nonatomic) NSUInteger txPacketLossRate;
1050 @property(assign, nonatomic) NSUInteger audioDeviceDelay;
1054 @property(assign, nonatomic) NSUInteger audioPlayoutDelay;
1058 @property(assign, nonatomic) NSUInteger earMonitorDelay;
1063 @property(assign, nonatomic) NSUInteger aecEstimatedDelay;
1064 
1065 @end
1066 
1070 __attribute__((visibility("default"))) @interface AgoraRtcRemoteAudioStats : NSObject
1074 @property(assign, nonatomic) NSUInteger uid;
1075 
1079 @property(assign, nonatomic) NSUInteger quality;
1083 @property(assign, nonatomic) NSUInteger networkTransportDelay;
1089 @property(assign, nonatomic) NSUInteger jitterBufferDelay;
1093 @property(assign, nonatomic) NSUInteger audioLossRate;
1097 @property(assign, nonatomic) NSUInteger numChannels;
1101 @property(assign, nonatomic) NSUInteger receivedSampleRate;
1105 @property(assign, nonatomic) NSUInteger receivedBitrate;
1110 @property(assign, nonatomic) NSUInteger totalFrozenTime;
1116 @property(assign, nonatomic) NSUInteger totalActiveTime;
1120 @property(assign, nonatomic) NSInteger publishDuration;
1126 @property(assign, nonatomic) NSUInteger frozenRate;
1143 @property(assign, nonatomic) NSUInteger mosValue;
1148 @property (assign, nonatomic) NSUInteger frozenRateByCustomPlcCount;
1152 @property (assign, nonatomic) NSUInteger plcCount;
1153 
1158 @property (assign, nonatomic) NSUInteger frozenCntByCustom;
1159 
1164 @property (assign, nonatomic) NSUInteger frozenTimeByCustom;
1165 
1170 @property(assign, nonatomic) AgoraExperienceQuality qoeQuality;
1175 @property(assign, nonatomic) AgoraExperiencePoorReason qualityChangedReason;
1180 @property(assign, nonatomic) NSUInteger rxAudioBytes;
1185 @property(assign, nonatomic) NSInteger e2eDelay;
1186 @end
1187 
1191 __attribute__((visibility("default"))) @interface AgoraRtcAudioVolumeInfo : NSObject
1198 @property(assign, nonatomic) NSUInteger uid;
1199 
1207 @property(assign, nonatomic) NSUInteger volume;
1208 
1219 @property(assign, nonatomic) NSUInteger vad;
1220 
1226 @property (assign, nonatomic) double voicePitch;
1227 
1228 @end
1229 
1233 __attribute__((visibility("default"))) @interface AgoraChannelStats : NSObject
1237 @property(assign, nonatomic) NSUInteger duration;
1241 @property(assign, nonatomic) NSUInteger txBytes;
1245 @property(assign, nonatomic) NSUInteger rxBytes;
1249 @property(assign, nonatomic) NSUInteger txAudioKBitrate;
1253 @property(assign, nonatomic) NSUInteger rxAudioKBitrate;
1257 @property(assign, nonatomic) NSUInteger txVideoKBitrate;
1261 @property(assign, nonatomic) NSUInteger rxVideoKBitrate;
1265 @property(assign, nonatomic) NSUInteger txAudioBytes;
1269 @property(assign, nonatomic) NSUInteger txVideoBytes;
1273 @property(assign, nonatomic) NSUInteger rxAudioBytes;
1277 @property(assign, nonatomic) NSUInteger rxVideoBytes;
1281 @property(assign, nonatomic) NSUInteger lastmileDelay;
1285 @property(assign, nonatomic) NSUInteger userCount;
1291 @property(assign, nonatomic) double cpuAppUsage;
1297 @property(assign, nonatomic) double cpuTotalUsage;
1305 @property(assign, nonatomic) NSInteger gatewayRtt;
1310 @property(assign, nonatomic) double memoryAppUsageRatio;
1315 @property(assign, nonatomic) double memoryTotalUsageRatio;
1320 @property(assign, nonatomic) NSInteger memoryAppUsageInKbytes;
1325 @property(assign, nonatomic) NSInteger connectTimeMs;
1326 
1330 @property(assign, nonatomic) NSUInteger txKBitrate;
1334 @property(assign, nonatomic) NSUInteger rxKBitrate;
1335 
1338 @property(assign, nonatomic) NSInteger firstAudioPacketDuration;
1341 @property(assign, nonatomic) NSInteger firstVideoPacketDuration;
1344 @property(assign, nonatomic) NSInteger firstVideoKeyFramePacketDuration;
1347 @property(assign, nonatomic) NSInteger packetsBeforeFirstKeyFramePacket;
1352 @property(assign, nonatomic) NSInteger txPacketLossRate;
1357 @property(assign, nonatomic) NSInteger rxPacketLossRate;
1363 @property(assign, nonatomic) NSInteger lanAccelerateState;
1364 
1365 @end
1369 __attribute__((visibility("default"))) @interface AgoraAdvancedVideoOptions : NSObject
1373 @property(assign, nonatomic) AgoraEncodingPreference encodingPreference;
1374 
1378 @property(assign, nonatomic) AgoraCompressionPreference compressionPreference;
1379 
1385 @property(assign, nonatomic) BOOL encodeAlpha;
1386 
1387 @end
1388 
1392 __attribute__((visibility("default"))) @interface AgoraVideoCodecCapLevels : NSObject
1393 
1398 @property(assign, nonatomic) AgoraVideoCodecCapabilityLevel hwDecodingLevel;
1403 @property(assign, nonatomic) AgoraVideoCodecCapabilityLevel swDecodingLevel;
1404 
1405 @end
1406 
1411 __attribute__((visibility("default"))) @interface AgoraFocalLengthInfo : NSObject
1412 
1416 @property(assign, nonatomic) int cameraDirection;
1417 
1421 @property(assign, nonatomic) AgoraFocalLength focalLengthType;
1422 
1423 @end
1424 
1428 __attribute__((visibility("default"))) @interface AgoraVideoCodecCapInfo : NSObject
1429 
1433 @property(assign, nonatomic) AgoraVideoCodecType codecType;
1437 @property(assign, nonatomic) NSUInteger codecCapMask;
1438 
1442 @property(strong, nonatomic) AgoraVideoCodecCapLevels *_Nonnull codecCapLevels;
1443 
1444 @end
1448 __attribute__((visibility("default"))) @interface AgoraVideoEncoderConfiguration : NSObject
1477 @property(assign, nonatomic) CGSize dimensions;
1478 
1482 @property(assign, nonatomic) AgoraVideoCodecType codecType;
1483 
1488 @property(assign, nonatomic) NSInteger frameRate;
1489 
1499 @property(assign, nonatomic) NSInteger bitrate;
1500 
1509 @property(assign, nonatomic) NSInteger minBitrate;
1510 
1514 @property(assign, nonatomic) AgoraVideoOutputOrientationMode orientationMode;
1515 
1521 @property(assign, nonatomic) AgoraVideoMirrorMode mirrorMode;
1522 
1530 @property (assign, nonatomic) AgoraDegradationPreference degradationPreference;
1531 
1535 @property (strong, nonatomic) AgoraAdvancedVideoOptions *_Nullable advancedVideoOptions;
1536 
1548 - (instancetype _Nonnull)initWithSize:(CGSize)size
1549  frameRate:(NSInteger)frameRate
1550  bitrate:(NSInteger)bitrate
1551  orientationMode:(AgoraVideoOutputOrientationMode)orientationMode
1552  mirrorMode:(AgoraVideoMirrorMode)mirrorMode NS_SWIFT_NAME(init(size:frameRate:bitrate:orientationMode:mirrorMode:));
1553 
1566 - (instancetype _Nonnull)initWithWidth:(NSInteger)width
1567  height:(NSInteger)height
1568  frameRate:(NSInteger)frameRate
1569  bitrate:(NSInteger)bitrate
1570  orientationMode:(AgoraVideoOutputOrientationMode)orientationMode
1571  mirrorMode:(AgoraVideoMirrorMode)mirrorMode NS_SWIFT_NAME(init(width:height:frameRate:bitrate:orientationMode:mirrorMode:));
1572 @end
1573 
1577 __attribute__((visibility("default"))) @interface AgoraLiveTranscodingUser : NSObject
1581 @property(assign, nonatomic) NSUInteger uid;
1585 @property(assign, nonatomic) CGRect rect;
1595 @property(assign, nonatomic) NSInteger zOrder;
1601 @property(assign, nonatomic) double alpha;
1621 @property(assign, nonatomic) NSInteger audioChannel;
1622 @end
1623 
1632 __attribute__((visibility("default"))) @interface AgoraLiveStreamAdvancedFeature : NSObject
1633 
1638 @property(copy, nonatomic) NSString* _Nullable featureName;
1639 
1645 @property(assign, nonatomic) BOOL opened;
1646 @end
1647 
1655 __attribute__((visibility("default"))) @interface AgoraImage : NSObject
1660 @property(strong, nonatomic) NSURL *_Nonnull url;
1664 @property(assign, nonatomic) CGRect rect;
1672 @property (assign, nonatomic) NSInteger zOrder;
1678 @property(assign, nonatomic) double alpha;
1679 @end
1680 
1688 __attribute__((visibility("default"))) @interface WatermarkOptions : NSObject
1694 @property(assign, nonatomic) BOOL visibleInPreview;
1703 @property(assign, nonatomic) CGRect positionInLandscapeMode;
1712 @property(assign, nonatomic) CGRect positionInPortraitMode;
1716 @property(assign, nonatomic) int zOrder;
1717 @end
1718 
1729 __attribute__((visibility("default"))) @interface WatermarkBuffer : NSObject
1733  @property(assign, nonatomic) int width;
1737  @property(assign, nonatomic) int height;
1741  @property(assign, nonatomic) int length;
1745  @property(strong, nonatomic) NSData* _Nullable buffer;
1749 @property(assign, nonatomic) WatermarkBufferFormat format;
1750 @end
1751 
1757 __attribute__((visibility("default"))) @interface WatermarkConfig : NSObject
1761 @property(copy, nonatomic) NSString* _Nonnull id;
1765 @property(assign, nonatomic) WatermarkType type;
1769 @property(strong, nonatomic) WatermarkBuffer* _Nullable buffer;
1773 @property(strong, nonatomic) NSURL *_Nullable imageUrl;
1777 @property(strong, nonatomic) WatermarkOptions* _Nonnull options;
1778 @end
1779 
1783 __attribute__((visibility("default"))) @interface AgoraLiveTranscoding : NSObject
1788 @property(copy, nonatomic) NSArray<AgoraLiveTranscodingUser*>* _Nullable transcodingUsers;
1789 
1801 @property(assign, nonatomic) CGSize size;
1808 @property(assign, nonatomic) NSInteger videoBitrate;
1814 @property(assign, nonatomic) NSInteger videoFramerate;
1822 @property(assign, nonatomic) BOOL lowLatency;
1826 @property(assign, nonatomic) NSInteger videoGop;
1832 @property(assign, nonatomic) AgoraVideoCodecProfileType videoCodecProfile;
1833 
1838 @property(assign, nonatomic) AgoraVideoCodecTypeForStream videoCodecType;
1839 
1845 @property(copy, nonatomic) NSString* _Nullable transcodingExtraInfo;
1846 
1853 @property(copy, nonatomic) NSArray<AgoraImage*>* _Nullable watermarkArray;
1854 
1861 @property(copy, nonatomic) NSArray<AgoraImage*>* _Nullable backgroundImageArray;
1862 
1871 @property(strong, nonatomic) COLOR_CLASS* _Nullable backgroundColor;
1872 
1876 @property(assign, nonatomic) AgoraAudioSampleRateType audioSampleRate;
1881 @property(assign, nonatomic) NSInteger audioBitrate;
1891 @property(assign, nonatomic) NSInteger audioChannels;
1895 @property(assign, nonatomic) AgoraAudioCodecProfileType audioCodecProfile;
1896 
1901 + (AgoraLiveTranscoding* _Nonnull)defaultTranscoding NS_SWIFT_NAME(default());
1902 
1910 - (int)addUser:(AgoraLiveTranscodingUser* _Nonnull)user NS_SWIFT_NAME(add(_:));
1911 
1919 - (int)removeUser:(NSUInteger)uid NS_SWIFT_NAME(removeUser(_:));
1920 
1930 - (void)setAdvancedFeatures:(NSString* _Nonnull)featureName opened:(BOOL)opened NS_SWIFT_NAME(setAdvancedFeatures(_:opened:));
1931 
1935 - (NSArray<AgoraLiveStreamAdvancedFeature*>* _Nullable)getAdvancedFeatures NS_SWIFT_NAME(getAdvancedFeatures());
1936 
1937 @end
1938 
1941 __attribute__((visibility("default"))) @interface AgoraLiveInjectStreamConfig : NSObject
1945 @property(assign, nonatomic) CGSize size;
1948 @property(assign, nonatomic) NSInteger videoGop;
1951 @property(assign, nonatomic) NSInteger videoFramerate;
1954 @property(assign, nonatomic) NSInteger videoBitrate;
1955 
1958 @property(assign, nonatomic) AgoraAudioSampleRateType audioSampleRate;
1961 @property(assign, nonatomic) NSInteger audioBitrate;
1964 @property(assign, nonatomic) NSInteger audioChannels;
1965 
1970 + (AgoraLiveInjectStreamConfig *_Nonnull)defaultConfig NS_SWIFT_NAME(defaultConfig());
1971 @end
1972 
1973  __deprecated
1974 
1977  __attribute__((visibility("default"))) @interface AgoraRtcVideoCompositingRegion
1978  : NSObject
1981  @property(assign, nonatomic) NSUInteger uid;
1984 @property(assign, nonatomic) CGFloat x;
1987 @property(assign, nonatomic) CGFloat y;
1990 @property(assign, nonatomic) CGFloat width;
1993 @property(assign, nonatomic) CGFloat height;
1996 @property(assign, nonatomic) NSInteger zOrder;
1999 @property(assign, nonatomic) CGFloat alpha;
2002 @property(assign, nonatomic) AgoraVideoRenderMode renderMode;
2003 @end
2004 
2005  __deprecated
2008  __attribute__((visibility("default"))) @interface AgoraRtcVideoCompositingLayout
2009  : NSObject
2012  @property(assign, nonatomic) NSInteger canvasWidth;
2015 @property(assign, nonatomic) NSInteger canvasHeight;
2018 @property(copy, nonatomic) NSString *_Nullable backgroundColor;
2021 @property(copy, nonatomic) NSArray<AgoraRtcVideoCompositingRegion *> *_Nullable regions;
2024 @property(copy, nonatomic) NSString *_Nullable appData;
2025 @end
2026 
2032  __deprecated __attribute__((visibility("default"))) @interface AgoraPublisherConfiguration
2033  : NSObject
2039  @property(assign, nonatomic) BOOL owner;
2040 
2043 @property(assign, nonatomic) NSInteger width;
2046 @property(assign, nonatomic) NSInteger height;
2049 @property(assign, nonatomic) NSInteger framerate;
2052 @property(assign, nonatomic) NSInteger bitrate;
2055 @property(assign, nonatomic) NSInteger audiosamplerate;
2058 @property(assign, nonatomic) NSInteger audiobitrate;
2061 @property(assign, nonatomic) NSInteger audiochannels;
2062 
2069 @property(assign, nonatomic) NSInteger defaultLayout;
2072 @property(assign, nonatomic) AgoraRtmpStreamLifeCycle lifeCycle;
2073 
2076 @property(assign, nonatomic) NSInteger injectStreamWidth;
2077 
2080 @property(assign, nonatomic) NSInteger injectStreamHeight;
2081 
2084 @property(copy, nonatomic) NSString *_Nullable injectStreamUrl;
2085 
2088 @property(copy, nonatomic) NSString *_Nullable publishUrl;
2089 
2093 @property(copy, nonatomic) NSString *_Nullable rawStreamUrl;
2094 
2097 @property(copy, nonatomic) NSString *_Nullable extraInfo;
2098 
2101 - (BOOL)validate NS_SWIFT_NAME(validate());
2102 
2103 - (NSString * _Nullable)toJsonString NS_SWIFT_NAME(toJsonString());
2104 @end
2105 
2106 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
2107 
2111 __attribute__((visibility("default"))) @interface AgoraRtcDeviceInfo : NSObject
2112 @property (assign, nonatomic) int __deprecated index;
2113 
2117 @property(assign, nonatomic) AgoraMediaDeviceType type;
2118 
2122 @property(copy, nonatomic) NSString *_Nullable deviceId;
2123 
2127 @property(copy, nonatomic) NSString *_Nullable deviceName;
2128 
2132 @property(copy, nonatomic) NSString *_Nullable deviceTypeName;
2133 @end
2134 #endif
2135 
2139 __attribute__((visibility("default"))) @interface AgoraColorSpace : NSObject
2142 @property(assign, nonatomic) AgoraColorPrimaryID primaryID;
2145 @property(assign, nonatomic) AgoraColorTransferID transferID;
2148 @property(assign, nonatomic) AgoraColorMatrixID matrixID;
2151 @property(assign, nonatomic) AgoraColorRangeID rangeID;
2152 @end
2153 
2157 __attribute__((visibility("default"))) @interface AgoraVideoFrame : NSObject
2171 @property(assign, nonatomic) NSInteger format;
2172 
2177 @property(assign, nonatomic) CMTime time; // Time for this frame.
2178 
2190 @property(assign, nonatomic) int stride DEPRECATED_MSG_ATTRIBUTE("use strideInPixels instead");
2191 
2195 @property(assign, nonatomic) int strideInPixels; // Number of pixels between two consecutive rows.
2196  // Note: in pixel, not byte. Not used for iOS
2197  // textures.
2198 
2202 @property(assign, nonatomic) int height; // Number of rows of pixels. Not used for iOS textures.
2203 
2207 @property(assign, nonatomic) CVPixelBufferRef _Nullable textureBuf;
2208 
2211 @property(strong, nonatomic) IMAGE_CLASS * _Nullable image;
2212 
2216 @property(strong, nonatomic) NSData *_Nullable dataBuf; // Raw data buffer. Not used for iOS textures.
2217 
2223 @property(strong, nonatomic) NSData *_Nullable alphaBuf;
2228 @property(assign, nonatomic) AgoraAlphaStitchMode alphaStitchMode;
2229 
2233 @property(assign, nonatomic) int cropLeft; // Number of pixels to crop on the left boundary.
2237 @property(assign, nonatomic) int cropTop; // Number of pixels to crop on the top boundary.
2241 @property(assign, nonatomic) int cropRight; // Number of pixels to crop on the right boundary.
2245 @property(assign, nonatomic) int cropBottom; // Number of pixels to crop on the bottom boundary.
2250 @property(assign, nonatomic) int rotation; // 0, 90, 180, 270. See document for rotation calculation.
2251 
2256 @property(strong, nonatomic) AgoraColorSpace *_Nullable colorSpace;
2257 /* Note
2258  * 1. strideInPixels
2259  * Stride is in pixels, not bytes
2260  * 2. About the frame width and height
2261  * No field is defined for the width. However, it can be deduced by:
2262  * croppedWidth = (strideInPixels - cropLeft - cropRight)
2263  * And
2264  * croppedHeight = (height - cropTop - cropBottom)
2265  * 3. About crop
2266  * _________________________________________________________________.....
2267  * | ^ | ^
2268  * | | | |
2269  * | cropTop | |
2270  * | | | |
2271  * | v | |
2272  * | ________________________________ | |
2273  * | | | | |
2274  * | | | | |
2275  * |<-- cropLeft -->| valid region |<- cropRight ->|
2276  * | | | | height
2277  * | | | |
2278  * | |_____________________________ | | |
2279  * | ^ | |
2280  * | | | |
2281  * | cropBottom | |
2282  * | | | |
2283  * | v | v
2284  * _________________________________________________________________......
2285  * | |
2286  * |<---------------- strideInPixels ----------------------------->|
2287  *
2288  * If your buffer contains garbage data, you can crop them. For example, the frame size is
2289  * 360 x 640, often the buffer stride is 368, that is, there extra 8 pixels on the
2290  * right are for padding, and should be removed. In this case, you can set:
2291  * strideInPixels = 368;
2292  * height = 640;
2293  * cropRight = 8;
2294  * // cropLeft, cropTop, cropBottom are set to a default of 0
2295  */
2296 
2299 - (void)fillAlphaData;
2300 @end
2301 
2305 __attribute__((visibility("default"))) @interface AgoraLogConfig: NSObject
2315 @property (copy, nonatomic) NSString * _Nullable filePath;
2322 @property (assign, nonatomic) NSInteger fileSizeInKB;
2328 @property (assign, nonatomic) AgoraLogLevel level;
2329 @end
2330 
2334 __attribute__((visibility("default"))) @interface AgoraRtcEngineConfig: NSObject
2335 
2342  @property (copy, nonatomic) NSString * _Nullable appId;
2343 
2347  @property (assign, nonatomic) AgoraChannelProfile channelProfile;
2348 
2352  @property (copy, nonatomic) NSString * _Nullable license;
2353 
2358  @property (assign, nonatomic) AgoraAudioScenario audioScenario;
2364  @property (assign, nonatomic) AgoraAreaCodeType areaCode;
2384  @property (strong, nonatomic) AgoraLogConfig * _Nullable logConfig;
2390  @property (assign, nonatomic) AgoraThreadPriorityType threadPriority;
2394  @property (weak, nonatomic) id<AgoraMediaFilterEventDelegate> _Nullable eventDelegate;
2403  @property (assign, nonatomic) BOOL domainLimit;
2404 
2412  @property (assign, nonatomic) BOOL autoRegisterAgoraExtensions;
2413 @end
2414 
2418 __attribute__((visibility("default"))) @interface AgoraAudioFrame : NSObject
2422 @property(assign, nonatomic) NSInteger samplesPerChannel;
2426 @property(assign, nonatomic) NSInteger bytesPerSample;
2432 @property(assign, nonatomic) NSInteger channels;
2436 @property(assign, nonatomic) NSInteger samplesPerSec;
2442 @property(assign, nonatomic) void* _Nullable buffer;
2449 @property(assign, nonatomic) int64_t renderTimeMs;
2452 @property(assign, nonatomic) int64_t presentationMs;
2456 @property(assign, nonatomic) NSInteger avSyncType;
2460 @property(assign, nonatomic) uint32_t rtpTimestamp;
2461 @end
2462 
2486 __attribute__((visibility("default"))) @interface AgoraAudioParams : NSObject
2487 
2496 @property (assign, nonatomic) NSInteger sampleRate;
2497 
2503 @property (assign, nonatomic) NSInteger channel;
2504 
2508 @property (assign, nonatomic) AgoraAudioRawFrameOperationMode mode;
2509 
2513 @property (assign, nonatomic) NSInteger samplesPerCall;
2514 
2515 @end
2516 
2520 __attribute__((visibility("default"))) @interface AgoraEncodedAudioFrameInfo: NSObject
2524  @property (assign, nonatomic) NSInteger samplesPerChannel;
2528  @property (assign, nonatomic) NSInteger channels;
2532  @property (assign, nonatomic) NSInteger samplesPerSec;
2536  @property (assign, nonatomic) AgoraAudioCodecType codecType;
2537 @end
2538 
2542 __attribute__((visibility("default"))) @interface AgoraUplinkNetworkInfo : NSObject
2546 @property(nonatomic, assign) int videoEncoderTargetBitrateBps;
2547 @end
2548 
2552 __attribute__((visibility("default"))) @interface AgoraDownlinkNetworkInfo : NSObject
2556 @property(nonatomic, assign) int lastmileBufferDelayTimeMs;
2560 @property(nonatomic, assign) int bandwidthEstimationBps;
2561 @end
2562 
2566 __attribute__((visibility("default"))) @interface AgoraLeaveChannelOptions : NSObject
2572 @property(nonatomic, assign) BOOL stopAudioMixing;
2573 
2579 @property(nonatomic, assign) BOOL stopAllEffect;
2580 
2586 @property(nonatomic, assign) BOOL stopMicrophoneRecording;
2587 
2588 @end
2589 
2598 __attribute__((visibility("default"))) @interface AgoraOutputVideoFrame : NSObject
2599 
2613 @property (nonatomic, assign) NSInteger type;
2617 @property (nonatomic, assign) int width;
2621 @property (nonatomic, assign) int height;
2627 @property (nonatomic, assign) int yStride;
2633 @property (nonatomic, assign) int uStride;
2639 @property (nonatomic, assign) int vStride;
2643 @property (nonatomic, assign) uint8_t* _Nullable yBuffer;
2647 @property (nonatomic, assign) uint8_t* _Nullable uBuffer;
2651 @property (nonatomic, assign) uint8_t* _Nullable vBuffer;
2656 @property (nonatomic, assign) int rotation;
2661 @property (nonatomic, assign) int64_t renderTimeMs;
2665 @property (nonatomic, assign) int avSyncType;
2666 
2670 @property(assign, nonatomic) CVPixelBufferRef _Nullable pixelBuffer;
2680 @property (nonatomic, assign) uint8_t* _Nullable alphaBuffer;
2685 @property (nonatomic, assign) AgoraAlphaStitchMode alphaStitchMode;
2686 
2690 @property(nonatomic, strong) NSDictionary *_Nonnull metaInfo;
2691 
2696 @property(nonatomic, strong) AgoraColorSpace* _Nullable colorSpace;
2697 
2698 @end
2699 
2703 __attribute__((visibility("default"))) @interface AgoraEncryptionConfig: NSObject
2704 
2710  @property (assign, nonatomic) AgoraEncryptionMode encryptionMode;
2711 
2717  @property (copy, nonatomic) NSString * _Nullable encryptionKey;
2725  @property (strong, nonatomic) NSData * _Nullable encryptionKdfSalt;
2731  @property (assign, nonatomic) BOOL datastreamEncryptionEnabled;
2732  @end
2733 
2737 __attribute__((visibility("default"))) @interface AgoraUserInfo: NSObject
2738 
2742 @property(assign, nonatomic) NSUInteger uid;
2743 
2747  @property (copy, nonatomic) NSString * _Nullable userAccount;
2748  @end
2749 
2753 __attribute__((visibility("default"))) @interface AgoraClientRoleOptions: NSObject
2754 
2759 @property (assign, nonatomic) AgoraAudienceLatencyLevelType audienceLatencyLevel;
2760 
2761 @end
2762 
2766 __attribute__((visibility("default"))) @interface AgoraCameraCapturerConfiguration: NSObject
2772 #if TARGET_OS_IOS
2773 
2776 @property (assign, nonatomic) AgoraCameraDirection cameraDirection;
2790 @property(assign, nonatomic) AgoraFocalLength cameraFocalLengthType;
2791 #elif TARGET_OS_MAC
2792 
2795 @property (copy, nonatomic) NSString * _Nullable deviceId;
2796 #endif
2797 
2801 @property(assign, nonatomic) CGSize dimensions;
2802 
2806 @property(assign, nonatomic) int frameRate;
2807 
2816 @property(assign, nonatomic) BOOL followEncodeDimensionRatio;
2817 
2818 @end
2819 
2833 __attribute__((visibility("default"))) @interface AgoraDataStreamConfig: NSObject
2834 
2842 @property (assign, nonatomic) BOOL ordered;
2843 
2855 @property (assign, nonatomic) BOOL syncWithAudio;
2856 @end
2857 
2858 
2862 __attribute__((visibility("default"))) @interface AgoraChannelMediaRelayInfo: NSObject
2866 @property (copy, nonatomic) NSString * _Nullable token;
2870 @property (copy, nonatomic) NSString * _Nullable channelName;
2874 @property (assign, nonatomic) NSUInteger uid;
2879 - (instancetype _Nonnull)initWithToken:(NSString *_Nullable)token NS_SWIFT_NAME(init(token:));
2880 @end
2881 
2885 __attribute__((visibility("default"))) @interface AgoraChannelMediaRelayConfiguration: NSObject
2903 @property (strong, nonatomic, readonly) NSDictionary<NSString *, AgoraChannelMediaRelayInfo *> *_Nullable destinationInfos;
2918 @property (strong, nonatomic) AgoraChannelMediaRelayInfo *_Nonnull sourceInfo;
2939 - (BOOL)setDestinationInfo:(AgoraChannelMediaRelayInfo *_Nonnull)destinationInfo forChannelName:(NSString *_Nonnull)channelName NS_SWIFT_NAME(setDestinationInfo(_:forChannelName:));
2949 - (BOOL)removeDestinationInfoForChannelName:(NSString *_Nonnull)channelName NS_SWIFT_NAME(removeDestinationInfo(forChannelName:));
2950 @end
2951 
2952 
2956 __attribute__((visibility("default"))) @interface AgoraBeautyOptions : NSObject
2957 
2962 @property(nonatomic, assign) AgoraLighteningContrastLevel lighteningContrastLevel;
2963 
2968 @property(nonatomic, assign) float lighteningLevel;
2969 
2974 @property(nonatomic, assign) float smoothnessLevel;
2975 
2980 @property(nonatomic, assign) float rednessLevel;
2981 
2986 @property(nonatomic, assign) float sharpnessLevel;
2987 
2988 @end
2989 
2993 __attribute__((visibility("default"))) @interface AgoraFaceShapeAreaOptions : NSObject
2997 @property(nonatomic, assign) AgoraFaceShapeArea shapeArea;
3002 @property(nonatomic, assign) int shapeIntensity;
3003 
3004 @end
3005 
3009 __attribute__((visibility("default"))) @interface AgoraFaceShapeBeautyOptions: NSObject
3013 @property(nonatomic, assign) AgoraFaceShapeStyle shapeStyle;
3019 @property(nonatomic, assign) int styleIntensity;
3020 
3021 @end
3022 
3026 __attribute__((visibility("default"))) @interface AgoraFilterEffectOptions: NSObject
3044 @property(nonatomic, copy) NSString* _Nullable path NS_SWIFT_NAME(path);
3045 
3050 @property(nonatomic, assign) float strength;
3051 
3052 @end
3053 
3057 __attribute__((visibility("default"))) @interface AgoraVideoDenoiserOptions : NSObject
3058 
3062 @property(nonatomic, assign) AgoraVideoDenoiserMode mode;
3063 
3067 @property(nonatomic, assign) AgoraVideoDenoiserLevel level;
3068 
3069 @end
3070 
3074 __attribute__((visibility("default"))) @interface AgoraLowlightEnhanceOptions : NSObject
3075 
3079 @property(nonatomic, assign) AgoraLowlightEnhanceMode mode;
3080 
3084 @property(nonatomic, assign) AgoraLowlightEnhanceLevel level;
3085 
3086 @end
3087 
3091 __attribute__((visibility("default"))) @interface AgoraColorEnhanceOptions : NSObject
3092 
3098 @property(nonatomic, assign) float strengthLevel;
3099 
3111 @property(nonatomic, assign) float skinProtectLevel;
3112 
3113 @end
3114 
3115 
3119 __attribute__((visibility("default"))) @interface AgoraVirtualBackgroundSource : NSObject
3120 
3124 @property(nonatomic, assign) AgoraVirtualBackgroundSourceType backgroundSourceType NS_SWIFT_NAME(backgroundSourceType);
3125 
3138 @property(nonatomic, assign) NSUInteger color NS_SWIFT_NAME(color);
3139 
3147 @property(nonatomic, copy) NSString* _Nullable source NS_SWIFT_NAME(source);
3148 
3154 @property(nonatomic, assign) AgoraBlurDegree blurDegree;
3155 
3156 @end
3157 
3161 __attribute__((visibility("default"))) @interface AgoraSegmentationProperty: NSObject
3162 
3166 @property(nonatomic, assign) SegModelType modelType;
3167 
3176 @property(nonatomic, assign) float greenCapacity;
3177 
3181 @property(nonatomic, assign) ScreenColorType screenColorType;
3182 
3183 @end
3187 __attribute__((visibility("default"))) @interface AgoraTranscodingVideoStream: NSObject
3193 @property (assign, nonatomic) NSUInteger remoteUserUid;
3194 
3198 @property (assign, nonatomic) AgoraVideoSourceType sourceType;
3206 @property (copy, nonatomic) NSString * _Nullable imageUrl;
3211 @property(assign, nonatomic) NSUInteger mediaPlayerId;
3216 @property (assign, nonatomic) CGRect rect;
3223 @property (assign, nonatomic) NSInteger zOrder;
3228 @property(assign, nonatomic) double alpha;
3235 @property(assign, nonatomic) BOOL mirror;
3236 
3237 @end
3238 
3242 __attribute__((visibility("default"))) @interface AgoraMixedAudioStream: NSObject
3246 @property (assign, nonatomic) AgoraAudioSourceType sourceType;
3252 @property (assign, nonatomic) NSUInteger remoteUserUid;
3266 @property (copy, nonatomic) NSString * _Nullable channelId;
3273 @property (assign, nonatomic) NSUInteger trackId;
3274 
3275 @end
3276 
3280 __attribute__((visibility("default"))) @interface AgoraLocalAudioMixerConfiguration: NSObject
3281 
3285 @property(copy, nonatomic) NSArray<AgoraMixedAudioStream *> *_Nullable audioInputStreams;
3286 
3294 @property(assign, nonatomic) BOOL syncWithLocalMic;
3295 
3296 @end
3297 
3301 __attribute__((visibility("default"))) @interface AgoraLocalTranscoderConfiguration: NSObject
3302 
3306 @property(copy, nonatomic) NSArray<AgoraTranscodingVideoStream *> *_Nullable videoInputStreams;
3307 
3312 @property (strong, nonatomic) AgoraVideoEncoderConfiguration *_Nonnull videoOutputConfiguration;
3313 
3319 @property(assign, nonatomic) BOOL syncWithPrimaryCamera;
3320 
3321 @end
3322 
3326 __attribute__((visibility("default"))) @interface AgoraScreenCaptureParameters: NSObject
3348 @property (assign, nonatomic) CGSize dimensions;
3353 @property (assign, nonatomic) NSInteger frameRate;
3358 @property (assign, nonatomic) NSInteger bitrate;
3359 
3367 @property(assign, nonatomic) BOOL captureMouseCursor;
3368 
3377 @property(assign, nonatomic) BOOL windowFocus;
3378 
3386 @property(copy, nonatomic) NSArray* _Nullable excludeWindowList;
3387 
3395 @property(assign, nonatomic) BOOL highLighted;
3399 @property(strong, nonatomic) COLOR_CLASS* _Nullable highLightColor;
3404 @property(assign, nonatomic) NSUInteger highLightWidth;
3405 
3406 @property(assign, nonatomic) BOOL captureAudio;
3407 
3408 @end
3409 
3410 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
3411 
3414 __attribute__((visibility("default"))) @interface AgoraScreenCaptureConfiguration: NSObject
3420 @property(assign, nonatomic) BOOL isCaptureWindow;
3425 @property(assign, nonatomic) UInt32 displayId;
3430 @property(assign, nonatomic) UInt32 windowId;
3431 
3435 @property(strong, nonatomic) AgoraScreenCaptureParameters* _Nonnull params;
3439 @property(assign, nonatomic) CGRect regionRect;
3440 
3441 @end
3442 #endif
3443 
3447 __attribute__((visibility("default"))) @interface AgoraScreenVideoParameters : NSObject
3448 
3452 @property(assign, nonatomic) CGSize dimensions;
3456 @property(assign, nonatomic) NSInteger frameRate;
3460 @property(assign, nonatomic) NSInteger bitrate;
3461 
3465 @property(assign, nonatomic) AgoraVideoContentHint contentHint;
3466 
3467 @end
3468 
3476 __attribute__((visibility("default"))) @interface AgoraScreenAudioParameters : NSObject
3477 
3481 @property(assign, nonatomic) NSInteger captureSignalVolume;
3482 
3483 @end
3484 
3488 __attribute__((visibility("default"))) @interface AgoraScreenCaptureParameters2 : NSObject
3497 @property(assign, nonatomic) BOOL captureAudio;
3502 @property(strong, nonatomic) AgoraScreenAudioParameters* _Nonnull audioParams;
3508 @property(assign, nonatomic) BOOL captureVideo;
3513 @property(strong, nonatomic) AgoraScreenVideoParameters* _Nonnull videoParams;
3514 @end
3515 
3519 __attribute__((visibility("default"))) @interface AgoraAudioRecordingConfiguration: NSObject
3525 @property (copy, nonatomic) NSString * _Nullable filePath;
3536 @property (assign, nonatomic) NSUInteger sampleRate;
3540 @property (assign, nonatomic) AgoraAudioFileRecordingType fileRecordOption;
3545 @property (assign, nonatomic) AgoraAudioRecordingQuality quality;
3546 
3560 @property (assign, nonatomic) NSInteger recordingChannel;
3561 
3562 @end
3563 
3567 __attribute__((visibility("default"))) @interface AgoraSimulcastStreamConfig: NSObject
3568 
3574  @property (assign, nonatomic) int kBitrate;
3578  @property (assign, nonatomic) int framerate;
3582  @property (assign, nonatomic) CGSize dimensions;
3583  @end
3584 
3595 __attribute__((visibility("default"))) @interface AgoraStreamLayerConfig: NSObject
3599  @property (assign, nonatomic) CGSize dimensions;
3603  @property (assign, nonatomic) int framerate;
3609  @property (assign, nonatomic) BOOL enable;
3610 @end
3611 
3617 __attribute__((visibility("default"))) @interface AgoraSimulcastConfig: NSObject
3621  @property (copy, nonatomic, readonly) NSArray<AgoraStreamLayerConfig*>* _Nonnull configs;
3630  @property (assign, nonatomic) BOOL publishFallbackEnable;
3631 @end
3632 
3636 __attribute__((visibility("default"))) @interface AgoraRtcMediaStreamInfo : NSObject
3640 @property(nonatomic, assign) NSInteger streamIndex;
3644 @property(nonatomic, assign) AgoraMediaStreamType streamType;
3648 @property(nonatomic, copy) NSString *_Nonnull codecName;
3652 @property(nonatomic, copy) NSString *_Nullable language;
3656 @property(nonatomic, assign) NSInteger videoFrameRate;
3660 @property(nonatomic, assign) NSInteger videoBitRate;
3664 @property(nonatomic, assign) NSInteger videoWidth;
3668 @property(nonatomic, assign) NSInteger videoHeight;
3672 @property(nonatomic, assign) NSInteger audioSampleRate;
3676 @property(nonatomic, assign) NSInteger audioChannels;
3680 @property(nonatomic, assign) NSInteger duration;
3684 @property(nonatomic, assign) NSInteger rotation;
3685 
3686 @end
3687 
3691 __attribute__((visibility("default"))) @interface AgoraAudioSpectrumInfo : NSObject
3692 
3696 @property(nonatomic, assign) NSInteger uid;
3700 @property(nonatomic, strong) NSArray<NSNumber *> * _Nullable audioSpectrumData;
3701 
3702 @end
3703 
3707 __attribute__((visibility("default"))) @interface AgoraAudioEncodedFrameDelegateConfig: NSObject
3711 @property (assign, nonatomic) AgoraAudioEncodedFrameDelegatePosition postionType;
3715 @property (assign, nonatomic) AgoraAudioEncodingType encodingType;
3716 @end
3717 
3722 __attribute__((visibility("default"))) @interface AgoraContentInspectModule: NSObject
3726 @property (assign, nonatomic) AgoraContentInspectType type;
3727 
3733 @property (assign, nonatomic) NSInteger interval;
3734 
3738 @property (assign, nonatomic) AgoraVideoModulePosition position;
3739 @end
3740 
3744 __attribute__((visibility("default"))) @interface AgoraContentInspectConfig: NSObject
3751 @property (nonatomic, copy) NSString* _Nullable extraInfo;
3758 @property (nonatomic, copy) NSString* _Nullable serverConfig;
3766 @property(copy, nonatomic) NSArray<AgoraContentInspectModule*>* _Nullable modules;
3767 @end
3768 
3772 __attribute__((visibility("default"))) @interface AgoraSnapshotConfig: NSObject
3778 @property (copy, nonatomic) NSString * _Nullable filePath;
3782 @property(assign, nonatomic) AgoraVideoModulePosition position;
3783 @end
3784 
3788 __attribute__((visibility("default"))) @interface AgoraRtcConnection: NSObject <NSCopying>
3789 
3797 - (instancetype _Nonnull)initWithChannelId:(NSString *_Nonnull)channelId localUid:(NSInteger)localUid;
3798 
3802 @property (nonatomic, copy) NSString *_Nonnull channelId;
3803 
3807 @property (nonatomic, assign) NSUInteger localUid;
3808 
3809 @end
3810 
3814 __attribute__((visibility("default"))) @interface AgoraVideoSubscriptionOptions: NSObject
3815 
3821 @property (nonatomic, assign) AgoraVideoStreamType type;
3828 @property (nonatomic, assign) BOOL encodedFrameOnly;
3829 
3830 @end
3831 
3835 __attribute__((visibility("default"))) @interface AgoraRecorderStreamInfo: NSObject
3839 @property (nonatomic, nonatomic) NSUInteger uid;
3840 
3844 @property (nonatomic, copy) NSString *_Nonnull channelId;
3848 @property (assign, nonatomic) AgoraRecorderStreamType type;
3849 @end
3850 
3854 __attribute__((visibility("default"))) @interface AgoraEncodedVideoFrameInfo: NSObject
3855 
3860 @property (assign, nonatomic) AgoraVideoCodecType codecType;
3864 @property (assign, nonatomic) NSInteger width;
3868 @property (assign, nonatomic) NSInteger height;
3874 @property (assign, nonatomic) NSInteger framesPerSecond;
3878 @property (assign, nonatomic) AgoraVideoFrameType frameType;
3882 @property (assign, nonatomic) NSInteger rotation;
3886 @property (assign, nonatomic) NSInteger trackId; // This can be reserved for multiple video tracks, we need to create different ssrc
3887  // and additional payload for later implementation.
3891 @property (assign, nonatomic) NSInteger captureTimeMs;
3895 @property (assign, nonatomic) NSInteger decodeTimeMs;
3899 @property (assign, nonatomic) AgoraVideoStreamType streamType;
3900 @end
3901 
3905 NS_SWIFT_NAME(LogUploadServerInfo) __attribute__((visibility("default"))) @interface LogUploadServerInfo : NSObject
3909 @property(copy, nonatomic) NSString* _Nullable serverDomain;
3913 @property(copy, nonatomic) NSString* _Nullable serverPath;
3917 @property(assign, nonatomic) NSInteger serverPort;
3923 @property(assign, nonatomic) BOOL serverHttps;
3924 @end
3925 
3929 NS_SWIFT_NAME(AdvancedConfigInfo) __attribute__((visibility("default"))) @interface AdvancedConfigInfo : NSObject
3934 @property(strong, nonatomic) LogUploadServerInfo* _Nullable logUploadServer;
3935 @end
3936 
3940 NS_SWIFT_NAME(AgoraLocalAccessPointConfiguration) __attribute__((visibility("default"))) @interface AgoraLocalAccessPointConfiguration : NSObject
3945 @property(copy, nonatomic) NSArray* _Nullable ipList NS_SWIFT_NAME(ipList);
3954 @property(copy, nonatomic) NSArray* _Nullable domainList NS_SWIFT_NAME(domainList);
3959 @property(copy, nonatomic) NSString* _Nullable verifyDomainName NS_SWIFT_NAME(verifyDomainName);
3963 @property(assign, nonatomic) AgoraLocalProxyMode mode NS_SWIFT_NAME(mode);
3967 @property(strong, nonatomic) AdvancedConfigInfo* _Nullable advancedConfig NS_SWIFT_NAME(advancedConfig);
3973 @property(assign, nonatomic) BOOL disableAut;
3974 @end
3975 
3979 __attribute__((visibility("default"))) @interface AgoraRhythmPlayerConfig: NSObject
3984 @property (assign, nonatomic) int beatsPerMeasure;
3989 @property (assign, nonatomic) int beatsPerMinute;
3990 
3991 @end
3992 
3996 NS_SWIFT_NAME(AgoraFacePositionInfo) __attribute__((visibility("default"))) @interface AgoraFacePositionInfo : NSObject
3997 
4003 @property(assign, nonatomic) NSInteger x NS_SWIFT_NAME(x);
4004 
4010 @property(assign, nonatomic) NSInteger y NS_SWIFT_NAME(y);
4011 
4015 @property(assign, nonatomic) NSInteger width NS_SWIFT_NAME(width);
4016 
4020 @property(assign, nonatomic) NSInteger height NS_SWIFT_NAME(height);
4021 
4025 @property(assign, nonatomic) NSInteger distance NS_SWIFT_NAME(distance);
4026 @end
4027 
4031 __attribute__((visibility("default"))) @interface AgoraAdvancedAudioOptions: NSObject
4032 
4036 @property(assign, nonatomic) AgoraAudioProcessChannels audioProcessingChannels;
4037 
4038 @end
4039 
4043 __attribute__((visibility("default"))) @interface AgoraImageTrackOptions : NSObject
4048 @property(copy, nonatomic) NSString *_Nullable imageUrl;
4053 @property(assign, nonatomic) int fps;
4054 @property(assign, nonatomic) AgoraVideoMirrorMode mirrorMode;
4055 @end
4056 
4060 __attribute__((visibility("default"))) @interface AgoraSpatialAudioParams : NSObject
4070 @property(assign, nonatomic) double speaker_azimuth;
4078 @property(assign, nonatomic) double speaker_elevation;
4083 @property(assign, nonatomic) double speaker_distance;
4090 @property(assign, nonatomic) NSInteger speaker_orientation;
4096 @property(assign, nonatomic) BOOL enable_blur;
4105 @property(assign, nonatomic) BOOL enable_air_absorb;
4119 @property(assign, nonatomic) double speaker_attenuation;
4137 @property(assign, nonatomic) BOOL enable_doppler;
4138 @end
4139 
4140 NS_SWIFT_NAME(AgoraEchoTestConfiguration)
4144 __attribute__((visibility("default"))) @interface AgoraEchoTestConfiguration : NSObject
4149 @property(strong, nonatomic) VIEW_CLASS* _Nullable view NS_SWIFT_NAME(view);
4155 @property(assign, nonatomic) BOOL enableAudio NS_SWIFT_NAME(enableAudio);
4161 @property(assign, nonatomic) BOOL enableVideo NS_SWIFT_NAME(enableVideo);
4169 @property(copy, nonatomic) NSString* _Nullable token NS_SWIFT_NAME(token);
4175 @property(copy, nonatomic) NSString* _Nonnull channelId NS_SWIFT_NAME(channelId);
4183 @property(assign, nonatomic) NSInteger intervalInSeconds NS_SWIFT_NAME(intervalInSeconds);
4184 @end
4185 
4189 __attribute__((visibility("default"))) @interface AgoraMediaRecorderInfo : NSObject
4190 
4194 @property(copy, nonatomic) NSString* _Nonnull recorderFileName;
4198 @property(assign, nonatomic) NSUInteger durationMs;
4202 @property(assign, nonatomic) NSUInteger fileSize;
4203 
4204 @end
4205 
4209 __attribute__((visibility("default"))) @interface AgoraMediaRecorderConfiguration : NSObject
4210 
4218 @property(copy, nonatomic) NSString* _Nonnull storagePath;
4222 @property(assign, nonatomic) AgoraMediaRecorderContainerFormat containerFormat;
4226 @property(assign, nonatomic) AgoraMediaRecorderStreamType streamType;
4230 @property(assign, nonatomic) NSUInteger maxDurationMs;
4236 @property(assign, nonatomic) NSUInteger recorderInfoUpdateInterval;
4243 @property(assign, nonatomic) NSUInteger width;
4251 @property(assign, nonatomic) NSUInteger height;
4259 @property(assign, nonatomic) NSUInteger fps;
4266 @property(assign, nonatomic) NSUInteger sample_rate;
4274 @property(assign, nonatomic) NSUInteger channel_num;
4280 @property(assign, nonatomic) AgoraVideoSourceType videoSourceType;
4281 @end
4282 
4283 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
4284 
4288 __attribute__((visibility("default"))) @interface AgoraScreenCaptureSourceInfo : NSObject
4292 @property(assign, nonatomic) AgoraScreenCaptureSourceType type;
4296 @property(assign, nonatomic) CGWindowID sourceId;
4300 @property(copy, nonatomic) NSString* _Nonnull sourceName;
4304 @property(strong, nonatomic) NSImage* _Nonnull thumbImage;
4308 @property(strong, nonatomic) NSImage* _Nullable iconImage;
4312 @property(copy, nonatomic) NSString* _Nonnull processPath;
4316 @property(copy, nonatomic) NSString* _Nonnull sourceTitle;
4321 @property(assign, nonatomic) CGRect position;
4327 @property(assign, nonatomic) BOOL primaryMonitor;
4328 
4329 @end
4330 
4331 #endif
4332 
4333 NS_SWIFT_NAME(AgoraExtensionInfo) __attribute__((visibility("default"))) @interface AgoraExtensionInfo : NSObject
4334 
4340 @property (assign, nonatomic) NSUInteger remoteUid NS_SWIFT_NAME(remoteUid);
4344 @property (assign, nonatomic) NSUInteger localUid NS_SWIFT_NAME(localUid);
4345 
4349 @property (assign, nonatomic) AgoraMediaSourceType sourceType NS_SWIFT_NAME(sourceType);
4350 
4362 @property (copy, nonatomic) NSString *_Nonnull channelId NS_SWIFT_NAME(channelId);
4363 
4364 @end
4365 
4369 NS_SWIFT_NAME(AgoraAudioTrackConfig) __attribute__((visibility("default"))) @interface AgoraAudioTrackConfig : NSObject
4375 @property (assign, nonatomic) BOOL enableLocalPlayback NS_SWIFT_NAME(enableLocalPlayback);
4383 @property (assign, nonatomic) BOOL enableAudioProcessing NS_SWIFT_NAME(enableAudioProcessing);
4384 @end
4385 
4389 __attribute__((visibility("default"))) @interface AgoraVideoLayout: NSObject
4393 @property(copy, nonatomic) NSString* _Nonnull channelId NS_SWIFT_NAME(channelId);
4397 @property (assign, nonatomic) NSUInteger uid NS_SWIFT_NAME(uid);
4401 @property(copy, nonatomic) NSString* _Nullable strUid NS_SWIFT_NAME(strUid);
4409 @property (assign, nonatomic) NSUInteger videoState NS_SWIFT_NAME(videoState);
4415 @property (assign, nonatomic) NSUInteger x NS_SWIFT_NAME(x);
4421 @property (assign, nonatomic) NSUInteger y NS_SWIFT_NAME(y);
4425 @property (assign, nonatomic) NSUInteger width NS_SWIFT_NAME(width);
4429 @property (assign, nonatomic) NSUInteger height NS_SWIFT_NAME(height);
4430 @end
4431 
4435 __attribute__((visibility("default"))) @interface AgoraVideoLayoutInfo: NSObject
4439 @property (assign, nonatomic) NSUInteger width NS_SWIFT_NAME(width);
4443 @property (assign, nonatomic) NSUInteger height NS_SWIFT_NAME(height);
4447 @property (assign, nonatomic) NSUInteger layoutCount NS_SWIFT_NAME(layoutCount);
4451 @property(copy, nonatomic) NSArray<AgoraVideoLayout *> *_Nullable layoutList NS_SWIFT_NAME(layoutList);
4452 @end
4453 
4457 NS_SWIFT_NAME(AgoraVideoRenderingTracingInfo) __attribute__((visibility("default"))) @interface AgoraVideoRenderingTracingInfo : NSObject
4463 @property (assign, nonatomic) NSInteger elapsedTime NS_SWIFT_NAME(elapsedTime);
4471 @property (assign, nonatomic) NSInteger start2JoinChannel NS_SWIFT_NAME(start2JoinChannel);
4476 @property (assign, nonatomic) NSInteger join2JoinSuccess NS_SWIFT_NAME(join2JoinSuccess);
4491 @property (assign, nonatomic) NSInteger joinSuccess2RemoteJoined NS_SWIFT_NAME(joinSuccess2RemoteJoined);
4506 @property (assign, nonatomic) NSInteger remoteJoined2SetView NS_SWIFT_NAME(remoteJoined2SetView);
4521 @property (assign, nonatomic) NSInteger remoteJoined2UnmuteVideo NS_SWIFT_NAME(remoteJoined2UnmuteVideo);
4536 @property (assign, nonatomic) NSInteger remoteJoined2PacketReceived NS_SWIFT_NAME(remoteJoined2PacketReceived);
4537 
4538 @end
4539 
4543 NS_SWIFT_NAME(AgoraMetadata) __attribute__((visibility("default"))) @interface AgoraMetadata : NSObject
4547 @property (copy, nonatomic) NSString* _Nonnull channelId NS_SWIFT_NAME(channelId);
4553 @property (assign, nonatomic) NSInteger uid NS_SWIFT_NAME(uid);
4557 @property (strong, nonatomic) NSData* _Nonnull data NS_SWIFT_NAME(data);
4561 @property (assign, nonatomic) NSTimeInterval timestamp NS_SWIFT_NAME(timestamp);
4562 @end
4563 
4569 __attribute__((visibility("default"))) @interface AgoraPathStats : NSObject
4570 
4575 @property (assign, nonatomic) AgoraMultipathType pathType;
4576 
4581 @property (assign, nonatomic) NSUInteger txKBitRate;
4582 
4587 @property (assign, nonatomic) NSUInteger rxKBitRate;
4588 @end
4589 
4595 __attribute__((visibility("default"))) @interface AgoraMultipathStats : NSObject
4599 @property (assign, nonatomic) NSUInteger lanRxBytes;
4603 @property (assign, nonatomic) NSUInteger lanTxBytes;
4607 @property (assign, nonatomic) NSUInteger wifiRxBytes;
4611 @property (assign, nonatomic) NSUInteger wifiTxBytes;
4615 @property (assign, nonatomic) NSUInteger mobileRxBytes;
4619 @property (assign, nonatomic) NSUInteger mobileTxBytes;
4623 @property (assign, nonatomic) NSUInteger activePathNum;
4627 @property (copy, nonatomic) NSArray<AgoraPathStats *> *_Nullable pathStats NS_SWIFT_NAME(pathStats);
4628 @end
AgoraRecorderStreamInfo
Information about the audio and video streams to be recorded.
Definition: AgoraObjects.h:3836
AgoraMediaSource
Information related to the media file to be played and the playback scenario configurations.
Definition: AgoraObjects.h:79
AgoraLowlightEnhanceLevel
AgoraLowlightEnhanceLevel
The low-light enhancement level.
Definition: AgoraEnumerates.h:3041
AgoraFacePositionInfo
The information of the detected human face.
Definition: AgoraObjects.h:3997
AgoraRtcMediaPlayerCustomSourceOnReadCallback
int(^ AgoraRtcMediaPlayerCustomSourceOnReadCallback)(id< AgoraRtcMediaPlayerProtocol > _Nonnull playerKit, unsigned char *_Nullable buffer, int bufferSize)
Occurs when the SDK reads the media resource data.
Definition: AgoraObjects.h:44
AgoraLocalProxyMode
AgoraLocalProxyMode
Connection mode with Agora private media server.
Definition: AgoraEnumerates.h:4911
AgoraMediaSource::isLiveSource
BOOL isLiveSource
Definition: AgoraObjects.h:148
AgoraDirectCdnStreamingStats
The statistics of the current CDN streaming.
Definition: AgoraObjects.h:268
AgoraAudioSourceType
AgoraAudioSourceType
The audio source type.
Definition: AgoraEnumerates.h:4071
AgoraDegradationPreference
AgoraDegradationPreference
Video degradation preferences when the bandwidth is a constraint.
Definition: AgoraEnumerates.h:2647
AgoraCameraDirection
AgoraCameraDirection
The camera direction.
Definition: AgoraEnumerates.h:3624
AgoraMediaSource::playerOnReadCallback
AgoraRtcMediaPlayerCustomSourceOnReadCallback _Nonnull playerOnReadCallback
Definition: AgoraObjects.h:157
AgoraMediaSource::startPos
NSUInteger startPos
Definition: AgoraObjects.h:94
AgoraEncodedVideoTrackOptions
Definition: AgoraObjects.h:345
AgoraVideoRenderingTracingInfo
Indicators during video frame rendering progress.
Definition: AgoraObjects.h:4458
AgoraScreenAudioParameters
The audio configuration for the shared screen stream.
Definition: AgoraObjects.h:3477
AgoraRtcChannelMediaOptions
The channel media options.
Definition: AgoraObjects.h:383
AgoraAudioScenario
AgoraAudioScenario
The audio scenarios.
Definition: AgoraEnumerates.h:1824
AgoraStreamLayerConfig
Configures the parameters of a specific layer in multi-quality video streams.
Definition: AgoraObjects.h:3596
AgoraRhythmPlayerConfig
The metronome configuration.
Definition: AgoraObjects.h:3980
AgoraBeautyOptions
Image enhancement options.
Definition: AgoraObjects.h:2957
AgoraVideoCodecCapInfo
The codec capability of the SDK.
Definition: AgoraObjects.h:1429
AgoraVideoSubscriptionOptions
Video subscription options.
Definition: AgoraObjects.h:3815
AgoraMultipathType
AgoraMultipathType
Network path types used in multipath transmission.
Definition: AgoraEnumerates.h:5491
AgoraOutputVideoFrame
Configurations of the video frame.
Definition: AgoraObjects.h:2599
AgoraAudioTrackConfig
The configuration of custom audio tracks.
Definition: AgoraObjects.h:4370
AgoraClientRole
AgoraClientRole
The user role in the interactive live streaming.
Definition: AgoraEnumerates.h:711
AgoraScreenCaptureParameters2
Screen sharing configurations.
Definition: AgoraObjects.h:3489
AgoraExperiencePoorReason
AgoraExperiencePoorReason
Reasons why the QoE of the local user when receiving a remote audio stream is poor.
Definition: AgoraEnumerates.h:1140
AgoraMediaSource::uri
NSString *_Nullable uri
Definition: AgoraObjects.h:90
AgoraVideoDenoiserMode
AgoraVideoDenoiserMode
Video noise reduction mode.
Definition: AgoraEnumerates.h:2984
AgoraContentInspectModule
AgoraContentInspectModule class, a structure used to configure the frequency of video screenshot and ...
Definition: AgoraObjects.h:3723
ScreenColorType
ScreenColorType
Screen color type.
Definition: AgoraEnumerates.h:3123
AgoraMediaPlayerSrcInfo
Information about the video bitrate of the media resource being played.
Definition: AgoraObjects.h:250
AgoraFaceShapeAreaOptions
Filter effect options.
Definition: AgoraObjects.h:2994
AdvancedConfigInfo
Advanced options for the Local Access Point.
Definition: AgoraObjects.h:3930
AgoraMediaSource::url
NSString *_Nullable url
Definition: AgoraObjects.h:86
AgoraVideoLayout
Layout information of a specific sub-video stream within the mixed stream.
Definition: AgoraObjects.h:4390
WatermarkBufferFormat
WatermarkBufferFormat
The data format of the watermark buffer.
Definition: AgoraEnumerates.h:5392
AgoraLighteningContrastLevel
AgoraLighteningContrastLevel
The contrast level.
Definition: AgoraEnumerates.h:2758
AgoraEnumerates.h
AgoraColorMatrixID
AgoraColorMatrixID
Definition: AgoraEnumerates.h:2512
AgoraVideoFrame
The external video frame.
Definition: AgoraObjects.h:2158
AgoraSimulcastStreamConfig
The configuration of the low-quality video stream.
Definition: AgoraObjects.h:3568
AgoraLocalAudioMixerConfiguration
The configurations for mixing the local audio.
Definition: AgoraObjects.h:3281
AgoraRtcConnection::channelId
NSString *_Nonnull channelId
Definition: AgoraObjects.h:3802
AgoraVideoModulePosition
AgoraVideoModulePosition
The frame position of the video observer.
Definition: AgoraEnumerates.h:5220
AgoraScreenCaptureParameters
Screen sharing configurations.
Definition: AgoraObjects.h:3327
AgoraAudioRawFrameOperationMode
AgoraAudioRawFrameOperationMode
The use mode of the audio data.
Definition: AgoraEnumerates.h:1915
AgoraMediaRecorderInfo
Recording file information.
Definition: AgoraObjects.h:4190
AgoraSegmentationProperty
Processing properties for background images.
Definition: AgoraObjects.h:3162
AgoraSimulcastConfig
Configure video streams of different quality levels.
Definition: AgoraObjects.h:3618
AgoraVideoDenoiserLevel
AgoraVideoDenoiserLevel
Video noise reduction level.
Definition: AgoraEnumerates.h:3001
AgoraRtcRemoteVideoStats
Statistics of the remote video stream.
Definition: AgoraObjects.h:930
AgoraVideoViewSetupMode
AgoraVideoViewSetupMode
Setting mode of the view.
Definition: AgoraEnumerates.h:4962
AgoraMediaSource::autoPlay
BOOL autoPlay
Definition: AgoraObjects.h:102
AgoraContentInspectConfig
Screenshot and upload configuration.
Definition: AgoraObjects.h:3745
AgoraAudioEncodedFrameDelegateConfig
Observer settings for the encoded audio.
Definition: AgoraObjects.h:3708
AgoraTranscodingVideoStream
The video streams for local video mixing.
Definition: AgoraObjects.h:3188
AgoraDirectCdnStreamingMediaOptions
The media setting options for the host.
Definition: AgoraObjects.h:297
AgoraAudioCodecType
AgoraAudioCodecType
The codec type of audio.
Definition: AgoraEnumerates.h:988
AgoraColorPrimaryID
AgoraColorPrimaryID
Definition: AgoraEnumerates.h:2486
AgoraAudioEncodedFrameDelegatePosition
AgoraAudioEncodedFrameDelegatePosition
Audio frame observer position.
Definition: AgoraEnumerates.h:970
AgoraRtcMediaPlayerProtocol-p
Definition: AgoraRtcMediaPlayerProtocol.h:24
AgoraRtcConnection::localUid
NSUInteger localUid
Definition: AgoraObjects.h:3807
AgoraVideoDenoiserOptions
Video noise reduction options.
Definition: AgoraObjects.h:3058
AgoraLastmileProbeConfig
Configurations of the last-mile network test.
Definition: AgoraObjects.h:742
AgoraAudienceLatencyLevelType
AgoraAudienceLatencyLevelType
The latency level of an audience member in interactive live streaming. This enum takes effect only wh...
Definition: AgoraEnumerates.h:726
AgoraLastmileProbeResultState
AgoraLastmileProbeResultState
The status of the last-mile probe test.
Definition: AgoraEnumerates.h:1167
AgoraFocalLength
AgoraFocalLength
The camera focal length types.
Definition: AgoraEnumerates.h:3638
AgoraMultipathStats
Aggregates statistics of each network path in multipath transmission.
Definition: AgoraObjects.h:4596
AgoraRtcMediaStreamInfo
The detailed information of the media stream.
Definition: AgoraObjects.h:3637
AgoraFaceShapeArea
AgoraFaceShapeArea
Chooses the specific facial areas that need to be adjusted.
Definition: AgoraEnumerates.h:2778
AgoraChannelMediaRelayInfo
Channel media information.
Definition: AgoraObjects.h:2863
AgoraMediaSource::enableMultiAudioTrack
BOOL enableMultiAudioTrack
Definition: AgoraObjects.h:126
WatermarkOptions
Watermark image configurations.
Definition: AgoraObjects.h:1689
AgoraVideoSourceType
AgoraVideoSourceType
The type of the video source.
Definition: AgoraEnumerates.h:4109
AgoraAudioFrame
Raw audio data.
Definition: AgoraObjects.h:2419
AgoraMediaRecorderStreamType
AgoraMediaRecorderStreamType
The recording content.
Definition: AgoraEnumerates.h:5095
WatermarkBuffer
Configures the format, size, and pixel buffer of the watermark image.
Definition: AgoraObjects.h:1730
AgoraAudioEncodingType
AgoraAudioEncodingType
Audio encoding type.
Definition: AgoraEnumerates.h:1009
AgoraMediaSource::enableCache
BOOL enableCache
Definition: AgoraObjects.h:117
AgoraAreaCodeType
AgoraAreaCodeType
The region for connection, which is the region where the server the SDK connects to is located.
Definition: AgoraEnumerates.h:3416
VIEW_CLASS
UIView VIEW_CLASS
Definition: AgoraObjects.h:14
AgoraChannelProfile
AgoraChannelProfile
The channel profile.
Definition: AgoraEnumerates.h:680
COLOR_CLASS
UIColor COLOR_CLASS
Definition: AgoraObjects.h:15
AgoraBlurDegree
AgoraBlurDegree
The degree of blurring applied to the custom background image.
Definition: AgoraEnumerates.h:3088
AgoraAudioSpectrumInfo
Audio spectrum information of the remote user.
Definition: AgoraObjects.h:3692
AgoraLeaveChannelOptions
The options for leaving a channel.
Definition: AgoraObjects.h:2567
AgoraDataStreamConfig
The configurations for the data stream.
Definition: AgoraObjects.h:2834
AgoraVideoEncodedFrameDepth
AgoraVideoEncodedFrameDepth
Definition: AgoraEnumerates.h:595
AgoraLowlightEnhanceMode
AgoraLowlightEnhanceMode
The low-light enhancement mode.
Definition: AgoraEnumerates.h:3023
AgoraRtcRemoteAudioStats
Audio statistics of the remote user.
Definition: AgoraObjects.h:1071
AgoraUserInfo
The information of the user.
Definition: AgoraObjects.h:2738
AgoraVideoCodecCapabilityLevel
AgoraVideoCodecCapabilityLevel
The level of the codec capability.
Definition: AgoraEnumerates.h:512
AgoraRtcEngineConfig
Configurations for the AgoraRtcEngineConfig instance.
Definition: AgoraObjects.h:2335
AgoraMediaStreamType
AgoraMediaStreamType
The type of the media stream.
Definition: AgoraEnumerates.h:4257
AgoraImageTrackOptions
Image configurations.
Definition: AgoraObjects.h:4044
AgoraColorSpace
Definition: AgoraObjects.h:2140
AgoraVideoRenderMode
AgoraVideoRenderMode
Video display modes.
Definition: AgoraEnumerates.h:1256
AgoraLastmileProbeOneWayResult
Results of the uplink or downlink last-mile network test.
Definition: AgoraObjects.h:771
AgoraVideoQualityAdaptIndication
AgoraVideoQualityAdaptIndication
Quality change of the local video in terms of target frame rate and target bit rate since last count.
Definition: AgoraEnumerates.h:1238
AgoraContentInspectType
AgoraContentInspectType
The type of video content moderation module.
Definition: AgoraEnumerates.h:4739
AgoraEncryptionConfig
Built-in encryption configurations.
Definition: AgoraObjects.h:2704
AgoraColorRangeID
AgoraColorRangeID
Definition: AgoraEnumerates.h:2526
AgoraEncodedVideoFrameInfo
Information about externally encoded video frames.
Definition: AgoraObjects.h:3855
AgoraRtcMediaPlayerCustomSourceOnSeekCallback
long long(^ AgoraRtcMediaPlayerCustomSourceOnSeekCallback)(id< AgoraRtcMediaPlayerProtocol > _Nonnull playerKit, long long offset, int whence)
Occurs when the SDK seeks the media resource data.
Definition: AgoraObjects.h:72
AgoraMixedAudioStream
The source of the audio streams that are mixed locally.
Definition: AgoraObjects.h:3243
AgoraChannelMediaRelayConfiguration
Configuration of cross channel media relay.
Definition: AgoraObjects.h:2886
AgoraVideoLayoutInfo
Detailed layout information of a mixed video stream.
Definition: AgoraObjects.h:4436
AgoraMetadata
Media metadata.
Definition: AgoraObjects.h:4544
AgoraVideoStreamType
AgoraVideoStreamType
The type of video streams.
Definition: AgoraEnumerates.h:1193
AgoraVideoCodecTypeForStream
AgoraVideoCodecTypeForStream
The codec type of the output video.
Definition: AgoraEnumerates.h:605
AgoraEchoTestConfiguration
The configuration of the audio and video call loop test.
Definition: AgoraObjects.h:4145
AgoraMediaFilterEventDelegate-p
Definition: AgoraMediaFilterEventDelegate.h:35
AgoraFaceShapeStyle
AgoraFaceShapeStyle
The facial enhancement style options.
Definition: AgoraEnumerates.h:2963
AgoraAdvancedAudioOptions
The advanced options for audio.
Definition: AgoraObjects.h:4032
AgoraVideoCodecCapLevels
The level of the codec capability.
Definition: AgoraObjects.h:1393
AgoraRtcAudioVolumeInfo
The volume information of users.
Definition: AgoraObjects.h:1192
AgoraVideoHwEncoderAccelerating
AgoraVideoHwEncoderAccelerating
The local video encoding acceleration type.
Definition: AgoraEnumerates.h:577
AgoraAlphaStitchMode
AgoraAlphaStitchMode
The relative position of alphaBuffer and video frames.
Definition: AgoraEnumerates.h:5348
AgoraMediaPlayerCacheStatistics
Statistics about the media files being cached.
Definition: AgoraObjects.h:174
AgoraAudioProcessChannels
AgoraAudioProcessChannels
The number of channels for audio preprocessing.
Definition: AgoraEnumerates.h:5010
AgoraLocalAccessPointConfiguration
Local Access Point configuration.
Definition: AgoraObjects.h:3941
AgoraFocalLengthInfo
Focal length information supported by the camera, including the camera direction and focal length typ...
Definition: AgoraObjects.h:1412
AgoraEncodingPreference
AgoraEncodingPreference
Video encoder preference.
Definition: AgoraEnumerates.h:2689
AgoraRecorderStreamType
AgoraRecorderStreamType
Type of video streams to be recorded.
Definition: AgoraEnumerates.h:5121
AgoraFaceShapeBeautyOptions
The facial enhancement style options.
Definition: AgoraObjects.h:3010
AgoraThreadPriorityType
AgoraThreadPriorityType
Definition: AgoraEnumerates.h:4709
AgoraScreenVideoParameters
The video configuration for the shared screen stream.
Definition: AgoraObjects.h:3448
AgoraVirtualBackgroundSource
The custom background.
Definition: AgoraObjects.h:3120
AgoraMediaPlayerPlaybackStats
The information of the media file being played.
Definition: AgoraObjects.h:194
AgoraLiveStreamAdvancedFeature
The configuration for advanced features of the RTMP or RTMPS streaming with transcoding.
Definition: AgoraObjects.h:1633
AgoraRtcConnection
Contains connection information.
Definition: AgoraObjects.h:3788
AgoraSnapshotConfig
The snapshot configuration.
Definition: AgoraObjects.h:3773
AgoraLowlightEnhanceOptions
The low-light enhancement options.
Definition: AgoraObjects.h:3075
AgoraExperienceQuality
AgoraExperienceQuality
The Quality of Experience (QoE) of the local user when receiving a remote audio stream.
Definition: AgoraEnumerates.h:1126
__deprecated
#define __deprecated
Definition: AgoraBase.h:74
AgoraAudioCodecProfileType
AgoraAudioCodecProfileType
Self-defined audio codec profile.
Definition: AgoraEnumerates.h:1615
AgoraVideoContentHint
AgoraVideoContentHint
The content hint for screen sharing.
Definition: AgoraEnumerates.h:4690
AgoraMediaSource::isAgoraSource
BOOL isAgoraSource
Definition: AgoraObjects.h:138
AgoraLocalTranscoderConfiguration
The configuration of the video mixing on the local client.
Definition: AgoraObjects.h:3302
AgoraRtcVideoCanvas
Attributes of the video canvas object.
Definition: AgoraObjects.h:663
AgoraEncodedAudioFrameInfo
Audio information after encoding.
Definition: AgoraObjects.h:2521
AgoraVirtualBackgroundSourceType
AgoraVirtualBackgroundSourceType
The custom background.
Definition: AgoraEnumerates.h:3060
SegModelType
SegModelType
The type of algorithms to user for background processing.
Definition: AgoraEnumerates.h:3109
AgoraMediaSource::playerOnSeekCallback
AgoraRtcMediaPlayerCustomSourceOnSeekCallback _Nonnull playerOnSeekCallback
Definition: AgoraObjects.h:166
AgoraAudioRecordingConfiguration
Recording configurations.
Definition: AgoraObjects.h:3520
AgoraColorTransferID
AgoraColorTransferID
Definition: AgoraEnumerates.h:2498
LogUploadServerInfo
Configuration information of the log server.
Definition: AgoraObjects.h:3906
AgoraVideoFrameType
AgoraVideoFrameType
The video frame type.
Definition: AgoraEnumerates.h:2459
AgoraColorEnhanceOptions
The color enhancement options.
Definition: AgoraObjects.h:3092
AgoraMediaRecorderConfiguration
Audio and video stream recording configuration.
Definition: AgoraObjects.h:4210
AgoraMediaRecorderContainerFormat
AgoraMediaRecorderContainerFormat
Format of the recording file.
Definition: AgoraEnumerates.h:5112
AgoraLogConfig
Configuration of Agora SDK log files.
Definition: AgoraObjects.h:2306
AgoraPathStats
Statistical information about a specific network path.
Definition: AgoraObjects.h:4570
AgoraMultipathMode
AgoraMultipathMode
The transmission mode of data over multiple network paths.
Definition: AgoraEnumerates.h:5473
AgoraClientRoleOptions
Setting of user role properties.
Definition: AgoraObjects.h:2754
AgoraMediaSourceType
AgoraMediaSourceType
Media source type.
Definition: AgoraEnumerates.h:4005
WatermarkConfig
Used to configure watermark-related information.
Definition: AgoraObjects.h:1758
AgoraAudioFileRecordingType
AgoraAudioFileRecordingType
Recording content. Set in startAudioRecordingWithConfig:.
Definition: AgoraEnumerates.h:952
AgoraRtcLocalAudioStats
Local audio statistics.
Definition: AgoraObjects.h:1026
AgoraCameraCapturerConfiguration
The camera capturer preference.
Definition: AgoraObjects.h:2767
AgoraCompressionPreference
AgoraCompressionPreference
Compression preference for video encoding.
Definition: AgoraEnumerates.h:2711
IMAGE_CLASS
UIImage IMAGE_CLASS
Definition: AgoraObjects.h:16
AgoraAdvancedVideoOptions
Advanced options for video encoding.
Definition: AgoraObjects.h:1370
AgoraExtensionInfo
Definition: AgoraObjects.h:4334
WatermarkType
WatermarkType
Type of watermark source.
Definition: AgoraEnumerates.h:5376
AgoraMediaPlayerUpdatedInfo
Information related to the media player.
Definition: AgoraObjects.h:216
AgoraLogLevel
AgoraLogLevel
The output log level of the SDK.
Definition: AgoraEnumerates.h:3388
AgoraScreenCaptureSourceType
AgoraScreenCaptureSourceType
The type of the shared target. Set in AgoraScreenCaptureSourceInfo.
Definition: AgoraEnumerates.h:5134
AgoraLastmileProbeResult
Results of the uplink and downlink last-mile network tests.
Definition: AgoraObjects.h:789
AgoraChannelStats
Statistics of a call session.
Definition: AgoraObjects.h:1234
AgoraCaptureBrightnessLevelType
AgoraCaptureBrightnessLevelType
The brightness level of the video image captured by the local camera.
Definition: AgoraEnumerates.h:740