Agora RTC Objective-C API Reference Refactor

AgoraRtcEngineKit.h
Go to the documentation of this file.
1 //
2 // AgoraRtcEngineKit.h
3 // AgoraRtcEngineKit
4 //
5 // Copyright (c) 2018 Agora. All rights reserved.
6 //
7
8 #import <Foundation/Foundation.h>
9 #import "AgoraConstants.h"
10 #import "AgoraObjects.h"
11 #import "AgoraRtcEngineDelegate2.h"
12 #import "AgoraBaseDelegate.h"
13 #import "AgoraRtcMediaPlayerProtocol.h"
14 #import "AgoraH265TranscoderProtocol.h"
15
20 @class AgoraRtcEngineKit;
21 @class AgoraMediaRecorder;
22
26 @protocol AgoraAudioFrameDelegate <NSObject>
27 @optional
28
44 - (BOOL)onRecordAudioFrame:(AgoraAudioFrame* _Nonnull)frame channelId:(NSString * _Nonnull)channelId NS_SWIFT_NAME(onRecordAudioFrame(_:channelId:));
45
61 - (BOOL)onPlaybackAudioFrame:(AgoraAudioFrame* _Nonnull)frame channelId:(NSString * _Nonnull)channelId NS_SWIFT_NAME(onPlaybackAudioFrame(_:channelId:));
62
78 - (BOOL)onMixedAudioFrame:(AgoraAudioFrame* _Nonnull)frame channelId:(NSString * _Nonnull)channelId NS_SWIFT_NAME(onMixedAudioFrame(_:channelId:));
79
87 - (BOOL)onEarMonitoringAudioFrame:(AgoraAudioFrame* _Nonnull)frame NS_SWIFT_NAME(onEarMonitoringAudioFrame(_:));
88
105 - (BOOL)onPlaybackAudioFrameBeforeMixing:(AgoraAudioFrame* _Nonnull)frame channelId:(NSString * _Nonnull)channelId uid:(NSUInteger)uid NS_SWIFT_NAME(onPlaybackAudioFrame(beforeMixing:channelId:uid:));
106
122 - (AgoraAudioFramePosition)getObservedAudioFramePosition NS_SWIFT_NAME(getObservedAudioFramePosition());
123
143 - (AgoraAudioParams* _Nonnull)getMixedAudioParams NS_SWIFT_NAME(getMixedAudioParams());
144
166 - (AgoraAudioParams* _Nonnull)getRecordAudioParams NS_SWIFT_NAME(getRecordAudioParams());
167
188 - (AgoraAudioParams* _Nonnull)getPlaybackAudioParams NS_SWIFT_NAME(getPlaybackAudioParams());
189
211 - (AgoraAudioParams* _Nonnull)getEarMonitoringAudioParams NS_SWIFT_NAME(getEarMonitoringAudioParams());
212
213 @end
214
215 @protocol AgoraAudioEncodedFrameDelegate <NSObject>
216 @required
217
221 - (void)onRecordEncodedAudioFrame:(NSData* _Nonnull)frameData info:(AgoraEncodedAudioFrameInfo* _Nonnull)info NS_SWIFT_NAME(onRecordEncodedAudioFrame(_:info:));
222
226 - (void)onPlaybackEncodedAudioFrame:(NSData* _Nonnull)frameData info:(AgoraEncodedAudioFrameInfo* _Nonnull)info NS_SWIFT_NAME(onPlaybackEncodedAudioFrame(_:info:));
227
231 - (void)onMixedEncodedAudioFrame:(NSData* _Nonnull)frameData info:(AgoraEncodedAudioFrameInfo* _Nonnull)info NS_SWIFT_NAME(onMixedEncodedAudioFrame(_:info:));
232 @end
233
234 @protocol AgoraEncodedVideoFrameDelegate <NSObject>
235 @optional
236
241 - (BOOL)onEncodedVideoFrameReceived:(NSData * _Nonnull )videoData length:(size_t)length info:(AgoraEncodedVideoFrameInfo * _Nonnull)videoFrameInfo NS_SWIFT_NAME(onEncodedVideoFrameReceived(_:length:info:));
242 @end
243
244 @protocol AgoraVideoFrameDelegate <NSObject>
245 @optional
246
263 - (BOOL)onCaptureVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame sourceType:(AgoraVideoSourceType)sourceType;
264
282 - (BOOL)onPreEncodeVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame sourceType:(AgoraVideoSourceType)sourceType;
283
284
285 - (BOOL)onTranscodedVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame NS_SWIFT_NAME(onTranscodedVideoFrame(_:));
286
304 - (BOOL)onRenderVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame uid:(NSUInteger)uid channelId:(NSString * _Nonnull)channelId NS_SWIFT_NAME(onRenderVideoFrame(_:uid:channelId:));
305
325 - (BOOL)onMediaPlayerVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame mediaPlayerId:(NSInteger)mediaPlayerId NS_SWIFT_NAME(onMediaPlayerVideoFrame(_:mediaPlayerId:));
326
331 - (BOOL)getRotationApplied NS_SWIFT_NAME(getRotationApplied());
332
339 - (BOOL)getMirrorApplied NS_SWIFT_NAME(getMirrorApplied());
340
345 - (AgoraVideoFrameProcessMode)getVideoFrameProcessMode NS_SWIFT_NAME(getVideoFrameProcessMode());
346
351 - (AgoraVideoFormat)getVideoFormatPreference NS_SWIFT_NAME(getVideoFormatPreference());
352
370 - (AgoraVideoFramePosition)getObservedFramePosition NS_SWIFT_NAME(getObservedFramePosition());
371
372
373 /* Unavailable Delegate Methods */
374 #if TARGET_OS_IPHONE
375 - (BOOL)onCaptureVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame NS_SWIFT_NAME(onCapture(_:)) __attribute__((availability(ios,deprecated=7_0,message="Use onCaptureVideoFrame:sourceType: instead.")));
376 - (BOOL)onSecondaryCameraCaptureVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame NS_SWIFT_NAME(onSecondaryCameraCapture(_:)) __attribute__((availability(ios,deprecated=7_0,message="Use onCaptureVideoFrame:sourceType: instead.")));
377 - (BOOL)onScreenCaptureVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame NS_SWIFT_NAME(onScreenCapture(_:)) __attribute__((availability(ios,deprecated=7_0,message="Use onCaptureVideoFrame:sourceType: instead.")));
378 - (BOOL)onSecondaryScreenCaptureVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame NS_SWIFT_NAME(onSecondaryScreenCapture(_:)) __attribute__((availability(ios,deprecated=7_0,message="Use onCaptureVideoFrame:sourceType: instead.")));
379 - (BOOL)onPreEncodeVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame NS_SWIFT_NAME(onPreEncode(_:)) __attribute__((availability(ios,deprecated=7_0,message="Use onPreEncodeVideoFrame:sourceType: instead.")));
380 - (BOOL)onPreEncodeScreenVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame NS_SWIFT_NAME(onPreEncodeScreenVideoFrame(_:)) __attribute__((availability(ios,deprecated=7_0,message="Use onPreEncodeVideoFrame:sourceType: instead.")));
381 #endif
382
383 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
384 - (BOOL)onCaptureVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame NS_SWIFT_NAME(onCapture(_:)) __attribute__((availability(macos,deprecated=10_9,message="Use onCaptureVideoFrame:sourceType: instead.")));
385 - (BOOL)onSecondaryCameraCaptureVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame NS_SWIFT_NAME(onSecondaryCameraCapture(_:)) __attribute__((availability(macos,deprecated=10_9,message="Use onCaptureVideoFrame:sourceType: instead.")));
386 - (BOOL)onScreenCaptureVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame NS_SWIFT_NAME(onScreenCapture(_:)) __attribute__((availability(macos,deprecated=10_9,message="Use onCaptureVideoFrame:sourceType: instead.")));
387 - (BOOL)onSecondaryScreenCaptureVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame NS_SWIFT_NAME(onSecondaryScreenCapture(_:)) __attribute__((availability(macos,deprecated=10_9,message="Use onCaptureVideoFrame:sourceType: instead.")));
388 - (BOOL)onPreEncodeVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame NS_SWIFT_NAME(onPreEncode(_:)) __attribute__((availability(macos,deprecated=10_9,message="Use onPreEncodeVideoFrame:sourceType: instead.")));
389 - (BOOL)onPreEncodeScreenVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame NS_SWIFT_NAME(onPreEncodeScreenVideoFrame(_:)) __attribute__((availability(macos,deprecated=10_9,message="Use onPreEncodeVideoFrame:sourceType: instead.")));
390 #endif
391
392 @end
393
397 @protocol AgoraFaceInfoDelegate <NSObject>
398 @optional
399
407 - (BOOL)onFaceInfo:(NSString* _Nonnull)outFaceInfo NS_SWIFT_NAME(onFaceInfo(_:));
408
409 @end
410
411 @protocol AgoraRtcMediaPlayerDelegate <NSObject>
412
413 @optional
414
415
424 - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit
425 didChangedToState:(AgoraMediaPlayerState)state
426 error:(AgoraMediaPlayerError)error NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didChangedTo:error:));
427
437 - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit
438 didChangedToPosition:(NSInteger)position NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didChangedTo:));
439
447 - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit
448 didOccurEvent:(AgoraMediaPlayerEvent)eventCode
449 elapsedTime:(NSInteger)elapsedTime
450 message:(NSString *_Nullable)message NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didOccur:elapsedTime:message:));
451
463 - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit
464 didReceiveData:(NSString *_Nullable)data
465 length:(NSInteger)length NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didReceiveData:length:));
466
473 - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit
474 didPlayBufferUpdated:(NSInteger)playCachedBuffer NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didPlayBufferUpdated:));
475
482 - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit
483 didPreloadEvent:(AgoraMediaPlayerPreloadEvent)event NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didPreloadEvent:));
484
491 - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit playerSrcInfoDidChange:(AgoraMediaPlayerSrcInfo *_Nonnull)to from:(AgoraMediaPlayerSrcInfo *_Nonnull)from NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:playerSrcInfoDidChange:from:));
492
498 - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit infoUpdated:(AgoraMediaPlayerUpdatedInfo *_Nonnull)info NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:infoUpdated:));
499
504 - (void)onAgoraCDNTokenWillExpire NS_SWIFT_NAME(onAgoraCDNTokenWillExpire());
505
511 - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit
512 volumeIndicationDidReceive:(NSInteger)volume NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:volumeIndicationDidReceive:));
513 @end
514
515
516 @protocol AgoraRtcMediaPlayerVideoFrameDelegate <NSObject>
517 @optional
528 - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit
529 didReceiveVideoFrame:(AgoraOutputVideoFrame * _Nonnull)videoFrame NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didReceiveVideoFrame:));
530
541 - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit
542 didReceivePixelBuffer:(CVPixelBufferRef _Nonnull)pixelBuffer NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didReceivePixelBuffer:));
543
548 - (AgoraVideoFormat)AgoraRtcMediaPlayerGetVideoPixelFormat NS_SWIFT_NAME(AgoraRtcMediaPlayerGetVideoPixelFormat());
549
550 @end
551
552
553 @protocol AgoraRtcMediaPlayerAudioFrameDelegate <NSObject>
554
565 - (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit
566 didReceiveAudioFrame:(AgoraAudioFrame* _Nonnull)audioFrame NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didReceiveAudioFrame:));
567
568 @end
569
570
575 @protocol AgoraDirectCdnStreamingEventDelegate <NSObject>
576
577 @optional
578
585 - (void)onDirectCdnStreamingStateChanged:(AgoraDirectCdnStreamingState)state
586 error:(AgoraDirectCdnStreamingError)error
587 message:(NSString *_Nullable)message NS_SWIFT_NAME(onDirectCdnStreamingStateChanged(_:error:message:));
588
589 - (void)onDirectCdnStreamingStats:(AgoraDirectCdnStreamingStats *_Nonnull)stats NS_SWIFT_NAME(onDirectCdnStreamingStats(_:));
590
591 @end
592
597 @protocol AgoraMediaMetadataDataSource <NSObject>
598 @required
599
609 - (NSInteger)metadataMaxSize NS_SWIFT_NAME(metadataMaxSize());
610
623 - (NSData * _Nullable)readyToSendMetadataAtTimestamp:(NSTimeInterval)timestamp sourceType:(AgoraVideoSourceType)sourceType NS_SWIFT_NAME(readyToSendMetadata(atTimestamp:sourceType:));
624
625 @end
626
630 @protocol AgoraMediaMetadataDelegate <NSObject>
631 @required
632
639 - (void)receiveMetadata:(NSData * _Nonnull)data fromUser:(NSInteger)uid atTimestamp:(NSTimeInterval)timestamp NS_SWIFT_NAME(receiveMetadata(_:fromUser:atTimestamp:));
640
641 @end
642
649 @protocol AgoraRtcEngineDelegate <NSObject>
650 @optional
651
652 #pragma mark Delegate Methods
653
662 #pragma mark Core Delegate Methods
663
676 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didOccurError:(AgoraErrorCode)errorCode NS_SWIFT_NAME(rtcEngine(_:didOccurError:));
677
682 - (void)rtcEngineMediaEngineDidLoaded:(AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineMediaEngineDidLoaded(_:));
683
688 - (void)rtcEngineMediaEngineDidStartCall:(AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineMediaEngineDidStartCall(_:));
689
690
704 - (void)rtcEngineRequestToken:(AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineRequestToken(_:));
705
719 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine tokenPrivilegeWillExpire:(NSString *_Nonnull)token NS_SWIFT_NAME(rtcEngine(_:tokenPrivilegeWillExpire:));
720
726 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine licenseValidationFailure:(AgoraLicenseVerifyCode) error;
727
734 - (void)rtcEngineConnectionDidInterrupted:(AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineConnectionDidInterrupted(_:));
735
736
745 - (void)rtcEngineConnectionDidLost:(AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineConnectionDidLost(_:));
746
747
754 - (void)rtcEngineConnectionDidBanned:(AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineConnectionDidBanned(_:));
755
762 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine networkTypeChanged:(AgoraNetworkType)type NS_SWIFT_NAME(rtcEngine(_:networkTypeChanged:));
763
770 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine permissionError:(AgoraPermissionType)type NS_SWIFT_NAME(rtcEngine(_:permissionError:));
771
779 - (void)rtcEngine:(AgoraRtcEngineKit* _Nonnull)engine connectionChangedToState:(AgoraConnectionState)state reason:(AgoraConnectionChangedReason)reason NS_SWIFT_NAME(rtcEngine(_:connectionChangedTo:reason:));
780
781
790 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine wlAccMessage:(AgoraWlAccReason)reason action:(AgoraWlAccAction)action wlAccMsg:(NSString * _Nonnull)wlAccMsg NS_SWIFT_NAME(rtcEngine(_:wlAccMessage:action:wlAccMsg:));
791
799 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine wlAccStats:(AgoraWlAccStats * _Nonnull)currentStats averageStats:(AgoraWlAccStats * _Nonnull)averageStats NS_SWIFT_NAME(rtcEngine(_:wlAccStats:averageStats:));
800
809 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine reportRtcStats:(AgoraChannelStats * _Nonnull)stats NS_SWIFT_NAME(rtcEngine(_:reportRtcStats:));
810
811
819 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine lastmileQuality:(AgoraNetworkQuality)quality NS_SWIFT_NAME(rtcEngine(_:lastmileQuality:));
820
821
829 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine lastmileProbeTestResult:(AgoraLastmileProbeResult * _Nonnull)result NS_SWIFT_NAME(rtcEngine(_:lastmileProbeTest:));
830
831
832 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
833
846 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine device:(NSString * _Nonnull)deviceId type:(AgoraMediaDeviceType)deviceType stateChanged:(NSInteger)state NS_SWIFT_NAME(rtcEngine(_:device:type:stateChanged:));
847
848 #endif
849
854 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didOccurEncryptionError:(AgoraEncryptionErrorType)errorType NS_SWIFT_NAME(rtcEngine(_:didOccur:));
861 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine uploadLogResultRequestId:(NSString * _Nonnull)requestId success:(BOOL)success reason:(AgoraUploadErrorReason)reason NS_SWIFT_NAME(rtcEngine(_:uploadLogResultRequestId:success:reason:));
862
863 #pragma mark Local User Core Delegate Methods
864
878 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didJoinChannel:(NSString * _Nonnull)channel withUid:(NSUInteger)uid elapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:didJoinChannel:withUid:elapsed:));
879
893 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didRejoinChannel:(NSString * _Nonnull)channel withUid:(NSUInteger)uid elapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:didRejoinChannel:withUid:elapsed:));
894
903 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didClientRoleChanged:(AgoraClientRole)oldRole newRole:(AgoraClientRole)newRole newRoleOptions:(AgoraClientRoleOptions * _Nullable)newRoleOptions NS_SWIFT_NAME(rtcEngine(_:didClientRoleChanged:newRole:newRoleOptions:));
904
912 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didClientRoleChangeFailed:(AgoraClientRoleChangeFailedReason)reason currentRole:(AgoraClientRole)currentRole NS_SWIFT_NAME(rtcEngine(_:didClientRoleChangeFailed:currentRole:));
913
926 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didLeaveChannelWithStats:(AgoraChannelStats * _Nonnull)stats NS_SWIFT_NAME(rtcEngine(_:didLeaveChannelWith:));
927
928
938 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine networkQuality:(NSUInteger)uid txQuality:(AgoraNetworkQuality)txQuality rxQuality:(AgoraNetworkQuality)rxQuality NS_SWIFT_NAME(rtcEngine(_:networkQuality:txQuality:rxQuality:));
939
940
941 #pragma mark Local User Audio Delegate Methods
942
953 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine firstLocalAudioFramePublished:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:firstLocalAudioFramePublished:));
954
962 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine localAudioStats:(AgoraRtcLocalAudioStats * _Nonnull)stats NS_SWIFT_NAME(rtcEngine(_:localAudioStats:));
963
977 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine localAudioStateChanged:(AgoraAudioLocalState)state error:(AgoraAudioLocalError)error NS_SWIFT_NAME(rtcEngine(_:localAudioStateChanged:error:));
978
986 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didAudioRouteChanged:(AgoraAudioOutputRouting)routing NS_SWIFT_NAME(rtcEngine(_:didAudioRouteChanged:));
987
988 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
989
998 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine type:(AgoraMediaDeviceType)deviceType didAudioRouteChanged:(AgoraAudioOutputRouting)routing NS_SWIFT_NAME(rtcEngine(_:type:didAudioRouteChanged:));
999 #endif
1000
1007 - (void)rtcEngineLocalAudioMixingDidFinish:(AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineLocalAudioMixingDidFinish(_:));
1008
1016 - (void)rtcEngineDidAudioEffectFinish:(AgoraRtcEngineKit * _Nonnull)engine soundId:(int)soundId NS_SWIFT_NAME(rtcEngineDidAudioEffectFinish(_:soundId:));
1017
1018
1019 #pragma mark Local User Video Delegate Methods
1020
1031 - (void)rtcEngineCameraDidReady:(AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineCameraDidReady(_:));
1032
1033 #if TARGET_OS_IPHONE
1034
1040 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine cameraFocusDidChangedToRect:(CGRect)rect NS_SWIFT_NAME(rtcEngine(_:cameraFocusDidChangedTo:));
1041
1047 - (void)rtcEngine:(AgoraRtcEngineKit* _Nonnull)engine cameraExposureDidChangedToRect:(CGRect)rect NS_SWIFT_NAME(rtcEngine(_:cameraExposureDidChangedTo:));
1048
1049 #endif
1050
1057 - (void)rtcEngineVideoDidStop:(AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineVideoDidStop(_:));
1058
1064 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine firstLocalVideoFramePublishedWithElapsed:(NSInteger)elapsed sourceType:(AgoraVideoSourceType)sourceType NS_SWIFT_NAME(rtcEngine(_:firstLocalVideoFramePublishedWithElapsed:sourceType:));
1065
1075 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine firstLocalVideoFrameWithSize:(CGSize)size elapsed:(NSInteger)elapsed sourceType:(AgoraVideoSourceType)sourceType NS_SWIFT_NAME(rtcEngine(_:firstLocalVideoFrameWith:elapsed:sourceType:));
1076
1091 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine localVideoStats:(AgoraRtcLocalVideoStats * _Nonnull)stats sourceType:(AgoraVideoSourceType)sourceType NS_SWIFT_NAME(rtcEngine(_:localVideoStats:sourceType:));
1092
1103 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didLocalPublishFallbackToAudioOnly:(BOOL)isFallbackOrRecover NS_SWIFT_NAME(rtcEngine(_:didLocalPublishFallbackToAudioOnly:));
1104
1112 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine videoRenderingTracingResultOfUid:(NSUInteger)uid currentEvent:(AgoraMediaTraceEvent)currentEvent tracingInfo:(AgoraVideoRenderingTracingInfo * _Nonnull)tracingInfo NS_SWIFT_NAME(rtcEngine(_:videoRenderingTracingResultOfUid:currentEvent:tracingInfo:));
1113
1114
1115
1116 #pragma mark Remote User Core Delegate Methods
1117
1142 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didJoinedOfUid:(NSUInteger)uid elapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:didJoinedOfUid:elapsed:));
1143
1160 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didOfflineOfUid:(NSUInteger)uid reason:(AgoraUserOfflineReason)reason NS_SWIFT_NAME(rtcEngine(_:didOfflineOfUid:reason:));
1161
1162
1172 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine receiveStreamMessageFromUid:(NSUInteger)uid streamId:(NSInteger)streamId data:(NSData * _Nonnull)data NS_SWIFT_NAME(rtcEngine(_:receiveStreamMessageFromUid:streamId:data:));
1173
1186 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didOccurStreamMessageErrorFromUid:(NSUInteger)uid streamId:(NSInteger)streamId error:(NSInteger)error missed:(NSInteger)missed cached:(NSInteger)cached NS_SWIFT_NAME(rtcEngine(_:didOccurStreamMessageErrorFromUid:streamId:error:missed:cached:));
1187
1188
1189 #pragma mark Remote User Audio Delegate Methods
1190
1203 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine firstRemoteAudioFrameOfUid:(NSUInteger)uid elapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:firstRemoteAudioFrameOfUid:elapsed:));
1204
1205
1224 - (void)rtcEngine:(AgoraRtcEngineKit* _Nonnull)engine firstRemoteAudioFrameDecodedOfUid:(NSUInteger)uid elapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:firstRemoteAudioFrameDecodedOfUid:elapsed:)) __deprecated_msg("use rtcEngine:remoteAudioStateChangedOfUid:state:reason:elapsed: instead.");
1225
1234 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine remoteAudioStats:(AgoraRtcRemoteAudioStats * _Nonnull)stats NS_SWIFT_NAME(rtcEngine(_:remoteAudioStats:));
1235
1242 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didAudioMuted:(BOOL)muted byUid:(NSUInteger)uid NS_SWIFT_NAME(rtcEngine(_:didAudioMuted:byUid:));
1243
1244
1276 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine reportAudioVolumeIndicationOfSpeakers:(NSArray<AgoraRtcAudioVolumeInfo *> * _Nonnull)speakers totalVolume:(NSInteger)totalVolume NS_SWIFT_NAME(rtcEngine(_:reportAudioVolumeIndicationOfSpeakers:totalVolume:));
1277
1278
1295 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine activeSpeaker:(NSUInteger)speakerUid NS_SWIFT_NAME(rtcEngine(_:activeSpeaker:));
1296
1303 - (void)rtcEngineRemoteAudioMixingDidStart:(AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineRemoteAudioMixingDidStart(_:));
1304
1309 - (void)rtcEngineRemoteAudioMixingDidFinish:(AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineRemoteAudioMixingDidFinish(_:));
1310
1319 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine audioQualityOfUid:(NSUInteger)uid quality:(AgoraNetworkQuality)quality delay:(NSUInteger)delay lost:(NSUInteger)lost NS_SWIFT_NAME(rtcEngine(_:audioQualityOfUid:quality:delay:lost:));
1320
1331 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine audioTransportStatsOfUid:(NSUInteger)uid delay:(NSUInteger)delay lost:(NSUInteger)lost rxKBitRate:(NSUInteger)rxKBitRate NS_SWIFT_NAME(rtcEngine(_:audioTransportStatsOfUid:delay:lost:rxKBitRate:));
1332
1333
1337 - (void)rtcEngineIntraRequestReceived:(AgoraRtcEngineKit *_Nonnull)engine NS_SWIFT_NAME(rtcEngineIntraRequestReceived(_:));
1338
1343 - (void)rtcEngine:(AgoraRtcEngineKit *_Nonnull)engine uplinkNetworkInfoUpdate:(AgoraUplinkNetworkInfo *_Nonnull)networkInfo NS_SWIFT_NAME(rtcEngine(_:uplinkNetworkInfoUpdate:));
1344
1349 - (void)rtcEngine:(AgoraRtcEngineKit *_Nonnull)engine downlinkNetworkInfoUpdate:(AgoraDownlinkNetworkInfo *_Nonnull)networkInfo NS_SWIFT_NAME(rtcEngine(_:downlinkNetworkInfoUpdate:));
1350
1361 - (void)rtcEngine:(AgoraRtcEngineKit *_Nonnull)engine didAudioSubscribeStateChange:(NSString * _Nonnull)channelId
1362 uid:(unsigned int)uid
1363 oldState:(AgoraStreamSubscribeState)oldState
1364 newState:(AgoraStreamSubscribeState)newState
1365 elapseSinceLastState:(int)elapseSinceLastState NS_SWIFT_NAME(rtcEngine(_:didAudioSubscribeStateChange:uid:oldState:newState:elapseSinceLastState:));
1366
1375 - (void)rtcEngine:(AgoraRtcEngineKit *_Nonnull)engine didAudioPublishStateChange:(NSString * _Nonnull)channelId
1376 oldState:(AgoraStreamPublishState)oldState
1377 newState:(AgoraStreamPublishState)newState
1378 elapseSinceLastState:(int)elapseSinceLastState NS_SWIFT_NAME(rtcEngine(_:didAudioPublishStateChange:oldState:newState:elapseSinceLastState:));
1379
1380 #pragma mark String UID
1381
1388 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didLocalUserRegisteredWithUserId:(NSUInteger)uid userAccount:(NSString * _Nonnull)userAccount NS_SWIFT_NAME(rtcEngine(_:didLocalUserRegisteredWithUserId:userAccount:));
1389
1399 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didUserInfoUpdatedWithUserId:(NSUInteger)uid userInfo:(AgoraUserInfo* _Nonnull)userInfo NS_SWIFT_NAME(rtcEngine(_:didUserInfoUpdatedWithUserId:userInfo:));
1400
1401 #pragma mark Rhythm Player Delegates Methods
1402
1403 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didRhythmPlayerStateChanged:(AgoraRhythmPlayerState)state
1404 errorCode:(AgoraRhythmPlayerError)errorCode NS_SWIFT_NAME(rtcEngine(_:didRhythmPlayerStateChanged:errorCode:));
1405
1406 #pragma mark Local Video Transcoder Delegates Methods
1407
1413 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didLocalVideoTranscoderErrorWithStream:(AgoraTranscodingVideoStream * _Nonnull )stream
1414 errorCode:(AgoraVideoTranscoderError)errorCode NS_SWIFT_NAME(rtcEngine(_:didLocalVideoTranscoderErrorWithStream:errorCode:));
1415
1416 #pragma mark Remote User Video Delegates Methods
1417
1438 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine firstRemoteVideoDecodedOfUid:(NSUInteger)uid size:(CGSize)size elapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:firstRemoteVideoDecodedOfUid:size:elapsed:)) __deprecated_msg("use rtcEngine:remoteVideoStateChangedOfUid:state:reason: instead.");
1439
1447 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine firstRemoteVideoFrameOfUid:(NSUInteger)uid size:(CGSize)size elapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:firstRemoteVideoFrameOfUid:size:elapsed:));
1448
1457 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine videoSizeChangedOfSourceType:(AgoraVideoSourceType)sourceType uid:(NSUInteger)uid size:(CGSize)size rotation:(NSInteger)rotation NS_SWIFT_NAME(rtcEngine(_:videoSizeChangedOf:uid:size:rotation:));
1458 - (void)rtcEngine:(AgoraRtcEngineKit* _Nonnull)engine contentInspectResult:(AgoraContentInspectResult)result NS_SWIFT_NAME(rtcEngine(_:contentInspectResult:));
1459 - (void)rtcEngine:(AgoraRtcEngineKit* _Nonnull)engine snapshotTaken:(NSUInteger)uid filePath:(NSString* _Nonnull)filePath width:(NSInteger)width height:(NSInteger)height errCode:(NSInteger)errCode NS_SWIFT_NAME(rtcEngine(_:snapshotTaken:filePath:width:height:errCode:));
1472 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine localVideoStateChangedOfState:(AgoraVideoLocalState)state error:(AgoraLocalVideoStreamError)error sourceType:(AgoraVideoSourceType)sourceType NS_SWIFT_NAME(rtcEngine(_:localVideoStateChangedOf:error:sourceType:));
1473
1485 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine remoteVideoStateChangedOfUid:(NSUInteger)uid state:(AgoraVideoRemoteState)state reason:(AgoraVideoRemoteReason)reason elapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:remoteVideoStateChangedOfUid:state:reason:elapsed:));
1486
1496 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine remoteAudioStateChangedOfUid:(NSUInteger)uid state:(AgoraAudioRemoteState)state reason:(AgoraAudioRemoteReason)reason elapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:remoteAudioStateChangedOfUid:state:reason:elapsed:));
1497
1506 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine
1507 channelMediaRelayStateDidChange:(AgoraChannelMediaRelayState)state
1508 error:(AgoraChannelMediaRelayError)error NS_SWIFT_NAME(rtcEngine(_:channelMediaRelayStateDidChange:error:));
1509
1516 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine
1517 didReceiveChannelMediaRelayEvent:(AgoraChannelMediaRelayEvent)event NS_SWIFT_NAME(rtcEngine(_:didReceive:)) __deprecated;
1518
1531 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didVideoMuted:(BOOL)muted byUid:(NSUInteger)uid NS_SWIFT_NAME(rtcEngine(_:didVideoMuted:byUid:)) __deprecated_msg("use rtcEngine:remoteVideoStateChangedOfUid:state:reason: instead.");
1532
1547 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didVideoEnabled:(BOOL)enabled byUid:(NSUInteger)uid NS_SWIFT_NAME(rtcEngine(_:didVideoEnabled:byUid:));
1548
1559 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didLocalVideoEnabled:(BOOL)enabled byUid:(NSUInteger)uid NS_SWIFT_NAME(rtcEngine(_:didLocalVideoEnabled:byUid:)) __deprecated_msg("use rtcEngine:remoteVideoStateChangedOfUid:state:reason: instead.");
1560
1569 - (void)rtcEngine:(AgoraRtcEngineKit* _Nonnull)engine didProxyConnected:(NSString* _Nonnull)channel withUid:(NSUInteger)uid proxyType:(AgoraProxyType)proxyType localProxyIp:(NSString* _Nonnull)localProxyIp elapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:didProxyConnected:withUid:proxyType:localProxyIp:elapsed:));
1570
1578 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine remoteUserStateChangedOfUid:(NSUInteger)uid state:(NSUInteger)state NS_SWIFT_NAME(rtcEngine(_:remoteUserStateChangedOfUid:state:));
1579
1591 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine remoteVideoStats:(AgoraRtcRemoteVideoStats * _Nonnull)stats NS_SWIFT_NAME(rtcEngine(_:remoteVideoStats:));
1592
1593
1606 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine didRemoteSubscribeFallbackToAudioOnly:(BOOL)isFallbackOrRecover byUid:(NSUInteger)uid NS_SWIFT_NAME(rtcEngine(_:didRemoteSubscribeFallbackToAudioOnly:byUid:));
1607
1618 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine videoTransportStatsOfUid:(NSUInteger)uid delay:(NSUInteger)delay lost:(NSUInteger)lost rxKBitRate:(NSUInteger)rxKBitRate NS_SWIFT_NAME(rtcEngine(_:videoTransportStatsOfUid:delay:lost:rxKBitRate:));
1619
1630 - (void)rtcEngine:(AgoraRtcEngineKit *_Nonnull)engine didVideoSubscribeStateChange:(NSString * _Nonnull)channelId
1631 uid:(unsigned int)uid
1632 oldState:(AgoraStreamSubscribeState)oldState
1633 newState:(AgoraStreamSubscribeState)newState
1634 elapseSinceLastState:(int)elapseSinceLastState NS_SWIFT_NAME(rtcEngine(_:didVideoSubscribeStateChange:uid:oldState:newState:elapseSinceLastState:));
1635
1646 - (void)rtcEngine:(AgoraRtcEngineKit *_Nonnull)engine didVideoPublishStateChange:(NSString * _Nonnull)channelId
1647 sourceType:(AgoraVideoSourceType)sourceType
1648 oldState:(AgoraStreamPublishState)oldState
1649 newState:(AgoraStreamPublishState)newState
1650 elapseSinceLastState:(int)elapseSinceLastState NS_SWIFT_NAME(rtcEngine(_:didVideoPublishStateChange:sourceType:oldState:newState:elapseSinceLastState:));
1651
1652 #pragma mark Stream Publish Delegate Methods
1653
1677 - (void)rtcEngine:(AgoraRtcEngineKit* _Nonnull)engine rtmpStreamingChangedToState:(NSString* _Nonnull)url state:(AgoraRtmpStreamingState)state errCode:(AgoraRtmpStreamingErrorCode)errCode NS_SWIFT_NAME(rtcEngine(_:rtmpStreamingChangedToState:state:errCode:));
1678
1687 - (void)rtcEngine:(AgoraRtcEngineKit* _Nonnull)engine rtmpStreamingEventWithUrl:(NSString* _Nonnull)url eventCode:(AgoraRtmpStreamingEvent)eventCode NS_SWIFT_NAME(rtcEngine(_:rtmpStreamingEventWithUrl:eventCode:));
1688
1689
1696 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine streamPublishedWithUrl:(NSString * _Nonnull)url errorCode:(AgoraErrorCode)errorCode NS_SWIFT_NAME(rtcEngine(_:streamPublishedWithUrl:errorCode:));
1697
1703 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine streamUnpublishedWithUrl:(NSString * _Nonnull)url NS_SWIFT_NAME(rtcEngine(_:streamUnpublishedWithUrl:));
1704
1709 - (void)rtcEngineTranscodingUpdated:(AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineTranscodingUpdated(_:));
1710
1718 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine streamInjectedStatusOfUrl:(NSString * _Nonnull)url uid:(NSUInteger)uid status:(AgoraInjectStreamStatus)status NS_SWIFT_NAME(rtcEngine(_:streamInjectedStatusOfUrl:uid:status:));
1719
1725 - (void)rtcEngine:(AgoraRtcEngineKit *_Nonnull)engine audioMixingStateChanged:(AgoraAudioMixingStateType)state
1726 reasonCode:(AgoraAudioMixingReasonCode)reasonCode NS_SWIFT_NAME(rtcEngine(_:audioMixingStateChanged:reasonCode:));
1727
1734 - (void)rtcEngine:(AgoraRtcEngineKit *_Nonnull)engine audioMixingPositionChanged:(NSInteger)position NS_SWIFT_NAME(rtcEngine(_:audioMixingPositionChanged:));
1735
1736 #if TARGET_OS_IPHONE
1737 #pragma mark Face Detection Delegate Methods
1738
1765 - (void)rtcEngine:(AgoraRtcEngineKit* _Nonnull)engine facePositionDidChangeWidth:(int)width previewHeight:(int)height faces:(NSArray<AgoraFacePositionInfo*>* _Nullable)faces NS_SWIFT_NAME(rtcEngine(_:facePositionDidChangeWidth:previewHeight:faces:));
1766 #endif
1767
1768 #pragma mark - Unavailable Delegate Methods
1769 #if TARGET_OS_IPHONE
1770 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine localVideoStateChangedOfState:(AgoraVideoLocalState)state error:(AgoraLocalVideoStreamError)error NS_SWIFT_NAME(rtcEngine(_:localVideoStateChangedOf:error:)) __attribute__((availability(ios,deprecated=7_0,message="Use rtcEngine:localVideoStateChangedOfState:error:sourceType instead.")));
1771
1772 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine localVideoStats:(AgoraRtcLocalVideoStats * _Nonnull)stats NS_SWIFT_NAME(rtcEngine(_:localVideoStats:)) __attribute__((availability(ios,deprecated=7_0,message="Use rtcEngine:localVideoStats:sourceType instead.")));
1773
1774 - (void)rtcEngine:(AgoraRtcEngineKit *_Nonnull)engine didVideoPublishStateChange:(NSString * _Nonnull)channelId
1775 oldState:(AgoraStreamPublishState)oldState
1776 newState:(AgoraStreamPublishState)newState
1777 elapseSinceLastState:(int)elapseSinceLastState NS_SWIFT_NAME(rtcEngine(_:didVideoPublishStateChange:oldState:newState:elapseSinceLastState:)) __attribute__((availability(ios,deprecated=7_0,message="Use rtcEngine:didVideoPublishStateChange:sourceType:oldState:newState:elapseSinceLastState: instead.")));
1778
1779 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine firstLocalVideoFramePublishedWithElapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:firstLocalVideoFramePublishedWithElapsed:)) __attribute__((availability(ios,deprecated=7_0,message="Use rtcEngine:firstLocalVideoFramePublishedWithElapsed:sourceType: instead.")));
1780
1781 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine videoSizeChangedOfUid:(NSUInteger)uid size:(CGSize)size rotation:(NSInteger)rotation NS_SWIFT_NAME(rtcEngine(_:videoSizeChangedOfUid:size:rotation:)) __attribute__((availability(ios,deprecated=7_0,message="Use rtcEngine:videoSizeChangedOfSourceType:uid:size:rotation instead.")));
1782 #endif
1783
1784 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
1785 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine localVideoStateChangedOfState:(AgoraVideoLocalState)state error:(AgoraLocalVideoStreamError)error NS_SWIFT_NAME(rtcEngine(_:localVideoStateChangedOf:error:)) __attribute__((availability(macos,deprecated=10_9,message="Use rtcEngine:localVideoStateChangedOfState:error:sourceType instead.")));
1786
1787 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine localVideoStats:(AgoraRtcLocalVideoStats * _Nonnull)stats NS_SWIFT_NAME(rtcEngine(_:localVideoStats:)) __attribute__((availability(macos,deprecated=10_9,message="Use rtcEngine:localVideoStats:sourceType instead.")));
1788
1789 - (void)rtcEngine:(AgoraRtcEngineKit *_Nonnull)engine didVideoPublishStateChange:(NSString * _Nonnull)channelId
1790 oldState:(AgoraStreamPublishState)oldState
1791 newState:(AgoraStreamPublishState)newState
1792 elapseSinceLastState:(int)elapseSinceLastState NS_SWIFT_NAME(rtcEngine(_:didVideoPublishStateChange:oldState:newState:elapseSinceLastState:)) __attribute__((availability(macos,deprecated=10_9,message="Use rtcEngine:didVideoPublishStateChange:sourceType:oldState:newState:elapseSinceLastState: instead.")));
1793
1794 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine firstLocalVideoFramePublishedWithElapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:firstLocalVideoFramePublishedWithElapsed:)) __attribute__((availability(macos,deprecated=10_9,message="Use rtcEngine:firstLocalVideoFramePublishedWithElapsed:sourceType: instead.")));
1795
1796 - (void)rtcEngine:(AgoraRtcEngineKit * _Nonnull)engine videoSizeChangedOfUid:(NSUInteger)uid size:(CGSize)size rotation:(NSInteger)rotation NS_SWIFT_NAME(rtcEngine(_:videoSizeChangedOfUid:size:rotation:)) __attribute__((availability(macos,deprecated=10_9,message="Use rtcEngine:videoSizeChangedOfSourceType:uid:size:rotation instead.")));
1797 #endif
1798 @end
1799
1800 #pragma mark - AgoraRtcEngineKit
1801
1812 __attribute__((visibility("default"))) @interface AgoraRtcEngineKit : NSObject
1813
1814 #pragma mark Core Methods
1815
1827 @property(nonatomic, weak) id<AgoraRtcEngineDelegate> _Nullable delegate;
1828
1867 - (int)preloadChannelByToken:(NSString * _Nullable)token
1868 channelId:(NSString * _Nonnull)channelId
1869 uid:(NSUInteger)uid NS_SWIFT_NAME(preloadChannel(byToken:channelId:uid:));
1870
1911 - (int)preloadChannelByToken:(NSString * _Nullable)token
1912 channelId:(NSString * _Nonnull)channelId
1913 userAccount:(NSString * _Nonnull)userAccount NS_SWIFT_NAME(preloadChannel(byToken:channelId:userAccount:));
1914
1934 - (int)updatePreloadChannelToken:(NSString * _Nonnull)token NS_SWIFT_NAME(updatePreloadChannelToken(_:));
1935
1998 - (int)joinChannelByToken:(NSString * _Nullable)token
1999 channelId:(NSString * _Nonnull)channelId
2000 info:(NSString * _Nullable)info
2001 uid:(NSUInteger)uid
2002 joinSuccess:(void(^ _Nullable)(NSString * _Nonnull channel, NSUInteger uid, NSInteger elapsed))joinSuccessBlock NS_SWIFT_NAME(joinChannel(byToken:channelId:info:uid:joinSuccess:));
2003
2064 - (int)joinChannelByToken:(NSString * _Nullable)token
2065 channelId:(NSString * _Nonnull)channelId
2066 uid:(NSUInteger)uid
2067 mediaOptions:(AgoraRtcChannelMediaOptions * _Nonnull)mediaOptions
2068 joinSuccess:(void(^ _Nullable)(NSString * _Nonnull channel, NSUInteger uid, NSInteger elapsed))joinSuccessBlock NS_SWIFT_NAME(joinChannel(byToken:channelId:uid:mediaOptions:joinSuccess:));
2069
2070 - (int)startMultipleVideoStreams:(VIEW_CLASS * _Nonnull)view screen:(VIEW_CLASS * _Nonnull)screenView remotes:(NSArray * _Nullable)remoteViews NS_SWIFT_NAME(startMultipleVideoStreams(_:screen:remotes:));
2071
2072
2098 - (int)leaveChannel:(void(^ _Nullable)(AgoraChannelStats * _Nonnull stat))leaveChannelBlock NS_SWIFT_NAME(leaveChannel(_:));
2099
2126 - (int)leaveChannel:(AgoraLeaveChannelOptions * _Nonnull)options
2127 leaveChannelBlock:(void (^ _Nullable)(AgoraChannelStats * _Nonnull))leaveChannelBlock NS_SWIFT_NAME(leaveChannel(_:leaveChannelBlock:));
2128
2146 - (int)setChannelProfile:(AgoraChannelProfile)profile NS_SWIFT_NAME(setChannelProfile(_:));
2147
2156 - (int)updateChannelWithMediaOptions:(AgoraRtcChannelMediaOptions* _Nonnull)mediaOptions NS_SWIFT_NAME(updateChannel(with:));
2157
2173 - (int)setClientRole:(AgoraClientRole)role NS_SWIFT_NAME(setClientRole(_:));
2174
2202 - (int)setClientRole:(AgoraClientRole)role options:(AgoraClientRoleOptions * _Nullable)options NS_SWIFT_NAME(setClientRole(_:options:));
2203
2220 - (int)renewToken:(NSString * _Nonnull)token NS_SWIFT_NAME(renewToken(_:));
2221
2227 - (AgoraConnectionState)getConnectionState NS_SWIFT_NAME(getConnectionState());
2228
2253 - (int)startOrUpdateChannelMediaRelay:(AgoraChannelMediaRelayConfiguration * _Nonnull)config NS_SWIFT_NAME(startOrUpdateChannelMediaRelay(_:));
2254
2280 - (int)startChannelMediaRelay:(AgoraChannelMediaRelayConfiguration * _Nonnull)config NS_SWIFT_NAME(startChannelMediaRelay(_:)) __deprecated_msg("use startOrUpdateChannelMediaRelay instead.");
2281
2303 - (int)updateChannelMediaRelay:(AgoraChannelMediaRelayConfiguration * _Nonnull)config NS_SWIFT_NAME(updateChannelMediaRelay(_:)) __deprecated_msg("use startOrUpdateChannelMediaRelay instead.");
2304
2320 - (int)stopChannelMediaRelay NS_SWIFT_NAME(stopChannelMediaRelay());
2321
2331 - (int)pauseAllChannelMediaRelay NS_SWIFT_NAME(pauseAllChannelMediaRelay());
2332
2342 - (int)resumeAllChannelMediaRelay NS_SWIFT_NAME(resumeAllChannelMediaRelay());
2343
2358 - (int)enableWirelessAccelerate:(BOOL)enabled NS_SWIFT_NAME(enableWirelessAccelerate(_:));
2359
2360 - (int)startLocalVideoTranscoder:(AgoraLocalTranscoderConfiguration* _Nonnull)config NS_SWIFT_NAME(startLocalVideoTranscoder(_:));
2361
2362 - (int)updateLocalTranscoderConfiguration:(AgoraLocalTranscoderConfiguration* _Nonnull)config NS_SWIFT_NAME(updateLocalTranscoderConfiguration(_:));
2363
2364 - (int)stopLocalVideoTranscoder NS_SWIFT_NAME(stopLocalVideoTranscoder());
2365
2366
2381 - (int)startMediaRenderingTracing NS_SWIFT_NAME(startMediaRenderingTracing());
2382
2396 - (int)enableInstantMediaRendering NS_SWIFT_NAME(enableInstantMediaRendering());
2397
2408 - (int)enableWebSdkInteroperability:(BOOL)enabled NS_SWIFT_NAME(enableWebSdkInteroperability(_:)) __deprecated;
2409
2424 + (instancetype _Nonnull)sharedEngineWithAppId:(NSString * _Nonnull)appId
2425 delegate:(id<AgoraRtcEngineDelegate> _Nullable)delegate NS_SWIFT_NAME(sharedEngine(withAppId:delegate:));
2426
2447 + (instancetype _Nonnull)sharedEngineWithConfig:(AgoraRtcEngineConfig * _Nonnull)config
2448 delegate:(id<AgoraRtcEngineDelegate> _Nullable)delegate NS_SWIFT_NAME(sharedEngine(with:delegate:));
2449
2466 + (void)destroy NS_SWIFT_NAME(destroy());
2467
2468 #pragma mark Core Audio
2469
2488 - (int)enableAudio NS_SWIFT_NAME(enableAudio());
2489
2501 - (int)disableAudio NS_SWIFT_NAME(disableAudio());
2502
2525 - (int)enableLocalAudio:(BOOL)enabled NS_SWIFT_NAME(enableLocalAudio(_:));
2526
2542 - (int)setAudioProfile:(AgoraAudioProfile)profile NS_SWIFT_NAME(setAudioProfile(_:));
2543
2544 - (int)setAudioScenario:(AgoraAudioScenario)scenario NS_SWIFT_NAME(setAudioScenario(_:));
2545
2567 - (int)enableAudioVolumeIndication:(NSInteger)interval
2568 smooth:(NSInteger)smooth
2569 reportVad:(BOOL)reportVad NS_SWIFT_NAME(enableAudioVolumeIndication(_:smooth:reportVad:));
2570
2571
2572 #if TARGET_OS_IPHONE
2573
2590 - (int)setEnableSpeakerphone:(BOOL)enableSpeaker NS_SWIFT_NAME(setEnableSpeakerphone(_:));
2591
2601 - (BOOL)isSpeakerphoneEnabled NS_SWIFT_NAME(isSpeakerphoneEnabled());
2602
2630 - (int)setDefaultAudioRouteToSpeakerphone:(BOOL)defaultToSpeaker NS_SWIFT_NAME(setDefaultAudioRouteToSpeakerphone(_:));
2631 #endif
2632
2644 - (int)adjustRecordingSignalVolume:(NSInteger)volume NS_SWIFT_NAME(adjustRecordingSignalVolume(_:));
2645
2657 - (int)adjustPlaybackSignalVolume:(NSInteger)volume NS_SWIFT_NAME(adjustPlaybackSignalVolume(_:));
2658
2678 - (int)adjustUserPlaybackSignalVolume:(NSUInteger)uid volume:(int)volume NS_SWIFT_NAME(adjustUserPlaybackSignalVolume(_:volume:));
2679
2688 - (int)muteRecordingSignal:(BOOL)muted NS_SWIFT_NAME(muteRecordingSignal(_:));
2689
2700 - (int)muteLocalAudioStream:(BOOL)mute NS_SWIFT_NAME(muteLocalAudioStream(_:));
2701
2715 - (int)muteRemoteAudioStream:(NSUInteger)uid mute:(BOOL)mute NS_SWIFT_NAME(muteRemoteAudioStream(_:mute:));
2716
2742 - (int)muteAllRemoteAudioStreams:(BOOL)mute NS_SWIFT_NAME(muteAllRemoteAudioStreams(_:));
2743
2758 - (int)setDefaultMuteAllRemoteAudioStreams:(BOOL)mute NS_SWIFT_NAME(setDefaultMuteAllRemoteAudioStreams(_:)) __deprecated;
2759
2772 - (int)registerExtensionWithVendor:(NSString * __nonnull)provider
2773 extension:(NSString * __nonnull)extension
2774 sourceType:(AgoraMediaSourceType)sourceType NS_SWIFT_NAME(registerExtension(withVendor:extension:sourceType:));
2775
2795 - (int)enableExtensionWithVendor:(NSString * __nonnull)provider extension:(NSString * __nonnull)extension enabled:(BOOL)enabled NS_SWIFT_NAME(enableExtension(withVendor:extension:enabled:));
2796
2817 - (int)enableExtensionWithVendor:(NSString * __nonnull)provider
2818 extension:(NSString * __nonnull)extension
2819 enabled:(BOOL)enabled
2820 sourceType:(AgoraMediaSourceType)sourceType NS_SWIFT_NAME(enableExtension(withVendor:extension:enabled:sourceType:));
2821
2842 - (int)enableExtensionWithVendor:(NSString * __nonnull)provider
2843 extension:(NSString * __nonnull)extension
2844 extensionInfo:(AgoraExtensionInfo * __nonnull)extensionInfo
2845 enabled:(BOOL)enabled NS_SWIFT_NAME(enableExtension(withVendor:extension:extensionInfo:enabled:));
2846
2858 - (int)setExtensionProviderPropertyWithVendor:(NSString * __nonnull)provider
2859 key:(NSString * __nonnull)key
2860 value:(NSString * __nonnull)value NS_SWIFT_NAME(setExtensionProviderPropertyWithVendor(_:key:value:));
2861
2872 - (int)setExtensionPropertyWithVendor:(NSString * __nonnull)provider
2873 extension:(NSString * __nonnull)extension
2874 key:(NSString * __nonnull)key
2875 value:(NSString * __nonnull)value NS_SWIFT_NAME(setExtensionPropertyWithVendor(_:extension:key:value:));
2876
2890 - (int)setExtensionPropertyWithVendor:(NSString * __nonnull)provider
2891 extension:(NSString * __nonnull)extension
2892 key:(NSString * __nonnull)key
2893 value:(NSString * __nonnull)value
2894 sourceType:(AgoraMediaSourceType)sourceType NS_SWIFT_NAME(setExtensionPropertyWithVendor(_:extension:key:value:sourceType:));
2908 - (int)setExtensionPropertyWithVendor:(NSString * __nonnull)provider
2909 extension:(NSString * __nonnull)extension
2910 extensionInfo:(AgoraExtensionInfo * __nonnull)extensionInfo
2911 key:(NSString * __nonnull)key
2912 value:(NSString * __nonnull)value NS_SWIFT_NAME(setExtensionPropertyWithVendor(_:extension:extensionInfo:key:value:));
2913
2924 - (NSString * _Nullable)getExtensionPropertyWithVendor:(NSString * __nonnull)provider
2925 extension:(NSString * __nonnull)extension
2926 key:(NSString * __nonnull)key NS_SWIFT_NAME(getExtensionProperty(withVendor:extension:key:));
2927
2939 - (NSString * _Nullable)getExtensionPropertyWithVendor:(NSString * __nonnull)provider
2940 extension:(NSString * __nonnull)extension
2941 key:(NSString * __nonnull)key
2942 sourceType:(AgoraMediaSourceType)sourceType NS_SWIFT_NAME(getExtensionProperty(withVendor:extension:key:sourceType:));
2943
2955 - (NSString * _Nullable)getExtensionPropertyWithVendor:(NSString * __nonnull)provider
2956 extension:(NSString * __nonnull)extension
2957 extensionInfo:(AgoraExtensionInfo * __nonnull)extensionInfo
2958 key:(NSString * __nonnull)key NS_SWIFT_NAME(getExtensionProperty(withVendor:extension:extensionInfo:key:));
2959
2960 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
2961
2982 - (int)enableLoopbackRecording:(BOOL)enabled deviceName:(NSString* _Nullable)deviceName NS_SWIFT_NAME(enableLoopbackRecording(_:deviceName:));
2983
2996 - (int)adjustLoopbackSignalVolume:(NSInteger)volume NS_SWIFT_NAME(adjustLoopbackSignalVolume(_:));
2997
3004 - (int)getLoopbackRecordingVolume NS_SWIFT_NAME(getLoopbackRecordingVolume());
3005
3006 #endif
3007
3008 #pragma mark Core Video
3009
3030 - (int)enableVideo NS_SWIFT_NAME(enableVideo());
3031
3041 - (int)disableVideo NS_SWIFT_NAME(disableVideo());
3042
3068 - (int)enableLocalVideo:(BOOL)enabled NS_SWIFT_NAME(enableLocalVideo(_:));
3069
3075 - (NSArray <AgoraVideoCodecCapInfo *> *__nullable)queryCodecCapability;
3076
3086 - (int)queryDeviceScore NS_SWIFT_NAME(queryDeviceScore());
3087
3104 - (int)setVideoEncoderConfiguration:(AgoraVideoEncoderConfiguration * _Nonnull)config NS_SWIFT_NAME(setVideoEncoderConfiguration(_:));
3105
3106
3126 - (int)setupLocalVideo:(AgoraRtcVideoCanvas * _Nullable)local NS_SWIFT_NAME(setupLocalVideo(_:));
3127
3131 - (int)setLocalVideoMirrorMode:(AgoraVideoMirrorMode)mode NS_SWIFT_NAME(setLocalVideoMirrorMode(_:)) __deprecated;
3132
3136 - (int)setLocalRenderMode:(NSUInteger)uid
3137 mode:(AgoraVideoRenderMode)mode NS_SWIFT_NAME(setLocalRenderMode(_:mode:)) __deprecated;
3138
3157 - (int)setLocalRenderMode:(AgoraVideoRenderMode)mode
3158 mirror:(AgoraVideoMirrorMode)mirror NS_SWIFT_NAME(setLocalRenderMode(_:mirror:));
3159
3172 - (int)startPreview NS_SWIFT_NAME(startPreview());
3173
3187 - (int)startPreview: (AgoraVideoSourceType)sourceType NS_SWIFT_NAME(startPreview(_:));
3188
3196 - (int)stopPreview NS_SWIFT_NAME(stopPreview());
3197
3205 - (int)stopPreview: (AgoraVideoSourceType)sourceType NS_SWIFT_NAME(stopPreview(_:));
3206
3220 - (int)setRemoteRenderRotation:(NSUInteger)uid
3221 rotation:(AgoraVideoRotation)rotation NS_SWIFT_NAME(setRemoteRenderRotation(_:rotation:));
3222
3233 - (int)setupRemoteVideo:(AgoraRtcVideoCanvas * _Nonnull)remote NS_SWIFT_NAME(setupRemoteVideo(_:));
3234
3244 - (int)setRemoteRenderMode:(NSUInteger)uid
3245 mode:(AgoraVideoRenderMode)mode
3246 mirror:(AgoraVideoMirrorMode)mirror NS_SWIFT_NAME(setRemoteRenderMode(_:mode:mirror:));
3247
3248
3261 - (int)muteLocalVideoStream:(BOOL)mute NS_SWIFT_NAME(muteLocalVideoStream(_:));
3262
3288 - (int)muteAllRemoteVideoStreams:(BOOL)mute NS_SWIFT_NAME(muteAllRemoteVideoStreams(_:));
3289
3304 - (int)setDefaultMuteAllRemoteVideoStreams:(BOOL)mute NS_SWIFT_NAME(setDefaultMuteAllRemoteVideoStreams(_:)) __deprecated;
3305
3321 - (int)muteRemoteVideoStream:(NSUInteger)uid
3322 mute:(BOOL)mute NS_SWIFT_NAME(muteRemoteVideoStream(_:mute:));
3323
3337 - (int)setBeautyEffectOptions:(BOOL)enable options:(AgoraBeautyOptions* _Nullable)options NS_SWIFT_NAME(setBeautyEffectOptions(_:options:));
3338
3353 - (int)setBeautyEffectOptions:(BOOL)enable options:(AgoraBeautyOptions* _Nullable)options sourceType:(AgoraMediaSourceType)sourceType NS_SWIFT_NAME(setBeautyEffectOptions(_:options:sourceType:));
3354
3379 - (int)setVideoDenoiserOptions:(BOOL)enable options:(AgoraVideoDenoiserOptions* _Nullable)options NS_SWIFT_NAME(setVideoDenoiserOptions(_:options:));
3380
3406 - (int)setVideoDenoiserOptions:(BOOL)enable options:(AgoraVideoDenoiserOptions* _Nullable)options sourceType:(AgoraMediaSourceType)sourceType NS_SWIFT_NAME(setVideoDenoiserOptions(_:options:sourceType:));
3407
3432 - (int)setLowlightEnhanceOptions:(BOOL)enable options:(AgoraLowlightEnhanceOptions* _Nullable)options NS_SWIFT_NAME(setLowlightEnhanceOptions(_:options:));
3433
3459 - (int)setLowlightEnhanceOptions:(BOOL)enable options:(AgoraLowlightEnhanceOptions* _Nullable)options sourceType:(AgoraMediaSourceType)sourceType NS_SWIFT_NAME(setLowlightEnhanceOptions(_:options:sourceType:));
3460
3485 - (int)setColorEnhanceOptions:(BOOL)enable options:(AgoraColorEnhanceOptions* _Nullable)options NS_SWIFT_NAME(setColorEnhanceOptions(_:options:));
3486
3512 - (int)setColorEnhanceOptions:(BOOL)enable options:(AgoraColorEnhanceOptions* _Nullable)options sourceType:(AgoraMediaSourceType)sourceType NS_SWIFT_NAME(setColorEnhanceOptions(_:options:sourceType:));
3513
3561 - (int)enableVirtualBackground:(BOOL)enable backData:(AgoraVirtualBackgroundSource* _Nullable)backData segData:(AgoraSegmentationProperty* _Nullable)segData NS_SWIFT_NAME(enableVirtualBackground(_:backData:segData:));
3562
3611 - (int)enableVirtualBackground:(BOOL)enable backData:(AgoraVirtualBackgroundSource* _Nullable)backData segData:(AgoraSegmentationProperty* _Nullable)segData sourceType:(AgoraMediaSourceType)sourceType NS_SWIFT_NAME(enableVirtualBackground(_:backData:segData:sourceType:));
3612
3624 - (int)setVideoScenario:(AgoraApplicationScenarioType)scenarioType NS_SWIFT_NAME(setVideoScenario(_:));
3625
3634 - (BOOL)isFeatureAvailableOnDevice:(AgoraFeatureType)type;
3635
3636 #pragma mark Audio Effect
3637
3652 - (int)setLocalVoicePitch:(double)pitch NS_SWIFT_NAME(setLocalVoicePitch(_:));
3653
3663 - (int)setLocalVoiceFormant:(double)formantRatio;
3664
3672 - (int)setLocalVoiceEqualizationOfBandFrequency:(AgoraAudioEqualizationBandFrequency)bandFrequency withGain:(NSInteger)gain NS_SWIFT_NAME(setLocalVoiceEqualizationOf(_:withGain:));
3673
3681 - (int)setLocalVoiceReverbOfType:(AgoraAudioReverbType)reverbType withValue:(NSInteger)value NS_SWIFT_NAME(setLocalVoiceReverbOf(_:withValue:));
3682
3683 #pragma mark Audio Effect Playback
3684
3713 - (int)preloadEffect:(int)soundId
3714 filePath:(NSString* _Nonnull)filePath NS_SWIFT_NAME(preloadEffect(_:filePath:));
3715
3745 - (int)preloadEffect:(int)soundId
3746 filePath:(NSString* _Nonnull)filePath
3747 startPos:(int)startPos NS_SWIFT_NAME(preloadEffect(_:filePath:startPos:));
3748
3772 - (int)playEffect:(int)soundId
3773 filePath:(NSString* _Nonnull)filePath
3774 loopCount:(NSInteger)loopCount
3775 pitch:(double)pitch
3776 pan:(double)pan
3777 gain:(NSInteger)gain NS_SWIFT_NAME(playEffect(_:filePath:loopCount:pitch:pan:gain:));
3778
3808 - (int)playEffect:(int)soundId
3809 filePath:(NSString* _Nonnull)filePath
3810 loopCount:(NSInteger)loopCount
3811 pitch:(double)pitch
3812 pan:(double)pan
3813 gain:(NSInteger)gain
3814 startPos:(int)startPos NS_SWIFT_NAME(playEffect(_:filePath:loopCount:pitch:pan:gain:startPos:));
3815
3847 - (int)playEffect:(int)soundId
3848 filePath:(NSString* _Nonnull)filePath
3849 loopCount:(NSInteger)loopCount
3850 pitch:(double)pitch
3851 pan:(double)pan
3852 gain:(NSInteger)gain
3853 publish:(BOOL)publish NS_SWIFT_NAME(playEffect(_:filePath:loopCount:pitch:pan:gain:publish:));
3854
3887 - (int)playEffect:(int)soundId
3888 filePath:(NSString* _Nonnull)filePath
3889 loopCount:(NSInteger)loopCount
3890 pitch:(double)pitch
3891 pan:(double)pan
3892 gain:(NSInteger)gain
3893 publish:(BOOL)publish
3894 startPos:(int)startPos NS_SWIFT_NAME(playEffect(_:filePath:loopCount:pitch:pan:gain:publish:startPos:));
3895
3926 - (int)playAllEffectsWithLoopCount:(NSInteger)loopCount
3927 pitch:(double)pitch
3928 pan:(double)pan
3929 gain:(NSInteger)gain
3930 publish:(BOOL)publish NS_SWIFT_NAME(playAllEffects(withLoopCount:pitch:pan:gain:publish:));
3931
3939 - (int)getEffectsVolume NS_SWIFT_NAME(getEffectsVolume());
3940
3950 - (int)setEffectsVolume:(NSInteger)volume NS_SWIFT_NAME(setEffectsVolume(_:));
3951
3962 - (int)setVolumeOfEffect:(int)soundId
3963 withVolume:(int)volume NS_SWIFT_NAME(setVolumeOfEffect(_:withVolume:));
3964
3974 - (int)getVolumeOfEffect:(int)soundId NS_SWIFT_NAME(getVolumeOfEffect(_:));
3975
3983 - (int)pauseEffect:(int)soundId NS_SWIFT_NAME(pauseEffect(_:));
3984
3990 - (int)pauseAllEffects NS_SWIFT_NAME(pauseAllEffects());
3991
3999 - (int)resumeEffect:(int)soundId NS_SWIFT_NAME(resumeEffect(_:));
4000
4006 - (int)resumeAllEffects NS_SWIFT_NAME(resumeAllEffects());
4007
4015 - (int)stopEffect:(int)soundId NS_SWIFT_NAME(stopEffect(_:));
4016
4023 - (int)stopAllEffects NS_SWIFT_NAME(stopAllEffects());
4024
4041 - (int)getEffectDuration:(NSString* _Nonnull)filePath NS_SWIFT_NAME(getEffectDuration(_:));
4056 - (int)setEffectPosition:(int)soundId pos:(NSInteger)pos NS_SWIFT_NAME(setEffectPosition(_:pos:));
4067 - (int)getEffectCurrentPosition:(int)soundId NS_SWIFT_NAME(getEffectCurrentPosition(_:));
4068
4069
4070
4071
4079 - (int)unloadEffect:(int)soundId NS_SWIFT_NAME(unloadEffect(_:));
4080
4087 - (int)unloadAllEffects NS_SWIFT_NAME(unloadAllEffects());
4088
4089 #pragma mark beautifier effect
4090
4127 - (int)setVoiceBeautifierPreset:(AgoraVoiceBeautifierPreset)preset NS_SWIFT_NAME(setVoiceBeautifierPreset(_:));
4128
4166 - (int)setAudioEffectPreset:(AgoraAudioEffectPreset)preset NS_SWIFT_NAME(setAudioEffectPreset(_:));
4167
4206 - (int)setVoiceConversionPreset:(AgoraVoiceConversionPreset)preset NS_SWIFT_NAME(setVoiceConversionPreset(_:));
4207
4283 - (int)setAudioEffectParameters:(AgoraAudioEffectPreset)preset param1:(int)param1 param2:(int)param2 NS_SWIFT_NAME(setAudioEffectParameters(_:param1:param2:));
4284
4327 - (int)setVoiceBeautifierParameters:(AgoraVoiceBeautifierPreset)preset param1:(int)param1 param2:(int)param2 NS_SWIFT_NAME(setVoiceBeautifierParameters(_:param1:param2:));
4328
4341 - (int)setVoiceConversionParameters:(AgoraVoiceConversionPreset)preset param1:(int)param1 param2:(int)param2 NS_SWIFT_NAME(setVoiceConversionParameters(_:param1:param2:));
4353 - (int)setHeadphoneEQPreset:(AgoraHeadphoneEQPreset)preset NS_SWIFT_NAME(setHeadphoneEQPreset(_:));
4363 - (int)setHeadphoneEQParameters:(int)lowGain highGain:(int)highGain NS_SWIFT_NAME(setHeadphoneEQParameters(_:highGain:));
4364
4365 #pragma mark Sound Position Indication
4366
4385 - (int)enableSoundPositionIndication:(BOOL)enabled NS_SWIFT_NAME(enableSoundPositionIndication(_:));
4386
4410 - (int)setRemoteVoicePosition:(NSUInteger)uid pan:(double)pan gain:(double)gain NS_SWIFT_NAME(setRemoteVoicePosition(_:pan:gain:));
4411
4422 - (int)enableSpatialAudio:(BOOL)enabled NS_SWIFT_NAME(enableSpatialAudio(_:));
4423
4439 - (int)setRemoteUserSpatialAudioParams:(NSUInteger)uid
4440 params:(AgoraSpatialAudioParams* _Nonnull)params NS_SWIFT_NAME(setRemoteUserSpatialAudioParams(_:params:));
4441
4442 #pragma mark Audio Noise Suppression
4443
4453 - (int)setAINSMode:(BOOL)enabled mode:(AUDIO_AINS_MODE)mode NS_SWIFT_NAME(setAINSMode(_:mode:));
4454
4455 #pragma mark Audio Mixing
4456
4493 - (int)startAudioMixing:(NSString * _Nonnull)filePath
4494 loopback:(BOOL)loopback
4495 cycle:(NSInteger)cycle NS_SWIFT_NAME(startAudioMixing(_:loopback:cycle:));
4496
4529 - (int)startAudioMixing:(NSString * _Nonnull)filePath
4530 loopback:(BOOL)loopback
4531 cycle:(NSInteger)cycle
4532 startPos:(NSInteger)startPos NS_SWIFT_NAME(startAudioMixing(_:loopback:cycle:startPos:));
4533
4543 - (int)stopAudioMixing NS_SWIFT_NAME(stopAudioMixing());
4544
4553 - (int)pauseAudioMixing NS_SWIFT_NAME(pauseAudioMixing());
4554
4564 - (int)resumeAudioMixing NS_SWIFT_NAME(resumeAudioMixing());
4565
4574 - (int)selectAudioTrack:(NSInteger)index NS_SWIFT_NAME(selectAudioTrack(_:));
4583 - (int)getAudioTrackCount NS_SWIFT_NAME(getAudioTrackCount());
4584
4595 - (int)adjustAudioMixingVolume:(NSInteger)volume NS_SWIFT_NAME(adjustAudioMixingVolume(_:));
4596
4597
4606 - (int)adjustAudioMixingPublishVolume:(NSInteger)volume NS_SWIFT_NAME(adjustAudioMixingPublishVolume(_:));
4607
4616 - (int)getAudioMixingPublishVolume NS_SWIFT_NAME(getAudioMixingPublishVolume());
4617
4626 - (int)adjustAudioMixingPlayoutVolume:(NSInteger)volume NS_SWIFT_NAME(adjustAudioMixingPlayoutVolume(_:));
4627
4636 - (int)getAudioMixingPlayoutVolume NS_SWIFT_NAME(getAudioMixingPlayoutVolume());
4637
4638
4648 - (int)getAudioMixingDuration NS_SWIFT_NAME(getAudioMixingDuration());
4649
4658 - (int)getAudioMixingCurrentPosition NS_SWIFT_NAME(getAudioMixingCurrentPosition());
4659
4670 - (int)setAudioMixingPosition:(NSInteger)pos NS_SWIFT_NAME(setAudioMixingPosition(_:));
4671
4682 - (int)setAudioMixingDualMonoMode:(AgoraAudioMixingDualMonoMode)mode NS_SWIFT_NAME(setAudioMixingDualMonoMode(_:));
4683
4693 - (int)setAudioMixingPitch:(NSInteger)pitch NS_SWIFT_NAME(setAudioMixingPitch(_:));
4694
4695 #pragma mark Audio Recording
4696
4717 - (int)startAudioRecording:(NSString * _Nonnull)filePath
4718 quality:(AgoraAudioRecordingQuality)quality NS_SWIFT_NAME(startAudioRecording(_:quality:));
4719
4743 - (int)startAudioRecordingWithConfig:(AgoraAudioRecordingConfiguration * _Nonnull)config NS_SWIFT_NAME(startAudioRecording(withConfig:));
4744
4745 - (int)setAudioEncodedFrameDelegate:(id<AgoraAudioEncodedFrameDelegate> _Nullable)delegate config:(AgoraAudioEncodedFrameDelegateConfig * _Nonnull)config NS_SWIFT_NAME(setAudioEncodedFrameDelegate(_:config:));
4753 - (int)stopAudioRecording NS_SWIFT_NAME(stopAudioRecording());
4754
4755 #pragma mark Echo Test
4756
4774 - (int)startEchoTest:(void(^ _Nullable)(NSString * _Nonnull channel, NSUInteger uid, NSInteger elapsed))successBlock NS_SWIFT_NAME(startEchoTest(_:));
4775
4792 - (int)startEchoTestWithInterval:(NSInteger)interval
4793 successBlock:(void(^ _Nullable)(NSString * _Nonnull channel, NSUInteger uid, NSInteger elapsed))successBlock NS_SWIFT_NAME(startEchoTest(withInterval:successBlock:));
4794
4802 - (int)startEchoTestWithConfig:(AgoraEchoTestConfiguration* _Nonnull)config NS_SWIFT_NAME(startEchoTest(withConfig:));
4803
4811 - (int)stopEchoTest NS_SWIFT_NAME(stopEchoTest());
4812
4813
4814 #pragma mark Miscellaneous Audio Control
4815
4831 - (int)enableInEarMonitoring:(BOOL)enabled NS_SWIFT_NAME(enable(inEarMonitoring:));
4832
4844 - (int)enableInEarMonitoring:(BOOL)enabled includeAudioFilters:(AgoraEarMonitoringFilterType)includeAudioFilters NS_SWIFT_NAME(enable(inEarMonitoring:includeAudioFilters:));
4845
4857 - (int)setInEarMonitoringVolume:(NSInteger)volume NS_SWIFT_NAME(setInEarMonitoringVolume(_:));
4858
4859 #if TARGET_OS_IPHONE
4860
4869 - (void)setAudioSessionOperationRestriction:(AgoraAudioSessionOperationRestriction)restriction NS_SWIFT_NAME(setAudioSessionOperationRestriction(_:));
4870
4871 #endif
4872
4873 #pragma mark Dual Video Mode
4874
4892 - (int)enableDualStreamMode:(BOOL)enabled NS_SWIFT_NAME(enableDualStreamMode(_:)) __deprecated_msg("use setDualStreamMode: instead.");
4893
4912 - (int)enableDualStreamMode:(BOOL)enabled
4913 streamConfig:(AgoraSimulcastStreamConfig* _Nonnull)streamConfig NS_SWIFT_NAME(enableDualStreamMode(_:streamConfig:)) __deprecated_msg("use setDualStreamMode: instead.");
4914
4924 - (int)setDualStreamMode:(AgoraSimulcastStreamMode)mode NS_SWIFT_NAME(setDualStreamMode(_:));
4925
4942 - (int)setDualStreamMode:(AgoraSimulcastStreamMode)mode
4943 streamConfig:(AgoraSimulcastStreamConfig* _Nonnull)streamConfig NS_SWIFT_NAME(setDualStreamMode(_:streamConfig:));
4963 - (int)setRemoteVideoStream:(NSUInteger)uid
4964 type:(AgoraVideoStreamType)streamType NS_SWIFT_NAME(setRemoteVideoStream(_:type:));
4965
4976 - (int)setRemoteVideoSubscriptionOptions:(NSUInteger)uid
4977 options:(AgoraVideoSubscriptionOptions* _Nonnull)options NS_SWIFT_NAME(setRemoteVideoSubscriptionOptions(_:options:));
4988 - (int)setRemoteDefaultVideoStreamType:(AgoraVideoStreamType)streamType NS_SWIFT_NAME(setRemoteDefaultVideoStreamType(_:));
4989
4990 #pragma mark Subscribe Blocklist / Allowlist
4991
5005 - (int)setSubscribeAudioBlocklist:(NSArray <NSNumber *> *_Nonnull)blocklist NS_SWIFT_NAME(setSubscribeAudioBlocklist(_:));
5006
5022 - (int)setSubscribeAudioAllowlist:(NSArray <NSNumber *> *_Nonnull)allowlist NS_SWIFT_NAME(setSubscribeAudioAllowlist(_:));
5023
5037 - (int)setSubscribeVideoBlocklist:(NSArray <NSNumber *> *_Nonnull)blocklist NS_SWIFT_NAME(setSubscribeVideoBlocklist(_:));
5038
5054 - (int)setSubscribeVideoAllowlist:(NSArray <NSNumber *> *_Nonnull)allowlist NS_SWIFT_NAME(setSubscribeVideoAllowlist(_:));
5055
5056 #pragma mark Stream Fallback
5057
5080 - (int)setLocalPublishFallbackOption:(AgoraStreamFallbackOptions)option NS_SWIFT_NAME(setLocalPublishFallbackOption(_:));
5081
5093 - (int)setRemoteSubscribeFallbackOption:(AgoraStreamFallbackOptions)option NS_SWIFT_NAME(setRemoteSubscribeFallbackOption(_:));
5094
5106 - (int)setHighPriorityUserList:(NSArray <NSNumber *> *_Nullable)uidList
5107 option:(AgoraStreamFallbackOptions)option;
5108
5109 #pragma mark Video Quality Control
5110
5126 - (int)setVideoQualityParameters:(BOOL)preferFrameRateOverImageQuality NS_SWIFT_NAME(setVideoQualityParameters(_:));
5127
5128 #pragma mark External Media Source
5129
5154 - (void)setExternalVideoSource:(BOOL)enable useTexture:(BOOL)useTexture sourceType:(AgoraExternalVideoSourceType)sourceType NS_SWIFT_NAME(setExternalVideoSource(_:useTexture:sourceType:));
5155
5175 - (void)setExternalVideoSource:(BOOL)enable useTexture:(BOOL)useTexture
5176 sourceType:(AgoraExternalVideoSourceType)sourceType
5177 encodedVideoTrackOption:(AgoraEncodedVideoTrackOptions* _Nonnull)encodedVideoTrackOption NS_SWIFT_NAME(setExternalVideoSource(_:useTexture:sourceType:encodedVideoTrackOption:));
5178
5192 - (int)pushExternalEncodedVideoFrame:(NSData* _Nonnull)frame
5193 info:(AgoraEncodedVideoFrameInfo * _Nonnull)info NS_SWIFT_NAME(pushExternalEncodedVideoFrame(_:info:));
5194
5212 - (BOOL)pushExternalVideoFrame:(AgoraVideoFrame * _Nonnull)frame NS_SWIFT_NAME(pushExternalVideoFrame(_:));
5213
5214
5222 - (unsigned int)createCustomVideoTrack NS_SWIFT_NAME(createCustomVideoTrack());
5223
5231 - (unsigned int)createCustomEncodedVideoTrack:(AgoraEncodedVideoTrackOptions* _Nonnull)encodedVideoTrackOption NS_SWIFT_NAME(createCustomEncodedVideoTrack(_:));
5232
5241 - (int)destroyCustomVideoTrack:(NSUInteger)videoTrackId NS_SWIFT_NAME(destroyCustomVideoTrack(_:));
5242
5251 - (int)destroyCustomEncodedVideoTrack:(NSUInteger)videoTrackId NS_SWIFT_NAME(destroyCustomEncodedVideoTrack(_:));
5252
5253 #pragma mark External Audio Data
5254
5267 - (void)enableExternalAudioSink:(BOOL)enabled
5268 sampleRate:(NSUInteger)sampleRate
5269 channels:(NSUInteger)channels NS_SWIFT_NAME(enableExternalAudioSink(_:sampleRate:channels:));
5270
5287 - (BOOL)pullPlaybackAudioFrameRawData:(void * _Nonnull)data
5288 lengthInByte:(NSUInteger)lengthInByte NS_SWIFT_NAME(pullPlaybackAudioFrameRawData(_:lengthInByte:));
5289
5308 - (CMSampleBufferRef _Nullable)pullPlaybackAudioFrameSampleBufferByLengthInByte:(NSUInteger)lengthInByte NS_SWIFT_NAME(pullPlaybackAudioFrameSampleBufferBy(lengthInByte:));
5309
5310
5326 - (int)createCustomAudioTrack:(AgoraAudioTrackType)trackType
5327 config:(AgoraAudioTrackConfig* _Nonnull)config;
5328
5338 - (int)destroyCustomAudioTrack:(NSInteger)trackId;
5339
5354 - (int)enableCustomAudioLocalPlayback:(NSInteger)trackId enabled:(BOOL)enabled NS_SWIFT_NAME(enableCustomAudioLocalPlayback(_:enabled:));
5355
5365 - (int)pushExternalAudioFrameRawData:(void * _Nonnull)data
5366 samples:(NSInteger)samples
5367 trackId:(NSInteger)trackId
5368 timestamp:(NSTimeInterval)timestamp NS_SWIFT_NAME(pushExternalAudioFrameRawData(_:samples:trackId:timestamp:));
5369
5383 - (int)pushExternalAudioFrameRawData:(void* _Nonnull)data
5384 samples:(NSInteger)samples
5385 sampleRate:(NSInteger)sampleRate
5386 channels:(NSInteger)channels
5387 trackId:(NSInteger)trackId
5388 timestamp:(NSTimeInterval)timestamp NS_SWIFT_NAME(pushExternalAudioFrameRawData(_:samples:sampleRate:channels:trackId:timestamp:));
5397 - (int)pushExternalAudioFrameSampleBuffer:(CMSampleBufferRef _Nonnull)sampleBuffer NS_SWIFT_NAME(pushExternalAudioFrameSampleBuffer(_:));
5398
5409 - (int)enableExternalAudioSourceLocalPlayback:(BOOL)enable NS_SWIFT_NAME(enableExternalAudioSourceLocalPlayback(_:));
5410
5434 - (int)setRecordingAudioFrameParametersWithSampleRate:(NSInteger)sampleRate
5435 channel:(NSInteger)channel
5436 mode:(AgoraAudioRawFrameOperationMode)mode
5437 samplesPerCall:(NSInteger)samplesPerCall NS_SWIFT_NAME(setRecordingAudioFrameParametersWithSampleRate(_:channel:mode:samplesPerCall:));
5462 - (int)setPlaybackAudioFrameParametersWithSampleRate:(NSInteger)sampleRate
5463 channel:(NSInteger)channel
5464 mode:(AgoraAudioRawFrameOperationMode)mode
5465 samplesPerCall:(NSInteger)samplesPerCall NS_SWIFT_NAME(setPlaybackAudioFrameParametersWithSampleRate(_:channel:mode:samplesPerCall:));
5466
5484 - (int)setMixedAudioFrameParametersWithSampleRate:(NSInteger)sampleRate
5485 channel:(NSInteger)channel
5486 samplesPerCall:(NSInteger)samplesPerCall NS_SWIFT_NAME(setMixedAudioFrameParametersWithSampleRate(_:channel:samplesPerCall:));
5487
5512 - (int)setEarMonitoringAudioFrameParametersWithSampleRate:(NSInteger)sampleRate
5513 channel:(NSInteger)channel
5514 mode:(AgoraAudioRawFrameOperationMode)mode
5515 samplesPerCall:(NSInteger)samplesPerCall NS_SWIFT_NAME(setEarMonitoringAudioFrameParametersWithSampleRate(_:channel:mode:samplesPerCall:));
5516
5517
5531 - (int)setPlaybackAudioFrameBeforeMixingParametersWithSampleRate:(NSInteger)sampleRate
5532 channel:(NSInteger)channel NS_SWIFT_NAME(setPlaybackAudioFrameBeforeMixingParametersWithSampleRate(_:channel:));
5533 /*
5534 * Adjust the custom audio publish volume by track id.
5535 * @param trackId custom audio track id.
5536 * @param volume The volume, range is [0,100]:
5537 * 0: mute, 100: The original volume
5538 * @return
5539 * - 0: Success.
5540 * - < 0: Failure.
5541 */
5542 - (int)adjustCustomAudioPublishVolume:(NSInteger)trackId volume:(NSInteger)volume NS_SWIFT_NAME(adjustCustomAudioPublishVolume(_:volume:));
5543
5544 /*
5545 * Adjust the custom audio playout volume by track id.
5546 * @param trackId custom audio track id.
5547 * @param volume The volume, range is [0,100]:
5548 * 0: mute, 100: The original volume
5549 * @return
5550 * - 0: Success.
5551 * - < 0: Failure.
5552 */
5553 - (int)adjustCustomAudioPlayoutVolume:(NSInteger)trackId volume:(NSInteger)volume NS_SWIFT_NAME(adjustCustomAudioPlayoutVolume(_:volume:));
5554
5555 /*
5556 * Get monotonic time in ms which can be used by capture time,
5557 * typical scenario is as follows:
5558 *
5559 * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
5560 * | // custom audio/video base capture time, e.g. the first audio/video capture time. |
5561 * | int64_t custom_capture_time_base; |
5562 * | |
5563 * | int64_t agora_monotonic_time = getAgoraCurrentMonotonicTimeInMs(); |
5564 * | |
5565 * | // offset is fixed once calculated in the begining. |
5566 * | const int64_t offset = agora_monotonic_time - custom_capture_time_base; |
5567 * | |
5568 * | // realtime_custom_audio/video_capture_time is the origin capture time that customer provided.|
5569 * | // actual_audio/video_capture_time is the actual capture time transfered to sdk. |
5570 * | int64_t actual_audio_capture_time = realtime_custom_audio_capture_time + offset; |
5571 * | int64_t actual_video_capture_time = realtime_custom_video_capture_time + offset; |
5572 * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
5573 *
5574 * @return
5575 * - >= 0: Success.
5576 * - < 0: Failure.
5577 */
5578 - (int64_t)getCurrentMonotonicTimeInMs NS_SWIFT_NAME(getCurrentMonotonicTimeInMs());
5579
5580 #pragma mark Audio spectrum monitor
5581
5592 - (int)enableAudioSpectrumMonitor:(int)intervalInMS NS_SWIFT_NAME(enableAudioSpectrumMonitor(_:));
5593
5601 - (int)disableAudioSpectrumMonitor NS_SWIFT_NAME(disableAudioSpectrumMonitor());
5602
5615 - (int)registerAudioSpectrumDelegate:(id<AgoraAudioSpectrumDelegate> _Nullable )delegate NS_SWIFT_NAME(registerAudioSpectrumDelegate(_:));
5616
5625 - (int)unregisterAudioSpectrumDelegate:(id<AgoraAudioSpectrumDelegate> _Nullable)delegate NS_SWIFT_NAME(unregisterAudioSpectrumDelegate(_:));
5626
5627 #pragma mark Built-in Encryption
5628
5658 - (int)enableEncryption:(bool)enabled encryptionConfig:(AgoraEncryptionConfig * _Nonnull)config NS_SWIFT_NAME(enableEncryption(_:encryptionConfig:));
5659
5660
5661 #pragma mark Data Stream
5662
5686 - (int)createDataStream:(NSInteger * _Nonnull)streamId
5687 reliable:(BOOL)reliable
5688 ordered:(BOOL)ordered NS_SWIFT_NAME(createDataStream(_:reliable:ordered:));
5698 - (int)createDataStream:(NSInteger * _Nonnull)streamId
5699 config:(AgoraDataStreamConfig * _Nonnull)config NS_SWIFT_NAME(createDataStream(_:config:));
5723 - (int)sendStreamMessage:(NSInteger)streamId
5724 data:(NSData * _Nonnull)data NS_SWIFT_NAME(sendStreamMessage(_:data:));
5725
5726 #pragma mark Stream Publish
5727
5745 - (int)startRtmpStreamWithoutTranscoding:(NSString* _Nonnull)url NS_SWIFT_NAME(startRtmpStreamWithoutTranscoding(_:));
5746
5759 - (int)startRtmpStreamWithTranscoding:(NSString* _Nonnull)url transcoding:(AgoraLiveTranscoding* _Nullable)transcoding NS_SWIFT_NAME(startRtmpStream(withTranscoding:transcoding:));
5760
5777 - (int)updateRtmpTranscoding:(AgoraLiveTranscoding* _Nullable)transcoding NS_SWIFT_NAME(updateRtmpTranscoding(_:));
5778
5796 - (int)stopRtmpStream:(NSString* _Nonnull)url NS_SWIFT_NAME(stopRtmpStream(_:));
5797
5798 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
5799 #pragma mark Screen Capture
5800
5814 - (int)startScreenCapture:(AgoraVideoSourceType)sourceType config:(AgoraScreenCaptureConfiguration * _Nullable)config NS_SWIFT_NAME(startScreenCapture(_:config:));
5815
5825 - (int)stopScreenCapture:(AgoraVideoSourceType)sourceType NS_SWIFT_NAME(stopScreenCapture(_:));
5826
5846 - (int)startScreenCaptureByDisplayId:(UInt32)displayId
5847 regionRect:(CGRect)regionRect
5848 captureParams:(AgoraScreenCaptureParameters *_Nonnull)captureParams NS_SWIFT_NAME(startScreenCapture(byDisplayId:regionRect:captureParams:));
5849
5869 - (int)startScreenCaptureByWindowId:(UInt32)windowId
5870 regionRect:(CGRect)regionRect
5871 captureParams:(AgoraScreenCaptureParameters *_Nonnull)captureParams NS_SWIFT_NAME(startScreenCapture(byWindowId:regionRect:captureParams:));
5872
5882 - (int)updateScreenCaptureRegion:(CGRect)rect NS_SWIFT_NAME(updateScreenCaptureRegion(_:));
5883
5893 - (int)updateScreenCaptureParameters:(AgoraScreenCaptureParameters * _Nonnull)captureParams NS_SWIFT_NAME(updateScreenCaptureParameters(_:));
5894
5925 - (NSArray<AgoraScreenCaptureSourceInfo*>* _Nullable)getScreenCaptureSourcesWithThumbSize:(NSSize)thumbSize iconSize:(NSSize)iconSize includeScreen:(BOOL)includeScreen NS_SWIFT_NAME(getScreenCaptureSources(withThumbSize:iconSize:includeScreen:));
5926
5927 #endif
5928
5938 - (int)setScreenCaptureScenario:(AgoraScreenScenarioType)scenarioType NS_SWIFT_NAME(setScreenCaptureScenario(_:));
5939
5947 - (int)stopScreenCapture NS_SWIFT_NAME(stopScreenCapture());
5948
5949 #if TARGET_OS_IPHONE
5950
5969 - (int)startScreenCapture:(AgoraScreenCaptureParameters2* _Nullable)parameters NS_SWIFT_NAME(startScreenCapture(_:));
5970
5980 - (int)updateScreenCapture:(AgoraScreenCaptureParameters2* _Nullable)parameters NS_SWIFT_NAME(updateScreenCapture(_:));
5981
5993 - (AgoraScreenCaptureFrameRateCapability)queryScreenCaptureCapability NS_SWIFT_NAME(queryScreenCaptureCapability());
5994
5995 #pragma mark Camera Control
5996
6009 - (BOOL)isCameraZoomSupported NS_SWIFT_NAME(isCameraZoomSupported());
6010
6017 - (CGFloat)cameraMaxZoomFactor NS_SWIFT_NAME(cameraMaxZoomFactor());
6018
6025 - (CGFloat)setCameraZoomFactor:(CGFloat)zoomFactor NS_SWIFT_NAME(setCameraZoomFactor(_:));
6026
6034 - (BOOL)isCameraFocusPositionInPreviewSupported NS_SWIFT_NAME(isCameraFocusPositionInPreviewSupported());
6035
6043 - (BOOL)setCameraFocusPositionInPreview:(CGPoint)position NS_SWIFT_NAME(setCameraFocusPositionInPreview(_:));
6044
6052 - (BOOL)isCameraExposurePositionSupported NS_SWIFT_NAME(isCameraExposurePositionSupported());
6053
6061 - (BOOL)setCameraExposurePosition:(CGPoint)positionInView NS_SWIFT_NAME(setCameraExposurePosition(_:));
6062
6071 - (BOOL)isCameraExposureSupported NS_SWIFT_NAME(isCameraExposureSupported());
6072
6080 - (CGFloat)setCameraExposureFactor:(CGFloat)exposureFactor NS_SWIFT_NAME(setCameraExposureFactor(_:));
6081
6102 - (BOOL)isCameraTorchSupported NS_SWIFT_NAME(isCameraTorchSupported());
6103
6120 - (BOOL)setCameraTorchOn:(BOOL)isOn NS_SWIFT_NAME(setCameraTorchOn(_:));
6121
6129 - (BOOL)isCameraAutoFocusFaceModeSupported NS_SWIFT_NAME(isCameraAutoFocusFaceModeSupported());
6130
6142 - (BOOL)setCameraAutoFocusFaceModeEnabled:(BOOL)enable NS_SWIFT_NAME(setCameraAutoFocusFaceModeEnabled(_:));
6143
6151 - (BOOL)isCameraAutoExposureFaceModeSupported NS_SWIFT_NAME(isCameraAutoExposureFaceModeSupported());
6152
6164 - (BOOL)setCameraAutoExposureFaceModeEnabled:(BOOL)enable NS_SWIFT_NAME(setCameraAutoExposureFaceModeEnabled(_:));
6165
6174 - (int)switchCamera NS_SWIFT_NAME(switchCamera());
6175
6185 - (int)enableMultiCamera:(BOOL)enabled config:(AgoraCameraCapturerConfiguration* _Nullable)config NS_SWIFT_NAME(enableMultiCamera(_:config:));
6186
6195 - (int) setCameraStabilizationMode:(AgoraCameraStabilizationMode)mode NS_SWIFT_NAME(setCameraStabilizationMode(_:));
6196 #endif
6197
6202 - (BOOL)isSupportPortraitCenterStage NS_SWIFT_NAME(isSupportPortraitCenterStage());
6203
6212 - (int)enablePortraitCenterStage:(BOOL)enabled NS_SWIFT_NAME(enablePortraitCenterStage(_:));
6213
6225 - (int)setCameraCapturerConfiguration:(AgoraCameraCapturerConfiguration * _Nullable)config NS_SWIFT_NAME(setCameraCapturerConfiguration(_:));
6226
6227
6236 - (int)startCameraCapture:(AgoraVideoSourceType)sourceType config:(AgoraCameraCapturerConfiguration * _Nullable)config NS_SWIFT_NAME(startCameraCapture(_:config:));
6237
6246 - (int)stopCameraCapture:(AgoraVideoSourceType)sourceType NS_SWIFT_NAME(stopCameraCapture(_:));
6247
6248 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
6249 #pragma mark macOS Device
6250
6262 - (void)monitorDeviceChange:(BOOL)enabled NS_SWIFT_NAME(monitorDeviceChange(_:));
6263
6276 - (NSArray<AgoraRtcDeviceInfo *> * _Nullable)enumerateDevices:(AgoraMediaDeviceType)type NS_SWIFT_NAME(enumerateDevices(_:));
6277
6285 - (AgoraRtcDeviceInfo * _Nullable)getDeviceInfo:(AgoraMediaDeviceType)type NS_SWIFT_NAME(getDeviceInfo(_:));
6286
6297 - (int)setDevice:(AgoraMediaDeviceType)type deviceId:(NSString * _Nonnull)deviceId NS_SWIFT_NAME(setDevice(_:deviceId:));
6298
6305 - (AgoraRtcDeviceInfo* _Nullable)getDefaultAudioDevice:(AgoraMediaDeviceType)type NS_SWIFT_NAME(getDefaultAudioDevice(_:));
6306
6315 - (int)getDeviceVolume:(AgoraMediaDeviceType)type NS_SWIFT_NAME(getDeviceVolume(_:));
6316
6326 - (int)setDeviceVolume:(AgoraMediaDeviceType)type volume:(int)volume NS_SWIFT_NAME(setDeviceVolume(_:volume:));
6327
6338 - (int)startRecordingDeviceTest:(int)indicationInterval NS_SWIFT_NAME(startRecordingDeviceTest(_:));
6339
6349 - (int)stopRecordingDeviceTest NS_SWIFT_NAME(stopRecordingDeviceTest());
6350
6365 - (int)startPlaybackDeviceTest:(NSString * _Nonnull)audioFileName NS_SWIFT_NAME(startPlaybackDeviceTest(_:));
6366
6376 - (int)stopPlaybackDeviceTest NS_SWIFT_NAME(stopPlaybackDeviceTest());
6377
6391 - (int)startAudioDeviceLoopbackTest:(int)indicationInterval NS_SWIFT_NAME(startAudioDeviceLoopbackTest(_:));
6392
6400 - (int)stopAudioDeviceLoopbackTest NS_SWIFT_NAME(stopAudioDeviceLoopbackTest());
6401
6413 - (int)followSystemPlaybackDevice:(BOOL)enable NS_SWIFT_NAME(followSystemPlaybackDevice(_:));
6414
6426 - (int)followSystemRecordingDevice:(BOOL)enable NS_SWIFT_NAME(followSystemRecordingDevice(_:));
6427
6436 - (int)startCaptureDeviceTest:(NSView * _Nonnull)view NS_SWIFT_NAME(startCaptureDeviceTest(_:));
6437
6444 - (int)stopCaptureDeviceTest NS_SWIFT_NAME(stopCaptureDeviceTest());
6445 #endif
6446
6447 #pragma mark Face Detection
6448
6449 #if TARGET_OS_IPHONE
6450
6474 - (int)enableFaceDetection:(bool)enable NS_SWIFT_NAME(enableFaceDetection(_:));
6475 #endif
6476
6477 #pragma mark Watermark
6478
6490 - (int)addVideoWatermark:(AgoraImage * _Nonnull)watermark NS_SWIFT_NAME(addVideoWatermark(_:)) __deprecated_msg("use addVideoWatermark:url options instead.");
6491
6517 - (int)addVideoWatermark:(NSURL* _Nonnull)url options:(WatermarkOptions* _Nonnull)options NS_SWIFT_NAME(addVideoWatermark(_:options:));
6518
6523 - (int)clearVideoWatermarks NS_SWIFT_NAME(clearVideoWatermarks());
6524
6525 #pragma mark String UID
6526
6559 - (int)registerLocalUserAccount:(NSString* _Nonnull)userAccount appId:(NSString* _Nonnull)appId NS_SWIFT_NAME(registerLocalUserAccount(_:appId:));
6560
6595 - (int)joinChannelByToken:(NSString * _Nullable)token
6596 channelId:(NSString * _Nonnull)channelId
6597 userAccount:(NSString * _Nonnull)userAccount
6598 joinSuccess:(void(^ _Nullable)(NSString * _Nonnull channel, NSUInteger uid, NSInteger elapsed))joinSuccessBlock NS_SWIFT_NAME(joinChannel(byToken:channelId:userAccount:joinSuccess:));
6599
6635 - (int)joinChannelByToken:(NSString * _Nullable)token
6636 channelId:(NSString * _Nonnull)channelId
6637 userAccount:(NSString * _Nonnull)userAccount
6638 mediaOptions:(AgoraRtcChannelMediaOptions * _Nonnull)mediaOptions
6639 joinSuccess:(void(^ _Nullable)(NSString * _Nonnull channel, NSUInteger uid, NSInteger elapsed))joinSuccessBlock NS_SWIFT_NAME(joinChannel(byToken:channelId:userAccount:mediaOptions:joinSuccess:));
6640
6651 - (AgoraUserInfo* _Nullable)getUserInfoByUserAccount:(NSString* _Nonnull)userAccount withError:(AgoraErrorCode* _Nullable)error NS_SWIFT_NAME(getUserInfo(byUserAccount:withError:));
6652
6663 - (AgoraUserInfo* _Nullable)getUserInfoByUid:(NSUInteger)uid withError:(AgoraErrorCode* _Nullable)error NS_SWIFT_NAME(getUserInfo(byUid:withError:));
6664
6665 #pragma mark Custom Audio PCM Frame
6666
6673 - (BOOL)setAudioFrameDelegate:(id<AgoraAudioFrameDelegate> _Nullable)delegate NS_SWIFT_NAME(setAudioFrameDelegate(_:));
6674
6675 #pragma mark Custom Video Frame
6676
6688 - (BOOL)setVideoFrameDelegate:(id<AgoraVideoFrameDelegate> _Nullable)delegate NS_SWIFT_NAME(setVideoFrameDelegate(_:));
6689
6690 #pragma mark Encoded Video Frame
6691
6703 - (BOOL)setEncodedVideoFrameDelegate:(id<AgoraEncodedVideoFrameDelegate> _Nullable)delegate NS_SWIFT_NAME(setEncodedVideoFrameDelegate(_:));
6704
6705 #pragma mark Custom Face Info
6706
6713 - (BOOL)setFaceInfoDelegate:(id<AgoraFaceInfoDelegate> _Nullable)delegate NS_SWIFT_NAME(setFaceInfoDelegate(_:));
6714
6715 #pragma mark Custom Media Metadata
6716
6739 - (BOOL)setMediaMetadataDataSource:(id<AgoraMediaMetadataDataSource> _Nullable)metadataDataSource withType:(AgoraMetadataType)type NS_SWIFT_NAME(setMediaMetadataDataSource(_:with:));
6740
6756 - (BOOL)setMediaMetadataDelegate:(id<AgoraMediaMetadataDelegate> _Nullable)metadataDelegate withType:(AgoraMetadataType)type NS_SWIFT_NAME(setMediaMetadataDelegate(_:with:));
6757
6758 #pragma mark Miscellaneous Methods
6759
6770 + (NSString * _Nonnull)getSdkVersion NS_SWIFT_NAME(getSdkVersion());
6771
6777 + (NSString* _Nonnull)getErrorDescription:(NSInteger)error NS_SWIFT_NAME(getErrorDescription(_:));
6778
6779
6784 - (void * _Nullable)getNativeHandle NS_SWIFT_NAME(getNativeHandle());
6785
6786
6810 - (int)setLogFile:(NSString * _Nonnull)filePath NS_SWIFT_NAME(setLogFile(_:));
6811
6826 - (int)setLogFilter:(NSUInteger)filter NS_SWIFT_NAME(setLogFilter(_:));
6827
6842 - (int)setLogFileSize:(NSUInteger)fileSizeInKBytes NS_SWIFT_NAME(setLogFileSize(_:));
6843
6851 - (NSString * _Nullable)uploadLogFile NS_SWIFT_NAME(uploadLogFile());
6852
6863 - (int)writeLog:(AgoraLogLevel)level content:(NSString * _Nonnull)content NS_SWIFT_NAME(writeLog(_:content:));
6864
6875 - (NSString * _Nullable)getCallId NS_SWIFT_NAME(getCallId());
6876
6897 - (int)rate:(NSString * _Nonnull)callId
6898 rating:(NSInteger)rating
6899 description:(NSString * _Nullable)description NS_SWIFT_NAME(rate(_:rating:description:));
6900
6918 - (int)complain:(NSString * _Nonnull)callId
6919 description:(NSString * _Nullable)description NS_SWIFT_NAME(complain(_:description:));
6920
6921
6932 - (int)enableMainQueueDispatch:(BOOL)enabled NS_SWIFT_NAME(enableMainQueueDispatch(_:));
6933
6934
6955 - (int)startLastmileProbeTest:(AgoraLastmileProbeConfig *_Nullable)config NS_SWIFT_NAME(startLastmileProbeTest(_:));
6956
6964 - (int)stopLastmileProbeTest NS_SWIFT_NAME(stopLastmileProbeTest());
6965
6972 - (int)setParameters:(NSString * _Nonnull)options NS_SWIFT_NAME(setParameters(_:));
6973
6979 - (NSString * _Nullable)getParameter:(NSString * _Nonnull)parameter
6980 args:(NSString * _Nullable)args NS_SWIFT_NAME(getParameter(_:args:));
6981
6982
6986 - (uint64_t)getNtpWallTimeInMs;
6987
6988 #pragma mark MediaPlayer
6989
6998 - (id<AgoraRtcMediaPlayerProtocol>_Nullable)createMediaPlayerWithDelegate:(id<AgoraRtcMediaPlayerDelegate>_Nullable)delegate NS_SWIFT_NAME(createMediaPlayer(with:));
7003 - (id<AgoraRtcMediaPlayerCacheManagerProtocol> _Nullable)createMediaPlayerCacheManager NS_SWIFT_NAME(createMediaPlayerCacheManager());
7004
7016 - (int)destroyMediaPlayer:(id<AgoraRtcMediaPlayerProtocol>_Nullable)mediaPlayer NS_SWIFT_NAME(destroyMediaPlayer(_:));
7017
7027 - (int)destroyMediaRecorder:(AgoraMediaRecorder * _Nullable)mediaRecorder;
7033 - (id<AgoraRtcMediaPlayerProtocol> _Nullable)getMediaPlayer:(int)mediaPlayerId NS_SWIFT_NAME(getMediaPlayer(_:));
7034
7035 #pragma mark rhythm player
7036
7047 - (int)startRhythmPlayer:(NSString * _Nonnull)sound1 sound2:(NSString * _Nonnull)sound2 config:(AgoraRhythmPlayerConfig * _Nullable)config NS_SWIFT_NAME(startRhythmPlayer(_:sound2:config:));
7048
7055 - (int)stopRhythmPlayer NS_SWIFT_NAME(stopRhythmPlayer());
7056
7065 - (int)configRhythmPlayer:(AgoraRhythmPlayerConfig * _Nullable)config NS_SWIFT_NAME(configRhythmPlayer(_:));
7066
7067 #pragma mark Streaming Kit
7068
7081 - (int)setDirectCdnStreamingAudioConfiguration:(AgoraAudioProfile)profile NS_SWIFT_NAME(setDirectCdnStreamingAudioConfiguration(_:));
7082
7097 - (int)setDirectCdnStreamingVideoConfiguration:(AgoraVideoEncoderConfiguration * _Nonnull)config NS_SWIFT_NAME(setDirectCdnStreamingVideoConfiguration(_:));
7098
7112 - (int)startDirectCdnStreaming:(id<AgoraDirectCdnStreamingEventDelegate> _Nonnull)delegate
7113 publishUrl:(NSString * _Nonnull)publishUrl
7114 mediaOptions:(AgoraDirectCdnStreamingMediaOptions * _Nonnull)options NS_SWIFT_NAME(startDirectCdnStreaming(_:publishUrl:mediaOptions:));
7115
7125 - (int)stopDirectCdnStreaming NS_SWIFT_NAME(stopDirectCdnStreaming());
7126
7136 - (int)updateDirectCdnStreamingMediaOptions:(AgoraDirectCdnStreamingMediaOptions * _Nonnull)options NS_SWIFT_NAME(updateDirectCdnStreamingMediaOptions(_:));
7137
7138
7139 #pragma mark Channel Transcoder
7140
7145 - (id<AgoraH265TranscoderProtocol>_Nullable)getH265Transcoder NS_SWIFT_NAME(getH265Transcoder());
7146
7147 #pragma mark Deprecated Methods
7148
7165 - (void)audioVolumeIndicationBlock:(void(^ _Nullable)(NSArray * _Nonnull speakers, NSInteger totalVolume))audioVolumeIndicationBlock NS_SWIFT_NAME(audioVolumeIndicationBlock(_:)) __deprecated_msg("use delegate instead.");
7166
7175 - (void)firstLocalVideoFrameBlock:(void(^ _Nullable)(NSInteger width, NSInteger height, NSInteger elapsed))firstLocalVideoFrameBlock NS_SWIFT_NAME(firstLocalVideoFrameBlock(_:)) __deprecated_msg("use delegate instead.");
7176
7187 - (void)firstRemoteVideoDecodedBlock:(void(^ _Nullable)(NSUInteger uid, NSInteger width, NSInteger height, NSInteger elapsed))firstRemoteVideoDecodedBlock NS_SWIFT_NAME(firstRemoteVideoDecodedBlock(_:)) __deprecated_msg("use delegate instead.");
7188
7198 - (void)firstRemoteVideoFrameBlock:(void(^ _Nullable)(NSUInteger uid, NSInteger width, NSInteger height, NSInteger elapsed))firstRemoteVideoFrameBlock NS_SWIFT_NAME(firstRemoteVideoFrameBlock(_:)) __deprecated_msg("use delegate instead.");
7199
7209 - (void)userJoinedBlock:(void(^ _Nullable)(NSUInteger uid, NSInteger elapsed))userJoinedBlock NS_SWIFT_NAME(userJoinedBlock(_:)) __deprecated_msg("use delegate instead.");
7210
7219 - (void)userOfflineBlock:(void(^ _Nullable)(NSUInteger uid))userOfflineBlock NS_SWIFT_NAME(userOfflineBlock(_:)) __deprecated_msg("use delegate instead.");
7220
7230 - (void)userMuteAudioBlock:(void(^ _Nullable)(NSUInteger uid, BOOL muted))userMuteAudioBlock NS_SWIFT_NAME(userMuteAudioBlock(_:)) __deprecated_msg("use delegate instead.");
7231
7246 - (void)userMuteVideoBlock:(void(^ _Nullable)(NSUInteger uid, BOOL muted))userMuteVideoBlock NS_SWIFT_NAME(userMuteVideoBlock(_:)) __deprecated_msg("use delegate instead.");
7247
7255 - (void)localVideoStatBlock:(void(^ _Nullable)(NSInteger sentBitrate, NSInteger sentFrameRate))localVideoStatBlock NS_SWIFT_NAME(localVideoStatBlock(_:)) __deprecated_msg("use delegate instead.");
7256
7266 - (void)remoteVideoStatBlock:(void(^ _Nullable)(NSUInteger uid, NSInteger delay, NSInteger receivedBitrate, NSInteger receivedFrameRate))remoteVideoStatBlock NS_SWIFT_NAME(remoteVideoStatBlock(_:)) __deprecated_msg("use delegate instead.");
7267
7271 - (void)cameraReadyBlock:(void(^ _Nullable)(void))cameraReadyBlock NS_SWIFT_NAME(cameraReadyBlock(_:)) __deprecated_msg("use delegate instead.");
7272
7276 - (void)connectionLostBlock:(void(^ _Nullable)(void))connectionLostBlock NS_SWIFT_NAME(connectionLostBlock(_:)) __deprecated_msg("use delegate instead.");
7277
7288 - (void)rejoinChannelSuccessBlock:(void(^ _Nullable)(NSString * _Nonnull channel, NSUInteger uid, NSInteger elapsed))rejoinChannelSuccessBlock NS_SWIFT_NAME(rejoinChannelSuccessBlock(_:)) __deprecated_msg("use delegate instead.");
7289
7296 - (void)rtcStatsBlock:(void(^ _Nullable)(AgoraChannelStats * _Nonnull stat))rtcStatsBlock NS_SWIFT_NAME(rtcStatsBlock(_:)) __deprecated_msg("use delegate instead.");
7297
7306 - (void)leaveChannelBlock:(void(^ _Nullable)(AgoraChannelStats * _Nonnull stat))leaveChannelBlock NS_SWIFT_NAME(leaveChannelBlock(_:)) __deprecated_msg("use delegate instead.");
7307
7317 - (void)audioQualityBlock:(void(^ _Nullable)(NSUInteger uid, AgoraNetworkQuality quality, NSUInteger delay, NSUInteger lost))audioQualityBlock NS_SWIFT_NAME(audioQualityBlock(_:)) __deprecated_msg("use delegate instead.");
7318
7327 - (void)networkQualityBlock:(void(^ _Nullable)(NSUInteger uid, AgoraNetworkQuality txQuality, AgoraNetworkQuality rxQuality))networkQualityBlock NS_SWIFT_NAME(networkQualityBlock(_:)) __deprecated_msg("use delegate instead.");
7328
7335 - (void)lastmileQualityBlock:(void(^ _Nullable)(AgoraNetworkQuality quality))lastmileQualityBlock NS_SWIFT_NAME(lastmileQualityBlock(_:)) __deprecated_msg("use delegate instead.");
7336
7340 - (void)mediaEngineEventBlock:(void(^ _Nullable)(NSInteger code))mediaEngineEventBlock NS_SWIFT_NAME(mediaEngineEventBlock(_:)) __deprecated_msg("use delegate instead.");
7341
7351 - (int)pauseAudio __deprecated_msg("use disableAudio instead.");
7352
7362 - (int)resumeAudio __deprecated_msg("use enableAudio instead.");
7363
7370 + (instancetype _Nonnull)sharedEngineWithAppId:(NSString * _Nonnull)AppId
7371 error:(void(^ _Nullable)(AgoraErrorCode errorCode))errorBlock NS_SWIFT_NAME(sharedEngine(withAppId:error:)) __deprecated_msg("use sharedEngineWithAppId:delegate: instead.");
7372
7378 - (int)setHighQualityAudioParametersWithFullband:(BOOL)fullband
7379 stereo:(BOOL)stereo
7380 fullBitrate:(BOOL)fullBitrate NS_SWIFT_NAME(setHighQualityAudioParametersWithFullband(_:stereo:fullBitrate:)) __deprecated_msg("use setAudioProfile:scenario: instead.");
7381
7399 - (int)setVideoProfile:(AgoraVideoProfile)profile
7400 swapWidthAndHeight:(BOOL)swapWidthAndHeight NS_SWIFT_NAME(setVideoProfile(_:swapWidthAndHeight:)) __deprecated_msg("use setVideoEncoderConfiguration: instead.");
7401
7420 - (int)setVideoResolution:(CGSize)size andFrameRate:(NSInteger)frameRate bitrate:(NSInteger)bitrate NS_SWIFT_NAME(setVideoResolution(_:andFrameRate:bitrate:)) __deprecated_msg("use setVideoEncoderConfiguration: instead.");
7421
7440 - (int)setAudioProfile:(AgoraAudioProfile)profile scenario:(AgoraAudioScenario)scenario NS_SWIFT_NAME(setAudioProfile(_:scenario:)) __deprecated_msg("use setAudioProfile: instead.");
7441
7449 - (NSString * _Nullable)getDeviceId:(AgoraMediaDeviceType)type NS_SWIFT_NAME(getDeviceId(_:)) __deprecated_msg("use getDeviceInfo: instead.");
7450
7471 - (int)setExternalAudioSource:(BOOL)enabled
7472 sampleRate:(NSInteger)sampleRate
7473 channels:(NSInteger)channels NS_SWIFT_NAME(setExternalAudioSource(_:sampleRate:channels:)) __deprecated_msg("use createCustomAudioTrack:config: instead.");
7474
7501 - (int)setExternalAudioSource:(BOOL)enabled
7502 sampleRate:(NSInteger)sampleRate
7503 channels:(NSInteger)channels
7504 localPlayback:(BOOL)localPlayback
7505 publish:(BOOL)publish NS_SWIFT_NAME(setExternalAudioSource(_:sampleRate:channels:localPlayback:publish:)) __deprecated_msg("use createCustomAudioTrack:config: instead.");
7506
7507 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
7508
7517 - (int)setSpeakerphoneVolume:(NSUInteger)volume NS_SWIFT_NAME(setSpeakerphoneVolume(_:)) __deprecated_msg("use setDeviceVolume:volume: instead.");
7518
7519 - (int)startScreenCapture:(NSUInteger)windowId
7520 withCaptureFreq:(NSInteger)captureFreq
7521 bitRate:(NSInteger)bitRate
7522 andRect:(CGRect)rect NS_SWIFT_NAME(startScreenCapture(_:withCaptureFreq:bitRate:andRect:)) __deprecated_msg("use startScreenCaptureByWindowId:regionRect:captureParams: instead.");
7523 #endif
7524
7530 + (NSString * _Nonnull)getMediaEngineVersion NS_SWIFT_NAME(getMediaEngineVersion()) __deprecated;
7531
7539 - (int)setAdvancedAudioOptions:(AgoraAdvancedAudioOptions * _Nonnull)options NS_SWIFT_NAME(setAdvancedAudioOptions(_:));
7540
7541 - (BOOL)isSecure NS_SWIFT_NAME(isSecure());
7542
7543
7553 - (int)sendCustomReportMessage:(NSString * _Nullable)messageId
7554 category:(NSString * _Nullable)category
7555 event:(NSString * _Nullable)event
7556 label:(NSString * _Nullable)label
7557 value:(NSInteger)value NS_SWIFT_NAME(sendCustomReportMessage(_:category:event:label:value:));
7573 - (int)setLogLevel:(AgoraLogLevel)level NS_SWIFT_NAME(setLogLevel(_:));
7574
7590 - (int)setEncryptionMode:(NSString * _Nullable)encryptionMode NS_SWIFT_NAME(setEncryptionMode(_:)) __deprecated_msg("use enableEncryption: instead.");
7591
7606 - (int)setEncryptionSecret:(NSString * _Nullable)secret NS_SWIFT_NAME(setEncryptionSecret(_:)) __deprecated_msg("use enableEncryption: instead.");
7607
7615 - (int)setLocalAccessPoint:(AgoraLocalAccessPointConfiguration* _Nonnull)config NS_SWIFT_NAME(setLocalAccessPoint(withConfig:));
7616
7655 - (int)setCloudProxy:(AgoraCloudProxyType)proxyType NS_SWIFT_NAME(setCloudProxy(_:));
7656
7657 - (NSInteger)takeSnapshot:(NSInteger)uid filePath:(NSString* _Nonnull)filePath NS_SWIFT_NAME(takeSnapshot(_:filePath:));
7658
7659 - (int)enableContentInspect:(BOOL)enabled config:(AgoraContentInspectConfig* _Nonnull)config NS_SWIFT_NAME(enableContentInspect(_:config:));
7660
7671 - (int)setAVSyncSource:(NSString* _Nonnull)channelId uid:(NSUInteger)uid NS_SWIFT_NAME(setAVSyncSource(_:uid:));
7672
7679 - (int)enableVideoImageSource:(BOOL)enable
7680 options:(AgoraImageTrackOptions *_Nullable)options NS_SWIFT_NAME(enableVideoImageSource(_:options:));
7693 - (int)getNetworkType NS_SWIFT_NAME(getNetworkType());
7694
7705 - (AgoraMediaRecorder * _Nullable)createMediaRecorder:(AgoraRecorderStreamInfo * _Nonnull)info NS_SWIFT_NAME(createMediaRecorder(withInfo:));
7711 - (void)addDelegate:(id<AgoraRtcEngineDelegate> _Nonnull)delegate NS_SWIFT_NAME(addDelegate(_:));
7712
7718 - (void)removeDelegate:(id<AgoraRtcEngineDelegate> _Nonnull)delegate NS_SWIFT_NAME(removeDelegate(_:));
7719
7720 @end
7721
7722 @class AgoraMediaRecorder;
7723 @protocol AgoraMediaRecorderDelegate <NSObject>
7724 #pragma mark Media Recorder Delegate Methods
7725
7743 - (void)mediaRecorder:(AgoraMediaRecorder* _Nonnull)recorder stateDidChanged:(NSString * _Nonnull)channelId uid:(NSUInteger)uid state:(AgoraMediaRecorderState)state error:(AgoraMediaRecorderErrorCode)error;
7744
7758 - (void)mediaRecorder:(AgoraMediaRecorder* _Nonnull)recorder informationDidUpdated:(NSString * _Nonnull)channelId uid:(NSUInteger)uid info:(AgoraMediaRecorderInfo* _Nonnull)info;
7759
7760 @end
7761
7762 __attribute__((visibility("default"))) @interface AgoraMediaRecorder : NSObject
7763
7777 - (int)setMediaRecorderDelegate:(id<AgoraMediaRecorderDelegate> _Nullable)delegate NS_SWIFT_NAME(setMediaRecorderDelegate(_:));
7778
7788 - (int)enableMainQueueDispatch:(BOOL)enabled NS_SWIFT_NAME(enableMainQueueDispatch(_:));
7789
7833 - (int)startRecording:(AgoraMediaRecorderConfiguration* _Nonnull)config NS_SWIFT_NAME(startRecording(_:));
7852 - (int)stopRecording NS_SWIFT_NAME(stopRecording());
7853
7854 @end
7855
7856
-[AgoraRtcEngineKit enableAudio]
int enableAudio()
AgoraAudioTrackType
AgoraAudioTrackType
Definition: AgoraEnumerates.h:3316
AgoraRtcEngineKit::delegate
id< AgoraRtcEngineDelegate > _Nullable delegate
Definition: AgoraRtcEngineKit.h:1827
AgoraRecorderStreamInfo
Definition: AgoraObjects.h:2950
AgoraLocalVideoStreamError
AgoraLocalVideoStreamError
Definition: AgoraEnumerates.h:905
AgoraRtcEngineKit
Definition: AgoraRtcEngineKit.h:1813
AgoraRtcEngineDelegate2.h
AgoraRtcEngineDelegate-p
Definition: AgoraRtcEngineKit.h:649
AgoraMediaPlayerState
AgoraMediaPlayerState
Player state.
Definition: AgoraEnumerates.h:2735
-[AgoraRtcMediaPlayerVideoFrameDelegate-p AgoraRtcMediaPlayerGetVideoPixelFormat]
AgoraVideoFormat AgoraRtcMediaPlayerGetVideoPixelFormat()
AgoraFacePositionInfo
Definition: AgoraObjects.h:3088
-[AgoraRtcEngineKit getNetworkType]
int getNetworkType()
-[AgoraRtcEngineKit queryDeviceScore]
int queryDeviceScore()
-[AgoraRtcEngineKit enableInstantMediaRendering]
int enableInstantMediaRendering()
Enable instant media rendering.
AgoraConnectionChangedReason
AgoraConnectionChangedReason
Definition: AgoraEnumerates.h:2012
-[AgoraRtcEngineKit cameraMaxZoomFactor]
CGFloat cameraMaxZoomFactor()
-[AgoraRtcEngineKit stopChannelMediaRelay]
int stopChannelMediaRelay()
AgoraFaceInfoDelegate-p
Definition: AgoraRtcEngineKit.h:397
AgoraDirectCdnStreamingStats
Definition: AgoraObjects.h:151
-[AgoraRtcEngineKit getConnectionState]
AgoraConnectionState getConnectionState()
AgoraEncodedVideoTrackOptions
Definition: AgoraObjects.h:270
AgoraVideoRenderingTracingInfo
Definition: AgoraObjects.h:3327
AgoraRtcChannelMediaOptions
Definition: AgoraObjects.h:297
AgoraWlAccAction
AgoraWlAccAction
Definition: AgoraEnumerates.h:3238
AgoraVideoTranscoderError
AgoraVideoTranscoderError
Definition: AgoraEnumerates.h:3126
-[AgoraRtcEngineKit queryCodecCapability]
NSArray< AgoraVideoCodecCapInfo * > *__nullable queryCodecCapability()
AgoraAudioScenario
AgoraAudioScenario
Definition: AgoraEnumerates.h:1287
AgoraRtmpStreamingErrorCode
AgoraRtmpStreamingErrorCode
Definition: AgoraEnumerates.h:2286
AgoraEarMonitoringFilterType
AgoraEarMonitoringFilterType
Definition: AgoraEnumerates.h:2952
AgoraRhythmPlayerConfig
Definition: AgoraObjects.h:3070
AgoraBeautyOptions
Definition: AgoraObjects.h:2346
AgoraVideoSubscriptionOptions
Definition: AgoraObjects.h:2929
AgoraMediaRecorder
Definition: AgoraRtcEngineKit.h:7763
-[AgoraAudioFrameDelegate-p getObservedAudioFramePosition]
AgoraAudioFramePosition getObservedAudioFramePosition()
AgoraPermissionType
AgoraPermissionType
Definition: AgoraEnumerates.h:2907
AgoraMediaPlayerError
AgoraMediaPlayerError
Definition: AgoraEnumerates.h:2804
AgoraRtcMediaPlayerProtocol.h
AgoraOutputVideoFrame
Definition: AgoraObjects.h:2108
AgoraLicenseVerifyCode
AgoraLicenseVerifyCode
Definition: AgoraEnumerates.h:1118
AgoraAudioTrackConfig
Definition: AgoraObjects.h:3314
-[AgoraMediaMetadataDataSource-p metadataMaxSize]
NSInteger metadataMaxSize()
AgoraClientRole
AgoraClientRole
Definition: AgoraEnumerates.h:521
AgoraUserOfflineReason
AgoraUserOfflineReason
Definition: AgoraEnumerates.h:603
AgoraScreenCaptureParameters2
Definition: AgoraObjects.h:2753
AgoraAudioRemoteReason
AgoraAudioRemoteReason
Definition: AgoraEnumerates.h:1180
AgoraHeadphoneEQPreset
AgoraHeadphoneEQPreset
Definition: AgoraEnumerates.h:1716
-[AgoraVideoFrameDelegate-p getRotationApplied]
BOOL getRotationApplied()
AgoraWlAccReason
AgoraWlAccReason
Definition: AgoraEnumerates.h:3224
AgoraUplinkNetworkInfo
Definition: AgoraObjects.h:2060
AgoraMediaPlayerSrcInfo
The information of the media stream object.
Definition: AgoraObjects.h:135
AUDIO_AINS_MODE
AUDIO_AINS_MODE
Definition: AgoraEnumerates.h:3335
-[AgoraRtcEngineKit startMediaRenderingTracing]
int startMediaRenderingTracing()
Start tracing media rendering events.
-[AgoraRtcEngineKit switchCamera]
int switchCamera()
AgoraFeatureType
AgoraFeatureType
Definition: AgoraEnumerates.h:3409
AgoraDirectCdnStreamingEventDelegate-p
Definition: AgoraRtcEngineKit.h:575
AgoraMediaTraceEvent
AgoraMediaTraceEvent
Definition: AgoraEnumerates.h:3347
AgoraCameraStabilizationMode
AgoraCameraStabilizationMode
Definition: AgoraEnumerates.h:2391
AgoraRhythmPlayerState
AgoraRhythmPlayerState
Definition: AgoraEnumerates.h:3094
AgoraChannelMediaRelayEvent
AgoraChannelMediaRelayEvent
Definition: AgoraEnumerates.h:2433
AgoraMediaMetadataDataSource-p
Definition: AgoraRtcEngineKit.h:597
AgoraVideoFrame
Definition: AgoraObjects.h:1734
AgoraSimulcastStreamConfig
Definition: AgoraObjects.h:2812
AgoraRtmpStreamingEvent
AgoraRtmpStreamingEvent
Definition: AgoraEnumerates.h:2329
AgoraClientRoleChangeFailedReason
AgoraClientRoleChangeFailedReason
Definition: AgoraEnumerates.h:2113
AgoraVoiceConversionPreset
AgoraVoiceConversionPreset
Definition: AgoraEnumerates.h:1658
AgoraScreenCaptureParameters
Definition: AgoraObjects.h:2537
AgoraAudioRawFrameOperationMode
AgoraAudioRawFrameOperationMode
Definition: AgoraEnumerates.h:1367
AgoraVideoFrameProcessMode
AgoraVideoFrameProcessMode
Definition: AgoraEnumerates.h:1802
AgoraMediaRecorderInfo
Definition: AgoraObjects.h:3211
+[AgoraRtcEngineKit destroy]
void destroy()
AgoraVideoRemoteReason
AgoraVideoRemoteReason
Definition: AgoraEnumerates.h:982
-[AgoraRtcEngineKit isSupportPortraitCenterStage]
BOOL isSupportPortraitCenterStage()
AgoraAudioLocalState
AgoraAudioLocalState
Definition: AgoraEnumerates.h:1047
AgoraSegmentationProperty
Definition: AgoraObjects.h:2465
AgoraRtcRemoteVideoStats
Definition: AgoraObjects.h:783
AgoraContentInspectConfig
Definition: AgoraObjects.h:2887
AgoraAudioEncodedFrameDelegateConfig
Definition: AgoraObjects.h:2870
AgoraTranscodingVideoStream
Definition: AgoraObjects.h:2476
AgoraAudioRemoteState
AgoraAudioRemoteState
Definition: AgoraEnumerates.h:1148
AgoraChannelMediaRelayState
AgoraChannelMediaRelayState
Definition: AgoraEnumerates.h:2416
AgoraDirectCdnStreamingMediaOptions
Definition: AgoraObjects.h:178
AgoraH265TranscoderProtocol.h
AgoraAudioProfile
AgoraAudioProfile
Definition: AgoraEnumerates.h:1248
AgoraVideoFrameDelegate-p
Definition: AgoraRtcEngineKit.h:244
AgoraRtcMediaPlayerProtocol-p
Definition: AgoraRtcMediaPlayerProtocol.h:23
AgoraVideoDenoiserOptions
Definition: AgoraObjects.h:2389
AgoraLastmileProbeConfig
Definition: AgoraObjects.h:607
AgoraVideoFramePosition
AgoraVideoFramePosition
Definition: AgoraEnumerates.h:3209
-[AgoraRtcEngineKit stopLocalVideoTranscoder]
int stopLocalVideoTranscoder()
AgoraWlAccStats
Definition: AgoraObjects.h:3196
AgoraVideoLocalState
AgoraVideoLocalState
Definition: AgoraEnumerates.h:885
-[AgoraRtcEngineKit stopLastmileProbeTest]
int stopLastmileProbeTest()
WatermarkOptions
Definition: AgoraObjects.h:1367
AgoraVideoSourceType
AgoraVideoSourceType
Definition: AgoraEnumerates.h:2634
-[AgoraRtcEngineKit createMediaPlayerCacheManager]
id< AgoraRtcMediaPlayerCacheManagerProtocol > _Nullable createMediaPlayerCacheManager()
-[AgoraRtcEngineKit stopScreenCapture]
int stopScreenCapture()
-[AgoraRtcEngineKit getCurrentMonotonicTimeInMs]
int64_t getCurrentMonotonicTimeInMs()
AgoraRtcMediaPlayerDelegate-p
Definition: AgoraRtcEngineKit.h:411
AgoraAudioFrame
Definition: AgoraObjects.h:1946
-[AgoraRtcEngineKit stopDirectCdnStreaming]
int stopDirectCdnStreaming()
AgoraAudioFramePosition
AgoraAudioFramePosition
Definition: AgoraEnumerates.h:2973
-[AgoraVideoFrameDelegate-p getMirrorApplied]
BOOL getMirrorApplied()
AgoraVideoRotation
AgoraVideoRotation
Definition: AgoraEnumerates.h:865
VIEW_CLASS
UIView VIEW_CLASS
Definition: AgoraObjects.h:15
AgoraChannelProfile
AgoraChannelProfile
Definition: AgoraEnumerates.h:487
-[AgoraRtcEngineKit uploadLogFile]
NSString *_Nullable uploadLogFile()
-[AgoraRtcEngineKit pauseAllChannelMediaRelay]
int pauseAllChannelMediaRelay()
-[AgoraRtcEngineKit stopPreview]
int stopPreview()
AgoraRtcMediaPlayerVideoFrameDelegate-p
Definition: AgoraRtcEngineKit.h:516
AgoraLeaveChannelOptions
Definition: AgoraObjects.h:2084
AgoraDataStreamConfig
Definition: AgoraObjects.h:2265
AgoraMediaPlayerEvent
AgoraMediaPlayerEvent
Definition: AgoraEnumerates.h:2846
AgoraRtcRemoteAudioStats
Definition: AgoraObjects.h:893
AgoraChannelMediaRelayError
AgoraChannelMediaRelayError
Definition: AgoraEnumerates.h:2474
AgoraDirectCdnStreamingError
AgoraDirectCdnStreamingError
Definition: AgoraEnumerates.h:2935
-[AgoraRtcMediaPlayerDelegate-p onAgoraCDNTokenWillExpire]
void onAgoraCDNTokenWillExpire()
AgoraCDN Token has expired and needs to be set up with renewAgoraCDNSrcToken(const char* src).
-[AgoraRtcEngineKit getH265Transcoder]
id< AgoraH265TranscoderProtocol >_Nullable getH265Transcoder()
AgoraUserInfo
Definition: AgoraObjects.h:2208
AgoraVoiceBeautifierPreset
AgoraVoiceBeautifierPreset
Definition: AgoraEnumerates.h:1413
-[AgoraRtcEngineKit disableAudioSpectrumMonitor]
int disableAudioSpectrumMonitor()
AgoraRtcEngineConfig
Definition: AgoraObjects.h:1884
AgoraImageTrackOptions
Definition: AgoraObjects.h:3119
AgoraVideoRenderMode
AgoraVideoRenderMode
Definition: AgoraEnumerates.h:825
AgoraEncryptionConfig
Definition: AgoraObjects.h:2189
AgoraRhythmPlayerError
AgoraRhythmPlayerError
Definition: AgoraEnumerates.h:3110
AgoraEncodedVideoFrameInfo
Definition: AgoraObjects.h:2972
AgoraChannelMediaRelayConfiguration
Definition: AgoraObjects.h:2294
AgoraVideoStreamType
AgoraVideoStreamType
Definition: AgoraEnumerates.h:807
AgoraEchoTestConfiguration
Definition: AgoraObjects.h:3165
AgoraMediaRecorderErrorCode
AgoraMediaRecorderErrorCode
Definition: AgoraEnumerates.h:3267
AgoraConnectionState
AgoraConnectionState
Definition: AgoraEnumerates.h:1808
-[AgoraRtcEngineKit getCallId]
NSString *_Nullable getCallId()
AgoraContentInspectResult
AgoraContentInspectResult
Definition: AgoraEnumerates.h:3057
AgoraVideoFormat
AgoraVideoFormat
Definition: AgoraEnumerates.h:1761
AgoraAdvancedAudioOptions
Definition: AgoraObjects.h:3113
-[AgoraVideoFrameDelegate-p getObservedFramePosition]
AgoraVideoFramePosition getObservedFramePosition()
AgoraRtcAudioVolumeInfo
Definition: AgoraObjects.h:1000
AgoraScreenScenarioType
AgoraScreenScenarioType
Definition: AgoraEnumerates.h:2551
-[AgoraRtcEngineKit resumeAllChannelMediaRelay]
int resumeAllChannelMediaRelay()
AgoraMediaRecorderState
AgoraMediaRecorderState
Definition: AgoraEnumerates.h:3258
AgoraObjects.h
AgoraLocalAccessPointConfiguration
Definition: AgoraObjects.h:3047
AgoraConstants.h
-[AgoraRtcEngineKit disableAudio]
int disableAudio()
-[AgoraRtcEngineKit stopRhythmPlayer]
int stopRhythmPlayer()
AgoraBaseDelegate.h
-[AgoraRtcEngineKit createCustomVideoTrack]
unsigned int createCustomVideoTrack()
-[AgoraVideoFrameDelegate-p getVideoFrameProcessMode]
AgoraVideoFrameProcessMode getVideoFrameProcessMode()
-[AgoraRtcEngineKit disableVideo]
int disableVideo()
+[AgoraRtcEngineKit getSdkVersion]
NSString *_Nonnull getSdkVersion()
AgoraVirtualBackgroundSource
Definition: AgoraObjects.h:2434
-[AgoraRtcEngineKit startPreview]
int startPreview()
AgoraStreamPublishState
AgoraStreamPublishState
Definition: AgoraEnumerates.h:2526
AgoraLowlightEnhanceOptions
Definition: AgoraObjects.h:2406
AgoraSimulcastStreamMode
AgoraSimulcastStreamMode
Definition: AgoraEnumerates.h:2705
__deprecated
#define __deprecated
Definition: AgoraBase.h:63
AgoraDownlinkNetworkInfo
Definition: AgoraObjects.h:2070
AgoraExternalVideoSourceType
AgoraExternalVideoSourceType
Definition: AgoraEnumerates.h:2691
-[AgoraRtcEngineKit getAudioTrackCount]
int getAudioTrackCount()
AgoraLocalTranscoderConfiguration
Definition: AgoraObjects.h:2516
AgoraRtmpStreamingState
AgoraRtmpStreamingState
Definition: AgoraEnumerates.h:2268
AgoraAudioEncodedFrameDelegate-p
Definition: AgoraRtcEngineKit.h:215
AgoraRtcVideoCanvas
Definition: AgoraObjects.h:533
AgoraApplicationScenarioType
AgoraApplicationScenarioType
Definition: AgoraEnumerates.h:2537
AgoraMediaPlayerPreloadEvent
AgoraMediaPlayerPreloadEvent
The play preload another source event.
Definition: AgoraEnumerates.h:2886
AgoraEncodedAudioFrameInfo
Definition: AgoraObjects.h:2050
AgoraEncodedVideoFrameDelegate-p
Definition: AgoraRtcEngineKit.h:234
AgoraMediaMetadataDelegate-p
Definition: AgoraRtcEngineKit.h:630
AgoraEncryptionErrorType
AgoraEncryptionErrorType
Definition: AgoraEnumerates.h:2349
AgoraAudioRecordingConfiguration
Definition: AgoraObjects.h:2775
AgoraMetadataType
AgoraMetadataType
Definition: AgoraEnumerates.h:2186
-[AgoraRtcEngineKit isSecure]
BOOL isSecure()
AgoraNetworkType
AgoraNetworkType
Definition: AgoraEnumerates.h:1832
AgoraMediaRecorderDelegate-p
Definition: AgoraRtcEngineKit.h:7723
AgoraAudioLocalError
AgoraAudioLocalError
Definition: AgoraEnumerates.h:1069
AgoraDirectCdnStreamingState
AgoraDirectCdnStreamingState
Streaming state.
Definition: AgoraEnumerates.h:2920
AgoraColorEnhanceOptions
Definition: AgoraObjects.h:2421
AgoraAudioFrameDelegate-p
Definition: AgoraRtcEngineKit.h:26
AgoraMediaRecorderConfiguration
Definition: AgoraObjects.h:3225
-[AgoraRtcEngineKit getNtpWallTimeInMs]
uint64_t getNtpWallTimeInMs()
-[AgoraMediaRecorder stopRecording]
int stopRecording()
AgoraClientRoleOptions
Definition: AgoraObjects.h:2221
AgoraUploadErrorReason
AgoraUploadErrorReason
Definition: AgoraEnumerates.h:800
AgoraMediaSourceType
AgoraMediaSourceType
Definition: AgoraEnumerates.h:2568
AgoraNetworkQuality
AgoraNetworkQuality
Definition: AgoraEnumerates.h:728
AgoraRtcLocalAudioStats
Definition: AgoraObjects.h:864
AgoraCameraCapturerConfiguration
Definition: AgoraObjects.h:2231
AgoraCloudProxyType
AgoraCloudProxyType
Definition: AgoraEnumerates.h:590
AgoraProxyType
AgoraProxyType
Definition: AgoraEnumerates.h:3168
-[AgoraRtcEngineKit enableVideo]
int enableVideo()
AgoraScreenCaptureFrameRateCapability
AgoraScreenCaptureFrameRateCapability
Definition: AgoraEnumerates.h:3309
AgoraStreamSubscribeState
AgoraStreamSubscribeState
Definition: AgoraEnumerates.h:2516
AgoraExtensionInfo
Definition: AgoraObjects.h:3278
AgoraMediaPlayerUpdatedInfo
player_id and device_id has value when user trigger interface of opening.
Definition: AgoraObjects.h:125
AgoraLogLevel
AgoraLogLevel
Definition: AgoraEnumerates.h:2207
-[AgoraVideoFrameDelegate-p getVideoFormatPreference]
AgoraVideoFormat getVideoFormatPreference()
AgoraLastmileProbeResult
Definition: AgoraObjects.h:657
AgoraChannelStats
Definition: AgoraObjects.h:1019
AgoraRtcMediaPlayerAudioFrameDelegate-p
Definition: AgoraRtcEngineKit.h:553
-[AgoraRtcEngineKit queryScreenCaptureCapability]
AgoraScreenCaptureFrameRateCapability queryScreenCaptureCapability()