8 #import <Foundation/Foundation.h>
44 - (BOOL)onRecordAudioFrame:(
AgoraAudioFrame* _Nonnull)frame channelId:(NSString * _Nonnull)channelId NS_SWIFT_NAME(onRecordAudioFrame(_:channelId:));
61 - (BOOL)onPlaybackAudioFrame:(
AgoraAudioFrame* _Nonnull)frame channelId:(NSString * _Nonnull)channelId NS_SWIFT_NAME(onPlaybackAudioFrame(_:channelId:));
78 - (BOOL)onMixedAudioFrame:(
AgoraAudioFrame* _Nonnull)frame channelId:(NSString * _Nonnull)channelId NS_SWIFT_NAME(onMixedAudioFrame(_:channelId:));
87 - (BOOL)onEarMonitoringAudioFrame:(
AgoraAudioFrame* _Nonnull)frame NS_SWIFT_NAME(onEarMonitoringAudioFrame(_:));
105 - (BOOL)onPlaybackAudioFrameBeforeMixing:(
AgoraAudioFrame* _Nonnull)frame channelId:(NSString * _Nonnull)channelId uid:(NSUInteger)uid NS_SWIFT_NAME(onPlaybackAudioFrame(beforeMixing:channelId:uid:));
143 - (AgoraAudioParams* _Nonnull)getMixedAudioParams NS_SWIFT_NAME(getMixedAudioParams());
166 - (AgoraAudioParams* _Nonnull)getRecordAudioParams NS_SWIFT_NAME(getRecordAudioParams());
188 - (AgoraAudioParams* _Nonnull)getPlaybackAudioParams NS_SWIFT_NAME(getPlaybackAudioParams());
211 - (AgoraAudioParams* _Nonnull)getEarMonitoringAudioParams NS_SWIFT_NAME(getEarMonitoringAudioParams());
221 - (void)onRecordEncodedAudioFrame:(NSData* _Nonnull)frameData info:(
AgoraEncodedAudioFrameInfo* _Nonnull)info NS_SWIFT_NAME(onRecordEncodedAudioFrame(_:info:));
226 - (void)onPlaybackEncodedAudioFrame:(NSData* _Nonnull)frameData info:(
AgoraEncodedAudioFrameInfo* _Nonnull)info NS_SWIFT_NAME(onPlaybackEncodedAudioFrame(_:info:));
231 - (void)onMixedEncodedAudioFrame:(NSData* _Nonnull)frameData info:(
AgoraEncodedAudioFrameInfo* _Nonnull)info NS_SWIFT_NAME(onMixedEncodedAudioFrame(_:info:));
241 - (BOOL)onEncodedVideoFrameReceived:(NSData * _Nonnull )videoData length:(
size_t)length info:(
AgoraEncodedVideoFrameInfo * _Nonnull)videoFrameInfo NS_SWIFT_NAME(onEncodedVideoFrameReceived(_:length:info:));
285 - (BOOL)onTranscodedVideoFrame:(
AgoraOutputVideoFrame * _Nonnull)videoFrame NS_SWIFT_NAME(onTranscodedVideoFrame(_:));
304 - (BOOL)onRenderVideoFrame:(
AgoraOutputVideoFrame * _Nonnull)videoFrame uid:(NSUInteger)uid channelId:(NSString * _Nonnull)channelId NS_SWIFT_NAME(onRenderVideoFrame(_:uid:channelId:));
325 - (BOOL)onMediaPlayerVideoFrame:(
AgoraOutputVideoFrame * _Nonnull)videoFrame mediaPlayerId:(NSInteger)mediaPlayerId NS_SWIFT_NAME(onMediaPlayerVideoFrame(_:mediaPlayerId:));
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.")));
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.")));
421 didChangedToPosition:(NSInteger)position NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didChangedTo:));
432 elapsedTime:(NSInteger)elapsedTime
433 message:(NSString *_Nullable)message NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didOccur:elapsedTime:message:));
447 didReceiveData:(NSString *_Nullable)data
448 length:(NSInteger)length NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didReceiveData:length:));
457 didPlayBufferUpdated:(NSInteger)playCachedBuffer NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didPlayBufferUpdated:));
495 volumeIndicationDidReceive:(NSInteger)volume NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:volumeIndicationDidReceive:));
512 didReceiveVideoFrame:(
AgoraOutputVideoFrame * _Nonnull)videoFrame NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didReceiveVideoFrame:));
525 didReceivePixelBuffer:(CVPixelBufferRef _Nonnull)pixelBuffer NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didReceivePixelBuffer:));
549 didReceiveAudioFrame:(
AgoraAudioFrame* _Nonnull)audioFrame NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:didReceiveAudioFrame:));
570 message:(NSString *_Nullable)message NS_SWIFT_NAME(onDirectCdnStreamingStateChanged(_:error:message:));
606 - (NSData * _Nullable)readyToSendMetadataAtTimestamp:(NSTimeInterval)timestamp sourceType:(
AgoraVideoSourceType)sourceType NS_SWIFT_NAME(readyToSendMetadata(atTimestamp:sourceType:));
622 - (void)receiveMetadata:(NSData * _Nonnull)data fromUser:(NSInteger)uid atTimestamp:(NSTimeInterval)timestamp NS_SWIFT_NAME(receiveMetadata(_:fromUser:atTimestamp:));
635 #pragma mark Delegate Methods
645 #pragma mark Core Delegate Methods
659 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine didOccurError:(AgoraErrorCode)errorCode NS_SWIFT_NAME(rtcEngine(_:didOccurError:));
665 - (void)rtcEngineMediaEngineDidLoaded:(
AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineMediaEngineDidLoaded(_:));
671 - (void)rtcEngineMediaEngineDidStartCall:(
AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineMediaEngineDidStartCall(_:));
687 - (void)rtcEngineRequestToken:(
AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineRequestToken(_:));
702 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine tokenPrivilegeWillExpire:(NSString *_Nonnull)token NS_SWIFT_NAME(rtcEngine(_:tokenPrivilegeWillExpire:));
717 - (void)rtcEngineConnectionDidInterrupted:(
AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineConnectionDidInterrupted(_:));
728 - (void)rtcEngineConnectionDidLost:(
AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineConnectionDidLost(_:));
737 - (void)rtcEngineConnectionDidBanned:(
AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineConnectionDidBanned(_:));
815 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
829 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine device:(NSString * _Nonnull)deviceId type:(AgoraMediaDeviceType)deviceType stateChanged:(NSInteger)state NS_SWIFT_NAME(rtcEngine(_:device:type:stateChanged:));
844 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine uploadLogResultRequestId:(NSString * _Nonnull)requestId success:(BOOL)success reason:(
AgoraUploadErrorReason)reason NS_SWIFT_NAME(rtcEngine(_:uploadLogResultRequestId:success:reason:));
846 #pragma mark Local User Core Delegate Methods
861 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine didJoinChannel:(NSString * _Nonnull)channel withUid:(NSUInteger)uid elapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:didJoinChannel:withUid:elapsed:));
876 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine didRejoinChannel:(NSString * _Nonnull)channel withUid:(NSUInteger)uid elapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:didRejoinChannel:withUid:elapsed:));
924 #pragma mark Local User Audio Delegate Methods
936 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine firstLocalAudioFramePublished:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:firstLocalAudioFramePublished:));
969 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine didAudioRouteChanged:(AgoraAudioOutputRouting)routing NS_SWIFT_NAME(rtcEngine(_:didAudioRouteChanged:));
971 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
981 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine type:(AgoraMediaDeviceType)deviceType didAudioRouteChanged:(AgoraAudioOutputRouting)routing NS_SWIFT_NAME(rtcEngine(_:type:didAudioRouteChanged:));
990 - (void)rtcEngineLocalAudioMixingDidFinish:(
AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineLocalAudioMixingDidFinish(_:));
999 - (void)rtcEngineDidAudioEffectFinish:(
AgoraRtcEngineKit * _Nonnull)engine soundId:(
int)soundId NS_SWIFT_NAME(rtcEngineDidAudioEffectFinish(_:soundId:));
1002 #pragma mark Local User Video Delegate Methods
1014 - (void)rtcEngineCameraDidReady:(
AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineCameraDidReady(_:));
1016 #if TARGET_OS_IPHONE
1023 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine cameraFocusDidChangedToRect:(CGRect)rect NS_SWIFT_NAME(rtcEngine(_:cameraFocusDidChangedTo:));
1030 - (void)rtcEngine:(
AgoraRtcEngineKit* _Nonnull)engine cameraExposureDidChangedToRect:(CGRect)rect NS_SWIFT_NAME(rtcEngine(_:cameraExposureDidChangedTo:));
1040 - (void)rtcEngineVideoDidStop:(
AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineVideoDidStop(_:));
1047 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine firstLocalVideoFramePublishedWithElapsed:(NSInteger)elapsed sourceType:(
AgoraVideoSourceType)sourceType NS_SWIFT_NAME(rtcEngine(_:firstLocalVideoFramePublishedWithElapsed:sourceType:));
1058 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine firstLocalVideoFrameWithSize:(CGSize)size elapsed:(NSInteger)elapsed sourceType:(
AgoraVideoSourceType)sourceType NS_SWIFT_NAME(rtcEngine(_:firstLocalVideoFrameWith:elapsed:sourceType:));
1074 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine localVideoStats:(AgoraRtcLocalVideoStats * _Nonnull)stats sourceType:(
AgoraVideoSourceType)sourceType NS_SWIFT_NAME(rtcEngine(_:localVideoStats:sourceType:));
1086 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine didLocalPublishFallbackToAudioOnly:(BOOL)isFallbackOrRecover NS_SWIFT_NAME(rtcEngine(_:didLocalPublishFallbackToAudioOnly:));
1099 #pragma mark Remote User Core Delegate Methods
1125 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine didJoinedOfUid:(NSUInteger)uid elapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:didJoinedOfUid:elapsed:));
1155 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine receiveStreamMessageFromUid:(NSUInteger)uid streamId:(NSInteger)streamId data:(NSData * _Nonnull)data NS_SWIFT_NAME(rtcEngine(_:receiveStreamMessageFromUid:streamId:data:));
1169 - (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:));
1172 #pragma mark Remote User Audio Delegate Methods
1186 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine firstRemoteAudioFrameOfUid:(NSUInteger)uid elapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:firstRemoteAudioFrameOfUid:elapsed:));
1207 - (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 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine didAudioMuted:(BOOL)muted byUid:(NSUInteger)uid NS_SWIFT_NAME(rtcEngine(_:didAudioMuted:byUid:));
1259 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine reportAudioVolumeIndicationOfSpeakers:(NSArray<
AgoraRtcAudioVolumeInfo *> * _Nonnull)speakers totalVolume:(NSInteger)totalVolume NS_SWIFT_NAME(rtcEngine(_:reportAudioVolumeIndicationOfSpeakers:totalVolume:));
1278 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine activeSpeaker:(NSUInteger)speakerUid NS_SWIFT_NAME(rtcEngine(_:activeSpeaker:));
1286 - (void)rtcEngineRemoteAudioMixingDidStart:(
AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineRemoteAudioMixingDidStart(_:));
1292 - (void)rtcEngineRemoteAudioMixingDidFinish:(
AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineRemoteAudioMixingDidFinish(_:));
1302 - (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:));
1314 - (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:));
1320 - (void)rtcEngineIntraRequestReceived:(
AgoraRtcEngineKit *_Nonnull)engine NS_SWIFT_NAME(rtcEngineIntraRequestReceived(_:));
1344 - (void)rtcEngine:(
AgoraRtcEngineKit *_Nonnull)engine didAudioSubscribeStateChange:(NSString * _Nonnull)channelId
1345 uid:(
unsigned int)uid
1348 elapseSinceLastState:(
int)elapseSinceLastState NS_SWIFT_NAME(rtcEngine(_:didAudioSubscribeStateChange:uid:oldState:newState:elapseSinceLastState:));
1358 - (void)rtcEngine:(
AgoraRtcEngineKit *_Nonnull)engine didAudioPublishStateChange:(NSString * _Nonnull)channelId
1361 elapseSinceLastState:(
int)elapseSinceLastState NS_SWIFT_NAME(rtcEngine(_:didAudioPublishStateChange:oldState:newState:elapseSinceLastState:));
1363 #pragma mark String UID
1371 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine didLocalUserRegisteredWithUserId:(NSUInteger)uid userAccount:(NSString * _Nonnull)userAccount NS_SWIFT_NAME(rtcEngine(_:didLocalUserRegisteredWithUserId:userAccount:));
1382 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine didUserInfoUpdatedWithUserId:(NSUInteger)uid userInfo:(
AgoraUserInfo* _Nonnull)userInfo NS_SWIFT_NAME(rtcEngine(_:didUserInfoUpdatedWithUserId:userInfo:));
1384 #pragma mark Rhythm Player Delegates Methods
1387 errorCode:(
AgoraRhythmPlayerError)errorCode NS_SWIFT_NAME(rtcEngine(_:didRhythmPlayerStateChanged:errorCode:));
1389 #pragma mark Local Video Transcoder Delegates Methods
1397 errorCode:(
AgoraVideoTranscoderError)errorCode NS_SWIFT_NAME(rtcEngine(_:didLocalVideoTranscoderErrorWithStream:errorCode:));
1399 #pragma mark Remote User Video Delegates Methods
1421 - (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.");
1430 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine firstRemoteVideoFrameOfUid:(NSUInteger)uid size:(CGSize)size elapsed:(NSInteger)elapsed NS_SWIFT_NAME(rtcEngine(_:firstRemoteVideoFrameOfUid:size:elapsed:));
1440 - (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:));
1442 - (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:));
1468 - (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:));
1514 - (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.");
1530 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine didVideoEnabled:(BOOL)enabled byUid:(NSUInteger)uid NS_SWIFT_NAME(rtcEngine(_:didVideoEnabled:byUid:));
1542 - (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.");
1552 - (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:));
1561 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine remoteUserStateChangedOfUid:(NSUInteger)uid state:(NSUInteger)state NS_SWIFT_NAME(rtcEngine(_:remoteUserStateChangedOfUid:state:));
1589 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine didRemoteSubscribeFallbackToAudioOnly:(BOOL)isFallbackOrRecover byUid:(NSUInteger)uid NS_SWIFT_NAME(rtcEngine(_:didRemoteSubscribeFallbackToAudioOnly:byUid:));
1601 - (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:));
1613 - (void)rtcEngine:(
AgoraRtcEngineKit *_Nonnull)engine didVideoSubscribeStateChange:(NSString * _Nonnull)channelId
1614 uid:(
unsigned int)uid
1617 elapseSinceLastState:(
int)elapseSinceLastState NS_SWIFT_NAME(rtcEngine(_:didVideoSubscribeStateChange:uid:oldState:newState:elapseSinceLastState:));
1629 - (void)rtcEngine:(
AgoraRtcEngineKit *_Nonnull)engine didVideoPublishStateChange:(NSString * _Nonnull)channelId
1633 elapseSinceLastState:(
int)elapseSinceLastState NS_SWIFT_NAME(rtcEngine(_:didVideoPublishStateChange:sourceType:oldState:newState:elapseSinceLastState:));
1635 #pragma mark Stream Publish Delegate Methods
1670 - (void)rtcEngine:(
AgoraRtcEngineKit* _Nonnull)engine rtmpStreamingEventWithUrl:(NSString* _Nonnull)url eventCode:(
AgoraRtmpStreamingEvent)eventCode NS_SWIFT_NAME(rtcEngine(_:rtmpStreamingEventWithUrl:eventCode:));
1679 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine streamPublishedWithUrl:(NSString * _Nonnull)url errorCode:(AgoraErrorCode)errorCode NS_SWIFT_NAME(rtcEngine(_:streamPublishedWithUrl:errorCode:));
1686 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine streamUnpublishedWithUrl:(NSString * _Nonnull)url NS_SWIFT_NAME(rtcEngine(_:streamUnpublishedWithUrl:));
1692 - (void)rtcEngineTranscodingUpdated:(
AgoraRtcEngineKit * _Nonnull)engine NS_SWIFT_NAME(rtcEngineTranscodingUpdated(_:));
1701 - (void)rtcEngine:(
AgoraRtcEngineKit * _Nonnull)engine streamInjectedStatusOfUrl:(NSString * _Nonnull)url uid:(NSUInteger)uid status:(AgoraInjectStreamStatus)status NS_SWIFT_NAME(rtcEngine(_:streamInjectedStatusOfUrl:uid:status:));
1708 - (void)rtcEngine:(
AgoraRtcEngineKit *_Nonnull)engine audioMixingStateChanged:(AgoraAudioMixingStateType)state
1709 reasonCode:(AgoraAudioMixingReasonCode)reasonCode NS_SWIFT_NAME(rtcEngine(_:audioMixingStateChanged:reasonCode:));
1717 - (void)rtcEngine:(
AgoraRtcEngineKit *_Nonnull)engine audioMixingPositionChanged:(NSInteger)position NS_SWIFT_NAME(rtcEngine(_:audioMixingPositionChanged:));
1719 #if TARGET_OS_IPHONE
1720 #pragma mark Face Detection Delegate Methods
1748 - (void)rtcEngine:(
AgoraRtcEngineKit* _Nonnull)engine facePositionDidChangeWidth:(
int)width previewHeight:(
int)height faces:(NSArray<
AgoraFacePositionInfo*>* _Nullable)faces NS_SWIFT_NAME(rtcEngine(_:facePositionDidChangeWidth:previewHeight:faces:));
1751 #pragma mark - Unavailable Delegate Methods
1752 #if TARGET_OS_IPHONE
1753 - (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.")));
1755 - (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.")));
1757 - (void)rtcEngine:(
AgoraRtcEngineKit *_Nonnull)engine didVideoPublishStateChange:(NSString * _Nonnull)channelId
1760 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.")));
1762 - (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.")));
1764 - (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.")));
1767 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
1768 - (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.")));
1770 - (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.")));
1772 - (void)rtcEngine:(
AgoraRtcEngineKit *_Nonnull)engine didVideoPublishStateChange:(NSString * _Nonnull)channelId
1775 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.")));
1777 - (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.")));
1779 - (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.")));
1783 #pragma mark - AgoraRtcEngineKit
1797 #pragma mark Core Methods
1810 @property(nonatomic, weak) id<AgoraRtcEngineDelegate> _Nullable
delegate;
1850 - (int)preloadChannelByToken:(NSString * _Nullable)token
1851 channelId:(NSString * _Nonnull)channelId
1852 uid:(NSUInteger)uid NS_SWIFT_NAME(preloadChannel(byToken:channelId:uid:));
1894 - (int)preloadChannelByToken:(NSString * _Nullable)token
1895 channelId:(NSString * _Nonnull)channelId
1896 userAccount:(NSString * _Nonnull)userAccount NS_SWIFT_NAME(preloadChannel(byToken:channelId:userAccount:));
1917 - (int)updatePreloadChannelToken:(NSString * _Nonnull)token NS_SWIFT_NAME(updatePreloadChannelToken(_:));
1981 - (int)joinChannelByToken:(NSString * _Nullable)token
1982 channelId:(NSString * _Nonnull)channelId
1983 info:(NSString * _Nullable)info
1985 joinSuccess:(
void(^ _Nullable)(NSString * _Nonnull channel, NSUInteger uid, NSInteger elapsed))joinSuccessBlock NS_SWIFT_NAME(joinChannel(byToken:channelId:info:uid:joinSuccess:));
2047 - (int)joinChannelByToken:(NSString * _Nullable)token
2048 channelId:(NSString * _Nonnull)channelId
2051 joinSuccess:(
void(^ _Nullable)(NSString * _Nonnull channel, NSUInteger uid, NSInteger elapsed))joinSuccessBlock NS_SWIFT_NAME(joinChannel(byToken:channelId:uid:mediaOptions:joinSuccess:));
2053 - (int)startMultipleVideoStreams:(
VIEW_CLASS * _Nonnull)view screen:(
VIEW_CLASS * _Nonnull)screenView remotes:(NSArray * _Nullable)remoteViews NS_SWIFT_NAME(startMultipleVideoStreams(_:screen:remotes:));
2081 - (int)leaveChannel:(
void(^ _Nullable)(
AgoraChannelStats * _Nonnull stat))leaveChannelBlock NS_SWIFT_NAME(leaveChannel(_:));
2110 leaveChannelBlock:(void (^ _Nullable)(
AgoraChannelStats * _Nonnull))leaveChannelBlock NS_SWIFT_NAME(leaveChannel(_:leaveChannelBlock:));
2129 - (int)setChannelProfile:(
AgoraChannelProfile)profile NS_SWIFT_NAME(setChannelProfile(_:));
2156 - (int)setClientRole:(
AgoraClientRole)role NS_SWIFT_NAME(setClientRole(_:));
2203 - (int)renewToken:(NSString * _Nonnull)token NS_SWIFT_NAME(renewToken(_:));
2263 - (int)startChannelMediaRelay:(
AgoraChannelMediaRelayConfiguration * _Nonnull)config NS_SWIFT_NAME(startChannelMediaRelay(_:)) __deprecated_msg(
"use startOrUpdateChannelMediaRelay instead.");
2286 - (int)updateChannelMediaRelay:(
AgoraChannelMediaRelayConfiguration * _Nonnull)config NS_SWIFT_NAME(updateChannelMediaRelay(_:)) __deprecated_msg(
"use startOrUpdateChannelMediaRelay instead.");
2341 - (int)enableWirelessAccelerate:(BOOL)enabled NS_SWIFT_NAME(enableWirelessAccelerate(_:));
2391 - (int)enableWebSdkInteroperability:(BOOL)enabled NS_SWIFT_NAME(enableWebSdkInteroperability(_:))
__deprecated;
2407 + (instancetype _Nonnull)sharedEngineWithAppId:(NSString * _Nonnull)appId
2451 #pragma mark Core Audio
2508 - (int)enableLocalAudio:(BOOL)enabled NS_SWIFT_NAME(enableLocalAudio(_:));
2525 - (int)setAudioProfile:(
AgoraAudioProfile)profile NS_SWIFT_NAME(setAudioProfile(_:));
2527 - (int)setAudioScenario:(
AgoraAudioScenario)scenario NS_SWIFT_NAME(setAudioScenario(_:));
2550 - (int)enableAudioVolumeIndication:(NSInteger)interval
2551 smooth:(NSInteger)smooth
2552 reportVad:(BOOL)reportVad NS_SWIFT_NAME(enableAudioVolumeIndication(_:smooth:reportVad:));
2555 #if TARGET_OS_IPHONE
2573 - (int)setEnableSpeakerphone:(BOOL)enableSpeaker NS_SWIFT_NAME(setEnableSpeakerphone(_:));
2584 - (BOOL)isSpeakerphoneEnabled NS_SWIFT_NAME(isSpeakerphoneEnabled());
2613 - (int)setDefaultAudioRouteToSpeakerphone:(BOOL)defaultToSpeaker NS_SWIFT_NAME(setDefaultAudioRouteToSpeakerphone(_:));
2627 - (int)adjustRecordingSignalVolume:(NSInteger)volume NS_SWIFT_NAME(adjustRecordingSignalVolume(_:));
2640 - (int)adjustPlaybackSignalVolume:(NSInteger)volume NS_SWIFT_NAME(adjustPlaybackSignalVolume(_:));
2661 - (int)adjustUserPlaybackSignalVolume:(NSUInteger)uid volume:(int)volume NS_SWIFT_NAME(adjustUserPlaybackSignalVolume(_:volume:));
2671 - (int)muteRecordingSignal:(BOOL)muted NS_SWIFT_NAME(muteRecordingSignal(_:));
2683 - (int)muteLocalAudioStream:(BOOL)mute NS_SWIFT_NAME(muteLocalAudioStream(_:));
2698 - (int)muteRemoteAudioStream:(NSUInteger)uid mute:(BOOL)mute NS_SWIFT_NAME(muteRemoteAudioStream(_:mute:));
2725 - (int)muteAllRemoteAudioStreams:(BOOL)mute NS_SWIFT_NAME(muteAllRemoteAudioStreams(_:));
2741 - (int)setDefaultMuteAllRemoteAudioStreams:(BOOL)mute NS_SWIFT_NAME(setDefaultMuteAllRemoteAudioStreams(_:))
__deprecated;
2755 - (int)registerExtensionWithVendor:(NSString * __nonnull)provider
2756 extension:(NSString * __nonnull)extension
2757 sourceType:(
AgoraMediaSourceType)sourceType NS_SWIFT_NAME(registerExtension(withVendor:extension:sourceType:));
2778 - (int)enableExtensionWithVendor:(NSString * __nonnull)provider extension:(NSString * __nonnull)extension enabled:(BOOL)enabled NS_SWIFT_NAME(enableExtension(withVendor:extension:enabled:));
2800 - (int)enableExtensionWithVendor:(NSString * __nonnull)provider
2801 extension:(NSString * __nonnull)extension
2802 enabled:(BOOL)enabled
2803 sourceType:(
AgoraMediaSourceType)sourceType NS_SWIFT_NAME(enableExtension(withVendor:extension:enabled:sourceType:));
2825 - (int)enableExtensionWithVendor:(NSString * __nonnull)provider
2826 extension:(NSString * __nonnull)extension
2828 enabled:(BOOL)enabled NS_SWIFT_NAME(enableExtension(withVendor:extension:extensionInfo:enabled:));
2841 - (int)setExtensionProviderPropertyWithVendor:(NSString * __nonnull)provider
2842 key:(NSString * __nonnull)key
2843 value:(NSString * __nonnull)value NS_SWIFT_NAME(setExtensionProviderPropertyWithVendor(_:key:value:));
2855 - (int)setExtensionPropertyWithVendor:(NSString * __nonnull)provider
2856 extension:(NSString * __nonnull)extension
2857 key:(NSString * __nonnull)key
2858 value:(NSString * __nonnull)value NS_SWIFT_NAME(setExtensionPropertyWithVendor(_:extension:key:value:));
2873 - (int)setExtensionPropertyWithVendor:(NSString * __nonnull)provider
2874 extension:(NSString * __nonnull)extension
2875 key:(NSString * __nonnull)key
2876 value:(NSString * __nonnull)value
2877 sourceType:(
AgoraMediaSourceType)sourceType NS_SWIFT_NAME(setExtensionPropertyWithVendor(_:extension:key:value:sourceType:));
2891 - (int)setExtensionPropertyWithVendor:(NSString * __nonnull)provider
2892 extension:(NSString * __nonnull)extension
2894 key:(NSString * __nonnull)key
2895 value:(NSString * __nonnull)value NS_SWIFT_NAME(setExtensionPropertyWithVendor(_:extension:extensionInfo:key:value:));
2907 - (NSString * _Nullable)getExtensionPropertyWithVendor:(NSString * __nonnull)provider
2908 extension:(NSString * __nonnull)extension
2909 key:(NSString * __nonnull)key NS_SWIFT_NAME(getExtensionProperty(withVendor:extension:key:));
2922 - (NSString * _Nullable)getExtensionPropertyWithVendor:(NSString * __nonnull)provider
2923 extension:(NSString * __nonnull)extension
2924 key:(NSString * __nonnull)key
2925 sourceType:(
AgoraMediaSourceType)sourceType NS_SWIFT_NAME(getExtensionProperty(withVendor:extension:key:sourceType:));
2938 - (NSString * _Nullable)getExtensionPropertyWithVendor:(NSString * __nonnull)provider
2939 extension:(NSString * __nonnull)extension
2941 key:(NSString * __nonnull)key NS_SWIFT_NAME(getExtensionProperty(withVendor:extension:extensionInfo:key:));
2943 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
2965 - (int)enableLoopbackRecording:(BOOL)enabled deviceName:(NSString* _Nullable)deviceName NS_SWIFT_NAME(enableLoopbackRecording(_:deviceName:));
2979 - (int)adjustLoopbackSignalVolume:(NSInteger)volume NS_SWIFT_NAME(adjustLoopbackSignalVolume(_:));
2987 - (int)getLoopbackRecordingVolume NS_SWIFT_NAME(getLoopbackRecordingVolume());
2991 #pragma mark Core Video
3051 - (int)enableLocalVideo:(BOOL)enabled NS_SWIFT_NAME(enableLocalVideo(_:));
3087 - (int)setVideoEncoderConfiguration:(AgoraVideoEncoderConfiguration * _Nonnull)config NS_SWIFT_NAME(setVideoEncoderConfiguration(_:));
3109 - (int)setupLocalVideo:(
AgoraRtcVideoCanvas * _Nullable)local NS_SWIFT_NAME(setupLocalVideo(_:));
3114 - (int)setLocalVideoMirrorMode:(AgoraVideoMirrorMode)mode NS_SWIFT_NAME(setLocalVideoMirrorMode(_:))
__deprecated;
3119 - (int)setLocalRenderMode:(NSUInteger)uid
3141 mirror:(AgoraVideoMirrorMode)mirror NS_SWIFT_NAME(setLocalRenderMode(_:mirror:));
3200 - (int)setupRemoteVideo:(
AgoraRtcVideoCanvas * _Nonnull)remote NS_SWIFT_NAME(setupRemoteVideo(_:));
3211 - (int)setRemoteRenderMode:(NSUInteger)uid
3213 mirror:(AgoraVideoMirrorMode)mirror NS_SWIFT_NAME(setRemoteRenderMode(_:mode:mirror:));
3228 - (int)muteLocalVideoStream:(BOOL)mute NS_SWIFT_NAME(muteLocalVideoStream(_:));
3255 - (int)muteAllRemoteVideoStreams:(BOOL)mute NS_SWIFT_NAME(muteAllRemoteVideoStreams(_:));
3271 - (int)setDefaultMuteAllRemoteVideoStreams:(BOOL)mute NS_SWIFT_NAME(setDefaultMuteAllRemoteVideoStreams(_:))
__deprecated;
3288 - (int)muteRemoteVideoStream:(NSUInteger)uid
3289 mute:(BOOL)mute NS_SWIFT_NAME(muteRemoteVideoStream(_:mute:));
3304 - (int)setBeautyEffectOptions:(BOOL)enable options:(
AgoraBeautyOptions* _Nullable)options NS_SWIFT_NAME(setBeautyEffectOptions(_:options:));
3320 - (int)setBeautyEffectOptions:(BOOL)enable options:(
AgoraBeautyOptions* _Nullable)options sourceType:(
AgoraMediaSourceType)sourceType NS_SWIFT_NAME(setBeautyEffectOptions(_:options:sourceType:));
3346 - (int)setVideoDenoiserOptions:(BOOL)enable options:(
AgoraVideoDenoiserOptions* _Nullable)options NS_SWIFT_NAME(setVideoDenoiserOptions(_:options:));
3399 - (int)setLowlightEnhanceOptions:(BOOL)enable options:(
AgoraLowlightEnhanceOptions* _Nullable)options NS_SWIFT_NAME(setLowlightEnhanceOptions(_:options:));
3452 - (int)setColorEnhanceOptions:(BOOL)enable options:(
AgoraColorEnhanceOptions* _Nullable)options NS_SWIFT_NAME(setColorEnhanceOptions(_:options:));
3603 #pragma mark Audio Effect
3619 - (int)setLocalVoicePitch:(
double)pitch NS_SWIFT_NAME(setLocalVoicePitch(_:));
3630 - (int)setLocalVoiceFormant:(
double)formantRatio;
3639 - (int)setLocalVoiceEqualizationOfBandFrequency:(AgoraAudioEqualizationBandFrequency)bandFrequency withGain:(NSInteger)gain NS_SWIFT_NAME(setLocalVoiceEqualizationOf(_:withGain:));
3648 - (int)setLocalVoiceReverbOfType:(AgoraAudioReverbType)reverbType withValue:(NSInteger)value NS_SWIFT_NAME(setLocalVoiceReverbOf(_:withValue:));
3650 #pragma mark Audio Effect Playback
3680 - (int)preloadEffect:(
int)soundId
3681 filePath:(NSString* _Nonnull)filePath NS_SWIFT_NAME(preloadEffect(_:filePath:));
3708 - (int)preloadEffect:(
int)soundId
3709 filePath:(NSString* _Nonnull)filePath
3710 startPos:(
int)startPos NS_SWIFT_NAME(preloadEffect(_:filePath:startPos:));
3735 - (int)playEffect:(
int)soundId
3736 filePath:(NSString* _Nonnull)filePath
3737 loopCount:(NSInteger)loopCount
3740 gain:(NSInteger)gain NS_SWIFT_NAME(playEffect(_:filePath:loopCount:pitch:pan:gain:));
3766 - (int)playEffect:(
int)soundId
3767 filePath:(NSString* _Nonnull)filePath
3768 loopCount:(NSInteger)loopCount
3771 gain:(NSInteger)gain
3772 startPos:(
int)startPos NS_SWIFT_NAME(playEffect(_:filePath:loopCount:pitch:pan:gain:startPos:));
3805 - (int)playEffect:(
int)soundId
3806 filePath:(NSString* _Nonnull)filePath
3807 loopCount:(NSInteger)loopCount
3810 gain:(NSInteger)gain
3811 publish:(BOOL)publish NS_SWIFT_NAME(playEffect(_:filePath:loopCount:pitch:pan:gain:publish:));
3845 - (int)playEffect:(
int)soundId
3846 filePath:(NSString* _Nonnull)filePath
3847 loopCount:(NSInteger)loopCount
3850 gain:(NSInteger)gain
3851 publish:(BOOL)publish
3852 startPos:(int)startPos NS_SWIFT_NAME(playEffect(_:filePath:loopCount:pitch:pan:gain:publish:startPos:));
3884 - (int)playAllEffectsWithLoopCount:(NSInteger)loopCount
3887 gain:(NSInteger)gain
3888 publish:(BOOL)publish NS_SWIFT_NAME(playAllEffects(withLoopCount:pitch:pan:gain:publish:));
3897 - (int)getEffectsVolume NS_SWIFT_NAME(getEffectsVolume());
3908 - (int)setEffectsVolume:(NSInteger)volume NS_SWIFT_NAME(setEffectsVolume(_:));
3920 - (int)setVolumeOfEffect:(
int)soundId
3921 withVolume:(int)volume NS_SWIFT_NAME(setVolumeOfEffect(_:withVolume:));
3932 - (int)getVolumeOfEffect:(
int)soundId NS_SWIFT_NAME(getVolumeOfEffect(_:));
3941 - (int)pauseEffect:(
int)soundId NS_SWIFT_NAME(pauseEffect(_:));
3948 - (int)pauseAllEffects NS_SWIFT_NAME(pauseAllEffects());
3957 - (int)resumeEffect:(
int)soundId NS_SWIFT_NAME(resumeEffect(_:));
3964 - (int)resumeAllEffects NS_SWIFT_NAME(resumeAllEffects());
3973 - (int)stopEffect:(
int)soundId NS_SWIFT_NAME(stopEffect(_:));
3981 - (int)stopAllEffects NS_SWIFT_NAME(stopAllEffects());
3999 - (int)getEffectDuration:(NSString* _Nonnull)filePath NS_SWIFT_NAME(getEffectDuration(_:));
4014 - (int)setEffectPosition:(
int)soundId pos:(NSInteger)pos NS_SWIFT_NAME(setEffectPosition(_:pos:));
4025 - (int)getEffectCurrentPosition:(
int)soundId NS_SWIFT_NAME(getEffectCurrentPosition(_:));
4037 - (int)unloadEffect:(
int)soundId NS_SWIFT_NAME(unloadEffect(_:));
4045 - (int)unloadAllEffects NS_SWIFT_NAME(unloadAllEffects());
4047 #pragma mark beautifier effect
4124 - (int)setAudioEffectPreset:(AgoraAudioEffectPreset)preset NS_SWIFT_NAME(setAudioEffectPreset(_:));
4241 - (int)setAudioEffectParameters:(AgoraAudioEffectPreset)preset param1:(int)param1 param2:(
int)param2 NS_SWIFT_NAME(setAudioEffectParameters(_:param1:param2:));
4285 - (int)setVoiceBeautifierParameters:(
AgoraVoiceBeautifierPreset)preset param1:(int)param1 param2:(
int)param2 NS_SWIFT_NAME(setVoiceBeautifierParameters(_:param1:param2:));
4299 - (int)setVoiceConversionParameters:(
AgoraVoiceConversionPreset)preset param1:(int)param1 param2:(
int)param2 NS_SWIFT_NAME(setVoiceConversionParameters(_:param1:param2:));
4321 - (int)setHeadphoneEQParameters:(
int)lowGain highGain:(int)highGain NS_SWIFT_NAME(setHeadphoneEQParameters(_:highGain:));
4323 #pragma mark Sound Position Indication
4343 - (int)enableSoundPositionIndication:(BOOL)enabled NS_SWIFT_NAME(enableSoundPositionIndication(_:));
4368 - (int)setRemoteVoicePosition:(NSUInteger)uid pan:(double)pan gain:(
double)gain NS_SWIFT_NAME(setRemoteVoicePosition(_:pan:gain:));
4380 - (int)enableSpatialAudio:(BOOL)enabled NS_SWIFT_NAME(enableSpatialAudio(_:));
4397 - (int)setRemoteUserSpatialAudioParams:(NSUInteger)uid
4398 params:(AgoraSpatialAudioParams* _Nonnull)params NS_SWIFT_NAME(setRemoteUserSpatialAudioParams(_:params:));
4400 #pragma mark Audio Noise Suppression
4411 - (int)setAINSMode:(BOOL)enabled mode:(
AUDIO_AINS_MODE)mode NS_SWIFT_NAME(setAINSMode(_:mode:));
4413 #pragma mark Audio Mixing
4451 - (int)startAudioMixing:(NSString * _Nonnull)filePath
4452 loopback:(BOOL)loopback
4453 cycle:(NSInteger)cycle NS_SWIFT_NAME(startAudioMixing(_:loopback:cycle:));
4487 - (int)startAudioMixing:(NSString * _Nonnull)filePath
4488 loopback:(BOOL)loopback
4489 cycle:(NSInteger)cycle
4490 startPos:(NSInteger)startPos NS_SWIFT_NAME(startAudioMixing(_:loopback:cycle:startPos:));
4501 - (int)stopAudioMixing NS_SWIFT_NAME(stopAudioMixing());
4511 - (int)pauseAudioMixing NS_SWIFT_NAME(pauseAudioMixing());
4522 - (int)resumeAudioMixing NS_SWIFT_NAME(resumeAudioMixing());
4532 - (int)selectAudioTrack:(NSInteger)index NS_SWIFT_NAME(selectAudioTrack(_:));
4553 - (int)adjustAudioMixingVolume:(NSInteger)volume NS_SWIFT_NAME(adjustAudioMixingVolume(_:));
4564 - (int)adjustAudioMixingPublishVolume:(NSInteger)volume NS_SWIFT_NAME(adjustAudioMixingPublishVolume(_:));
4574 - (int)getAudioMixingPublishVolume NS_SWIFT_NAME(getAudioMixingPublishVolume());
4584 - (int)adjustAudioMixingPlayoutVolume:(NSInteger)volume NS_SWIFT_NAME(adjustAudioMixingPlayoutVolume(_:));
4594 - (int)getAudioMixingPlayoutVolume NS_SWIFT_NAME(getAudioMixingPlayoutVolume());
4606 - (int)getAudioMixingDuration NS_SWIFT_NAME(getAudioMixingDuration());
4616 - (int)getAudioMixingCurrentPosition NS_SWIFT_NAME(getAudioMixingCurrentPosition());
4628 - (int)setAudioMixingPosition:(NSInteger)pos NS_SWIFT_NAME(setAudioMixingPosition(_:));
4640 - (int)setAudioMixingDualMonoMode:(AgoraAudioMixingDualMonoMode)mode NS_SWIFT_NAME(setAudioMixingDualMonoMode(_:));
4651 - (int)setAudioMixingPitch:(NSInteger)pitch NS_SWIFT_NAME(setAudioMixingPitch(_:));
4653 #pragma mark Audio Recording
4675 - (int)startAudioRecording:(NSString * _Nonnull)filePath
4676 quality:(AgoraAudioRecordingQuality)quality NS_SWIFT_NAME(startAudioRecording(_:quality:));
4711 - (int)stopAudioRecording NS_SWIFT_NAME(stopAudioRecording());
4713 #pragma mark Echo Test
4732 - (int)startEchoTest:(
void(^ _Nullable)(NSString * _Nonnull channel, NSUInteger uid, NSInteger elapsed))successBlock NS_SWIFT_NAME(startEchoTest(_:));
4750 - (int)startEchoTestWithInterval:(NSInteger)interval
4751 successBlock:(void(^ _Nullable)(NSString * _Nonnull channel, NSUInteger uid, NSInteger elapsed))successBlock NS_SWIFT_NAME(startEchoTest(withInterval:successBlock:));
4769 - (int)stopEchoTest NS_SWIFT_NAME(stopEchoTest());
4772 #pragma mark Miscellaneous Audio Control
4789 - (int)enableInEarMonitoring:(BOOL)enabled NS_SWIFT_NAME(enable(inEarMonitoring:));
4802 - (int)enableInEarMonitoring:(BOOL)enabled includeAudioFilters:(
AgoraEarMonitoringFilterType)includeAudioFilters NS_SWIFT_NAME(enable(inEarMonitoring:includeAudioFilters:));
4815 - (int)setInEarMonitoringVolume:(NSInteger)volume NS_SWIFT_NAME(setInEarMonitoringVolume(_:));
4817 #if TARGET_OS_IPHONE
4827 - (void)setAudioSessionOperationRestriction:(AgoraAudioSessionOperationRestriction)restriction NS_SWIFT_NAME(setAudioSessionOperationRestriction(_:));
4831 #pragma mark Dual Video Mode
4850 - (int)enableDualStreamMode:(BOOL)enabled NS_SWIFT_NAME(enableDualStreamMode(_:)) __deprecated_msg(
"use setDualStreamMode: instead.");
4870 - (int)enableDualStreamMode:(BOOL)enabled
4871 streamConfig:(
AgoraSimulcastStreamConfig* _Nonnull)streamConfig NS_SWIFT_NAME(enableDualStreamMode(_:streamConfig:)) __deprecated_msg(
"use setDualStreamMode: instead.");
4921 - (int)setRemoteVideoStream:(NSUInteger)uid
4934 - (int)setRemoteVideoSubscriptionOptions:(NSUInteger)uid
4946 - (int)setRemoteDefaultVideoStreamType:(
AgoraVideoStreamType)streamType NS_SWIFT_NAME(setRemoteDefaultVideoStreamType(_:));
4948 #pragma mark Subscribe Blocklist / Allowlist
4963 - (int)setSubscribeAudioBlocklist:(NSArray <NSNumber *> *_Nonnull)blocklist NS_SWIFT_NAME(setSubscribeAudioBlocklist(_:));
4980 - (int)setSubscribeAudioAllowlist:(NSArray <NSNumber *> *_Nonnull)allowlist NS_SWIFT_NAME(setSubscribeAudioAllowlist(_:));
4995 - (int)setSubscribeVideoBlocklist:(NSArray <NSNumber *> *_Nonnull)blocklist NS_SWIFT_NAME(setSubscribeVideoBlocklist(_:));
5012 - (int)setSubscribeVideoAllowlist:(NSArray <NSNumber *> *_Nonnull)allowlist NS_SWIFT_NAME(setSubscribeVideoAllowlist(_:));
5014 #pragma mark Stream Fallback
5038 - (int)setLocalPublishFallbackOption:(AgoraStreamFallbackOptions)option NS_SWIFT_NAME(setLocalPublishFallbackOption(_:));
5051 - (int)setRemoteSubscribeFallbackOption:(AgoraStreamFallbackOptions)option NS_SWIFT_NAME(setRemoteSubscribeFallbackOption(_:));
5064 - (int)setHighPriorityUserList:(NSArray <NSNumber *> *_Nullable)uidList
5065 option:(AgoraStreamFallbackOptions)option;
5067 #pragma mark Video Quality Control
5084 - (int)setVideoQualityParameters:(BOOL)preferFrameRateOverImageQuality NS_SWIFT_NAME(setVideoQualityParameters(_:));
5086 #pragma mark External Media Source
5112 - (void)setExternalVideoSource:(BOOL)enable useTexture:(BOOL)useTexture sourceType:(
AgoraExternalVideoSourceType)sourceType NS_SWIFT_NAME(setExternalVideoSource(_:useTexture:sourceType:));
5133 - (void)setExternalVideoSource:(BOOL)enable useTexture:(BOOL)useTexture
5135 encodedVideoTrackOption:(
AgoraEncodedVideoTrackOptions* _Nonnull)encodedVideoTrackOption NS_SWIFT_NAME(setExternalVideoSource(_:useTexture:sourceType:encodedVideoTrackOption:));
5150 - (int)pushExternalEncodedVideoFrame:(NSData* _Nonnull)frame
5170 - (BOOL)pushExternalVideoFrame:(
AgoraVideoFrame * _Nonnull)frame NS_SWIFT_NAME(pushExternalVideoFrame(_:));
5189 - (
unsigned int)createCustomEncodedVideoTrack:(
AgoraEncodedVideoTrackOptions* _Nonnull)encodedVideoTrackOption NS_SWIFT_NAME(createCustomEncodedVideoTrack(_:));
5199 - (int)destroyCustomVideoTrack:(NSUInteger)videoTrackId NS_SWIFT_NAME(destroyCustomVideoTrack(_:));
5209 - (int)destroyCustomEncodedVideoTrack:(NSUInteger)videoTrackId NS_SWIFT_NAME(destroyCustomEncodedVideoTrack(_:));
5211 #pragma mark External Audio Data
5225 - (void)enableExternalAudioSink:(BOOL)enabled
5226 sampleRate:(NSUInteger)sampleRate
5227 channels:(NSUInteger)channels NS_SWIFT_NAME(enableExternalAudioSink(_:sampleRate:channels:));
5245 - (BOOL)pullPlaybackAudioFrameRawData:(
void * _Nonnull)data
5246 lengthInByte:(NSUInteger)lengthInByte NS_SWIFT_NAME(pullPlaybackAudioFrameRawData(_:lengthInByte:));
5266 - (CMSampleBufferRef _Nullable)pullPlaybackAudioFrameSampleBufferByLengthInByte:(NSUInteger)lengthInByte NS_SWIFT_NAME(pullPlaybackAudioFrameSampleBufferBy(lengthInByte:));
5296 - (int)destroyCustomAudioTrack:(NSInteger)trackId;
5312 - (int)enableCustomAudioLocalPlayback:(NSInteger)trackId enabled:(BOOL)enabled NS_SWIFT_NAME(enableCustomAudioLocalPlayback(_:enabled:));
5323 - (int)pushExternalAudioFrameRawData:(
void * _Nonnull)data
5324 samples:(NSInteger)samples
5325 trackId:(NSInteger)trackId
5326 timestamp:(NSTimeInterval)timestamp NS_SWIFT_NAME(pushExternalAudioFrameRawData(_:samples:trackId:timestamp:));
5341 - (int)pushExternalAudioFrameRawData:(
void* _Nonnull)data
5342 samples:(NSInteger)samples
5343 sampleRate:(NSInteger)sampleRate
5344 channels:(NSInteger)channels
5345 trackId:(NSInteger)trackId
5346 timestamp:(NSTimeInterval)timestamp NS_SWIFT_NAME(pushExternalAudioFrameRawData(_:samples:sampleRate:channels:trackId:timestamp:));
5355 - (int)pushExternalAudioFrameSampleBuffer:(CMSampleBufferRef _Nonnull)sampleBuffer NS_SWIFT_NAME(pushExternalAudioFrameSampleBuffer(_:));
5367 - (int)enableExternalAudioSourceLocalPlayback:(BOOL)enable NS_SWIFT_NAME(enableExternalAudioSourceLocalPlayback(_:));
5392 - (int)setRecordingAudioFrameParametersWithSampleRate:(NSInteger)sampleRate
5393 channel:(NSInteger)channel
5395 samplesPerCall:(NSInteger)samplesPerCall NS_SWIFT_NAME(setRecordingAudioFrameParametersWithSampleRate(_:channel:mode:samplesPerCall:));
5420 - (int)setPlaybackAudioFrameParametersWithSampleRate:(NSInteger)sampleRate
5421 channel:(NSInteger)channel
5423 samplesPerCall:(NSInteger)samplesPerCall NS_SWIFT_NAME(setPlaybackAudioFrameParametersWithSampleRate(_:channel:mode:samplesPerCall:));
5442 - (int)setMixedAudioFrameParametersWithSampleRate:(NSInteger)sampleRate
5443 channel:(NSInteger)channel
5444 samplesPerCall:(NSInteger)samplesPerCall NS_SWIFT_NAME(setMixedAudioFrameParametersWithSampleRate(_:channel:samplesPerCall:));
5470 - (int)setEarMonitoringAudioFrameParametersWithSampleRate:(NSInteger)sampleRate
5471 channel:(NSInteger)channel
5473 samplesPerCall:(NSInteger)samplesPerCall NS_SWIFT_NAME(setEarMonitoringAudioFrameParametersWithSampleRate(_:channel:mode:samplesPerCall:));
5489 - (int)setPlaybackAudioFrameBeforeMixingParametersWithSampleRate:(NSInteger)sampleRate
5490 channel:(NSInteger)channel NS_SWIFT_NAME(setPlaybackAudioFrameBeforeMixingParametersWithSampleRate(_:channel:));
5500 - (int)adjustCustomAudioPublishVolume:(NSInteger)trackId volume:(NSInteger)volume NS_SWIFT_NAME(adjustCustomAudioPublishVolume(_:volume:));
5511 - (int)adjustCustomAudioPlayoutVolume:(NSInteger)trackId volume:(NSInteger)volume NS_SWIFT_NAME(adjustCustomAudioPlayoutVolume(_:volume:));
5538 #pragma mark Audio spectrum monitor
5550 - (int)enableAudioSpectrumMonitor:(
int)intervalInMS NS_SWIFT_NAME(enableAudioSpectrumMonitor(_:));
5573 - (int)registerAudioSpectrumDelegate:(id<AgoraAudioSpectrumDelegate> _Nullable )
delegate NS_SWIFT_NAME(registerAudioSpectrumDelegate(_:));
5583 - (int)unregisterAudioSpectrumDelegate:(id<AgoraAudioSpectrumDelegate> _Nullable)
delegate NS_SWIFT_NAME(unregisterAudioSpectrumDelegate(_:));
5585 #pragma mark Built-in Encryption
5616 - (int)enableEncryption:(
bool)enabled encryptionConfig:(
AgoraEncryptionConfig * _Nonnull)config NS_SWIFT_NAME(enableEncryption(_:encryptionConfig:));
5619 #pragma mark Data Stream
5644 - (int)createDataStream:(NSInteger * _Nonnull)streamId
5645 reliable:(BOOL)reliable
5646 ordered:(BOOL)ordered NS_SWIFT_NAME(createDataStream(_:reliable:ordered:));
5656 - (int)createDataStream:(NSInteger * _Nonnull)streamId
5681 - (int)sendStreamMessage:(NSInteger)streamId
5682 data:(NSData * _Nonnull)data NS_SWIFT_NAME(sendStreamMessage(_:data:));
5684 #pragma mark Stream Publish
5703 - (int)startRtmpStreamWithoutTranscoding:(NSString* _Nonnull)url NS_SWIFT_NAME(startRtmpStreamWithoutTranscoding(_:));
5717 - (int)startRtmpStreamWithTranscoding:(NSString* _Nonnull)url transcoding:(AgoraLiveTranscoding* _Nullable)transcoding NS_SWIFT_NAME(startRtmpStream(withTranscoding:transcoding:));
5735 - (int)updateRtmpTranscoding:(AgoraLiveTranscoding* _Nullable)transcoding NS_SWIFT_NAME(updateRtmpTranscoding(_:));
5754 - (int)stopRtmpStream:(NSString* _Nonnull)url NS_SWIFT_NAME(stopRtmpStream(_:));
5756 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
5757 #pragma mark Screen Capture
5772 - (int)startScreenCapture:(
AgoraVideoSourceType)sourceType config:(AgoraScreenCaptureConfiguration * _Nullable)config NS_SWIFT_NAME(startScreenCapture(_:config:));
5804 - (int)startScreenCaptureByDisplayId:(UInt32)displayId
5805 regionRect:(CGRect)regionRect
5806 captureParams:(
AgoraScreenCaptureParameters *_Nonnull)captureParams NS_SWIFT_NAME(startScreenCapture(byDisplayId:regionRect:captureParams:));
5827 - (int)startScreenCaptureByWindowId:(UInt32)windowId
5828 regionRect:(CGRect)regionRect
5829 captureParams:(
AgoraScreenCaptureParameters *_Nonnull)captureParams NS_SWIFT_NAME(startScreenCapture(byWindowId:regionRect:captureParams:));
5840 - (int)updateScreenCaptureRegion:(CGRect)rect NS_SWIFT_NAME(updateScreenCaptureRegion(_:));
5851 - (int)updateScreenCaptureParameters:(
AgoraScreenCaptureParameters * _Nonnull)captureParams NS_SWIFT_NAME(updateScreenCaptureParameters(_:));
5883 - (NSArray<AgoraScreenCaptureSourceInfo*>* _Nullable)getScreenCaptureSourcesWithThumbSize:(NSSize)thumbSize iconSize:(NSSize)iconSize includeScreen:(BOOL)includeScreen NS_SWIFT_NAME(getScreenCaptureSources(withThumbSize:iconSize:includeScreen:));
5896 - (int)setScreenCaptureScenario:(
AgoraScreenScenarioType)scenarioType NS_SWIFT_NAME(setScreenCaptureScenario(_:));
5907 #if TARGET_OS_IPHONE
5953 #pragma mark Camera Control
5967 - (BOOL)isCameraZoomSupported NS_SWIFT_NAME(isCameraZoomSupported());
5983 - (CGFloat)setCameraZoomFactor:(CGFloat)zoomFactor NS_SWIFT_NAME(setCameraZoomFactor(_:));
5992 - (BOOL)isCameraFocusPositionInPreviewSupported NS_SWIFT_NAME(isCameraFocusPositionInPreviewSupported());
6001 - (BOOL)setCameraFocusPositionInPreview:(CGPoint)position NS_SWIFT_NAME(setCameraFocusPositionInPreview(_:));
6010 - (BOOL)isCameraExposurePositionSupported NS_SWIFT_NAME(isCameraExposurePositionSupported());
6019 - (BOOL)setCameraExposurePosition:(CGPoint)positionInView NS_SWIFT_NAME(setCameraExposurePosition(_:));
6029 - (BOOL)isCameraExposureSupported NS_SWIFT_NAME(isCameraExposureSupported());
6038 - (CGFloat)setCameraExposureFactor:(CGFloat)exposureFactor NS_SWIFT_NAME(setCameraExposureFactor(_:));
6060 - (BOOL)isCameraTorchSupported NS_SWIFT_NAME(isCameraTorchSupported());
6078 - (BOOL)setCameraTorchOn:(BOOL)isOn NS_SWIFT_NAME(setCameraTorchOn(_:));
6087 - (BOOL)isCameraAutoFocusFaceModeSupported NS_SWIFT_NAME(isCameraAutoFocusFaceModeSupported());
6100 - (BOOL)setCameraAutoFocusFaceModeEnabled:(BOOL)enable NS_SWIFT_NAME(setCameraAutoFocusFaceModeEnabled(_:));
6109 - (BOOL)isCameraAutoExposureFaceModeSupported NS_SWIFT_NAME(isCameraAutoExposureFaceModeSupported());
6122 - (BOOL)setCameraAutoExposureFaceModeEnabled:(BOOL)enable NS_SWIFT_NAME(setCameraAutoExposureFaceModeEnabled(_:));
6170 - (int)enablePortraitCenterStage:(BOOL)enabled NS_SWIFT_NAME(enablePortraitCenterStage(_:));
6204 - (int)stopCameraCapture:(
AgoraVideoSourceType)sourceType NS_SWIFT_NAME(stopCameraCapture(_:));
6206 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
6207 #pragma mark macOS Device
6220 - (void)monitorDeviceChange:(BOOL)enabled NS_SWIFT_NAME(monitorDeviceChange(_:));
6234 - (NSArray<AgoraRtcDeviceInfo *> * _Nullable)enumerateDevices:(AgoraMediaDeviceType)type NS_SWIFT_NAME(enumerateDevices(_:));
6243 - (AgoraRtcDeviceInfo * _Nullable)getDeviceInfo:(AgoraMediaDeviceType)type NS_SWIFT_NAME(getDeviceInfo(_:));
6255 - (int)setDevice:(AgoraMediaDeviceType)type deviceId:(NSString * _Nonnull)deviceId NS_SWIFT_NAME(setDevice(_:deviceId:));
6263 - (AgoraRtcDeviceInfo* _Nullable)getDefaultAudioDevice:(AgoraMediaDeviceType)type NS_SWIFT_NAME(getDefaultAudioDevice(_:));
6273 - (int)getDeviceVolume:(AgoraMediaDeviceType)type NS_SWIFT_NAME(getDeviceVolume(_:));
6284 - (int)setDeviceVolume:(AgoraMediaDeviceType)type volume:(int)volume NS_SWIFT_NAME(setDeviceVolume(_:volume:));
6296 - (int)startRecordingDeviceTest:(
int)indicationInterval NS_SWIFT_NAME(startRecordingDeviceTest(_:));
6307 - (int)stopRecordingDeviceTest NS_SWIFT_NAME(stopRecordingDeviceTest());
6323 - (int)startPlaybackDeviceTest:(NSString * _Nonnull)audioFileName NS_SWIFT_NAME(startPlaybackDeviceTest(_:));
6334 - (int)stopPlaybackDeviceTest NS_SWIFT_NAME(stopPlaybackDeviceTest());
6349 - (int)startAudioDeviceLoopbackTest:(
int)indicationInterval NS_SWIFT_NAME(startAudioDeviceLoopbackTest(_:));
6358 - (int)stopAudioDeviceLoopbackTest NS_SWIFT_NAME(stopAudioDeviceLoopbackTest());
6371 - (int)followSystemPlaybackDevice:(BOOL)enable NS_SWIFT_NAME(followSystemPlaybackDevice(_:));
6384 - (int)followSystemRecordingDevice:(BOOL)enable NS_SWIFT_NAME(followSystemRecordingDevice(_:));
6394 - (int)startCaptureDeviceTest:(NSView * _Nonnull)view NS_SWIFT_NAME(startCaptureDeviceTest(_:));
6402 - (int)stopCaptureDeviceTest NS_SWIFT_NAME(stopCaptureDeviceTest());
6405 #pragma mark Face Detection
6407 #if TARGET_OS_IPHONE
6432 - (int)enableFaceDetection:(
bool)enable NS_SWIFT_NAME(enableFaceDetection(_:));
6435 #pragma mark Watermark
6448 - (int)addVideoWatermark:(AgoraImage * _Nonnull)watermark NS_SWIFT_NAME(addVideoWatermark(_:)) __deprecated_msg(
"use addVideoWatermark:url options instead.");
6475 - (int)addVideoWatermark:(NSURL* _Nonnull)url options:(
WatermarkOptions* _Nonnull)options NS_SWIFT_NAME(addVideoWatermark(_:options:));
6481 - (int)clearVideoWatermarks NS_SWIFT_NAME(clearVideoWatermarks());
6483 #pragma mark String UID
6517 - (int)registerLocalUserAccount:(NSString* _Nonnull)userAccount appId:(NSString* _Nonnull)appId NS_SWIFT_NAME(registerLocalUserAccount(_:appId:));
6553 - (int)joinChannelByToken:(NSString * _Nullable)token
6554 channelId:(NSString * _Nonnull)channelId
6555 userAccount:(NSString * _Nonnull)userAccount
6556 joinSuccess:(void(^ _Nullable)(NSString * _Nonnull channel, NSUInteger uid, NSInteger elapsed))joinSuccessBlock NS_SWIFT_NAME(joinChannel(byToken:channelId:userAccount:joinSuccess:));
6593 - (int)joinChannelByToken:(NSString * _Nullable)token
6594 channelId:(NSString * _Nonnull)channelId
6595 userAccount:(NSString * _Nonnull)userAccount
6597 joinSuccess:(
void(^ _Nullable)(NSString * _Nonnull channel, NSUInteger uid, NSInteger elapsed))joinSuccessBlock NS_SWIFT_NAME(joinChannel(byToken:channelId:userAccount:mediaOptions:joinSuccess:));
6609 - (
AgoraUserInfo* _Nullable)getUserInfoByUserAccount:(NSString* _Nonnull)userAccount withError:(AgoraErrorCode* _Nullable)error NS_SWIFT_NAME(getUserInfo(byUserAccount:withError:));
6621 - (
AgoraUserInfo* _Nullable)getUserInfoByUid:(NSUInteger)uid withError:(AgoraErrorCode* _Nullable)error NS_SWIFT_NAME(getUserInfo(byUid:withError:));
6623 #pragma mark Custom Audio PCM Frame
6631 - (BOOL)setAudioFrameDelegate:(id<AgoraAudioFrameDelegate> _Nullable)
delegate NS_SWIFT_NAME(setAudioFrameDelegate(_:));
6633 #pragma mark Custom Video Frame
6646 - (BOOL)setVideoFrameDelegate:(id<AgoraVideoFrameDelegate> _Nullable)
delegate NS_SWIFT_NAME(setVideoFrameDelegate(_:));
6648 #pragma mark Encoded Video Frame
6661 - (BOOL)setEncodedVideoFrameDelegate:(id<AgoraEncodedVideoFrameDelegate> _Nullable)
delegate NS_SWIFT_NAME(setEncodedVideoFrameDelegate(_:));
6663 #pragma mark Custom Media Metadata
6687 - (BOOL)setMediaMetadataDataSource:(id<AgoraMediaMetadataDataSource> _Nullable)metadataDataSource withType:(
AgoraMetadataType)type NS_SWIFT_NAME(setMediaMetadataDataSource(_:with:));
6704 - (BOOL)setMediaMetadataDelegate:(id<AgoraMediaMetadataDelegate> _Nullable)metadataDelegate withType:(
AgoraMetadataType)type NS_SWIFT_NAME(setMediaMetadataDelegate(_:with:));
6706 #pragma mark Miscellaneous Methods
6725 + (NSString* _Nonnull)getErrorDescription:(NSInteger)error NS_SWIFT_NAME(getErrorDescription(_:));
6732 - (
void * _Nullable)getNativeHandle NS_SWIFT_NAME(getNativeHandle());
6758 - (int)setLogFile:(NSString * _Nonnull)filePath NS_SWIFT_NAME(setLogFile(_:));
6774 - (int)setLogFilter:(NSUInteger)filter NS_SWIFT_NAME(setLogFilter(_:));
6790 - (int)setLogFileSize:(NSUInteger)fileSizeInKBytes NS_SWIFT_NAME(setLogFileSize(_:));
6833 - (int)rate:(NSString * _Nonnull)callId
6834 rating:(NSInteger)rating
6835 description:(NSString * _Nullable)description NS_SWIFT_NAME(rate(_:rating:description:));
6854 - (int)complain:(NSString * _Nonnull)callId
6855 description:(NSString * _Nullable)description NS_SWIFT_NAME(complain(_:description:));
6868 - (int)enableMainQueueDispatch:(BOOL)enabled NS_SWIFT_NAME(enableMainQueueDispatch(_:));
6891 - (int)startLastmileProbeTest:(
AgoraLastmileProbeConfig *_Nullable)config NS_SWIFT_NAME(startLastmileProbeTest(_:));
6908 - (int)setParameters:(NSString * _Nonnull)options NS_SWIFT_NAME(setParameters(_:));
6915 - (NSString * _Nullable)getParameter:(NSString * _Nonnull)parameter
6916 args:(NSString * _Nullable)args NS_SWIFT_NAME(getParameter(_:args:));
6924 #pragma mark MediaPlayer
6934 - (id<AgoraRtcMediaPlayerProtocol>_Nullable)createMediaPlayerWithDelegate:(id<AgoraRtcMediaPlayerDelegate>_Nullable)
delegate NS_SWIFT_NAME(createMediaPlayer(with:));
6952 - (int)destroyMediaPlayer:(id<AgoraRtcMediaPlayerProtocol>_Nullable)mediaPlayer NS_SWIFT_NAME(destroyMediaPlayer(_:));
6969 - (id<AgoraRtcMediaPlayerProtocol> _Nullable)getMediaPlayer:(
int)mediaPlayerId NS_SWIFT_NAME(getMediaPlayer(_:));
6971 #pragma mark rhythm player
6983 - (int)startRhythmPlayer:(NSString * _Nonnull)sound1 sound2:(NSString * _Nonnull)sound2 config:(
AgoraRhythmPlayerConfig * _Nullable)config NS_SWIFT_NAME(startRhythmPlayer(_:sound2:config:));
7003 #pragma mark Streaming Kit
7017 - (int)setDirectCdnStreamingAudioConfiguration:(
AgoraAudioProfile)profile NS_SWIFT_NAME(setDirectCdnStreamingAudioConfiguration(_:));
7033 - (int)setDirectCdnStreamingVideoConfiguration:(AgoraVideoEncoderConfiguration * _Nonnull)config NS_SWIFT_NAME(setDirectCdnStreamingVideoConfiguration(_:));
7048 - (int)startDirectCdnStreaming:(id<AgoraDirectCdnStreamingEventDelegate> _Nonnull)
delegate
7049 publishUrl:(NSString * _Nonnull)publishUrl
7075 #pragma mark Channel Transcoder
7083 #pragma mark Deprecated Methods
7101 - (void)audioVolumeIndicationBlock:(
void(^ _Nullable)(NSArray * _Nonnull speakers, NSInteger totalVolume))audioVolumeIndicationBlock NS_SWIFT_NAME(audioVolumeIndicationBlock(_:)) __deprecated_msg(
"use delegate instead.");
7111 - (void)firstLocalVideoFrameBlock:(
void(^ _Nullable)(NSInteger width, NSInteger height, NSInteger elapsed))firstLocalVideoFrameBlock NS_SWIFT_NAME(firstLocalVideoFrameBlock(_:)) __deprecated_msg(
"use delegate instead.");
7123 - (void)firstRemoteVideoDecodedBlock:(
void(^ _Nullable)(NSUInteger uid, NSInteger width, NSInteger height, NSInteger elapsed))firstRemoteVideoDecodedBlock NS_SWIFT_NAME(firstRemoteVideoDecodedBlock(_:)) __deprecated_msg(
"use delegate instead.");
7134 - (void)firstRemoteVideoFrameBlock:(
void(^ _Nullable)(NSUInteger uid, NSInteger width, NSInteger height, NSInteger elapsed))firstRemoteVideoFrameBlock NS_SWIFT_NAME(firstRemoteVideoFrameBlock(_:)) __deprecated_msg(
"use delegate instead.");
7145 - (void)userJoinedBlock:(
void(^ _Nullable)(NSUInteger uid, NSInteger elapsed))userJoinedBlock NS_SWIFT_NAME(userJoinedBlock(_:)) __deprecated_msg(
"use delegate instead.");
7155 - (void)userOfflineBlock:(
void(^ _Nullable)(NSUInteger uid))userOfflineBlock NS_SWIFT_NAME(userOfflineBlock(_:)) __deprecated_msg(
"use delegate instead.");
7166 - (void)userMuteAudioBlock:(
void(^ _Nullable)(NSUInteger uid, BOOL muted))userMuteAudioBlock NS_SWIFT_NAME(userMuteAudioBlock(_:)) __deprecated_msg(
"use delegate instead.");
7182 - (void)userMuteVideoBlock:(
void(^ _Nullable)(NSUInteger uid, BOOL muted))userMuteVideoBlock NS_SWIFT_NAME(userMuteVideoBlock(_:)) __deprecated_msg(
"use delegate instead.");
7191 - (void)localVideoStatBlock:(
void(^ _Nullable)(NSInteger sentBitrate, NSInteger sentFrameRate))localVideoStatBlock NS_SWIFT_NAME(localVideoStatBlock(_:)) __deprecated_msg(
"use delegate instead.");
7202 - (void)remoteVideoStatBlock:(
void(^ _Nullable)(NSUInteger uid, NSInteger delay, NSInteger receivedBitrate, NSInteger receivedFrameRate))remoteVideoStatBlock NS_SWIFT_NAME(remoteVideoStatBlock(_:)) __deprecated_msg(
"use delegate instead.");
7207 - (void)cameraReadyBlock:(
void(^ _Nullable)(void))cameraReadyBlock NS_SWIFT_NAME(cameraReadyBlock(_:)) __deprecated_msg(
"use delegate instead.");
7212 - (void)connectionLostBlock:(
void(^ _Nullable)(void))connectionLostBlock NS_SWIFT_NAME(connectionLostBlock(_:)) __deprecated_msg(
"use delegate instead.");
7224 - (void)rejoinChannelSuccessBlock:(
void(^ _Nullable)(NSString * _Nonnull channel, NSUInteger uid, NSInteger elapsed))rejoinChannelSuccessBlock NS_SWIFT_NAME(rejoinChannelSuccessBlock(_:)) __deprecated_msg(
"use delegate instead.");
7232 - (void)rtcStatsBlock:(
void(^ _Nullable)(
AgoraChannelStats * _Nonnull stat))rtcStatsBlock NS_SWIFT_NAME(rtcStatsBlock(_:)) __deprecated_msg(
"use delegate instead.");
7242 - (void)leaveChannelBlock:(
void(^ _Nullable)(
AgoraChannelStats * _Nonnull stat))leaveChannelBlock NS_SWIFT_NAME(leaveChannelBlock(_:)) __deprecated_msg(
"use delegate instead.");
7253 - (void)audioQualityBlock:(
void(^ _Nullable)(NSUInteger uid,
AgoraNetworkQuality quality, NSUInteger delay, NSUInteger lost))audioQualityBlock NS_SWIFT_NAME(audioQualityBlock(_:)) __deprecated_msg(
"use delegate instead.");
7263 - (void)networkQualityBlock:(
void(^ _Nullable)(NSUInteger uid,
AgoraNetworkQuality txQuality,
AgoraNetworkQuality rxQuality))networkQualityBlock NS_SWIFT_NAME(networkQualityBlock(_:)) __deprecated_msg(
"use delegate instead.");
7271 - (void)lastmileQualityBlock:(
void(^ _Nullable)(
AgoraNetworkQuality quality))lastmileQualityBlock NS_SWIFT_NAME(lastmileQualityBlock(_:)) __deprecated_msg(
"use delegate instead.");
7276 - (void)mediaEngineEventBlock:(
void(^ _Nullable)(NSInteger code))mediaEngineEventBlock NS_SWIFT_NAME(mediaEngineEventBlock(_:)) __deprecated_msg(
"use delegate instead.");
7287 - (int)pauseAudio __deprecated_msg(
"use disableAudio instead.");
7298 - (int)resumeAudio __deprecated_msg(
"use enableAudio instead.");
7306 + (instancetype _Nonnull)sharedEngineWithAppId:(NSString * _Nonnull)AppId
7307 error:(void(^ _Nullable)(AgoraErrorCode errorCode))errorBlock NS_SWIFT_NAME(sharedEngine(withAppId:error:)) __deprecated_msg(
"use sharedEngineWithAppId:delegate: instead.");
7314 - (int)setHighQualityAudioParametersWithFullband:(BOOL)fullband
7316 fullBitrate:(BOOL)fullBitrate NS_SWIFT_NAME(setHighQualityAudioParametersWithFullband(_:stereo:fullBitrate:)) __deprecated_msg(
"use setAudioProfile:scenario: instead.");
7335 - (int)setVideoProfile:(AgoraVideoProfile)profile
7336 swapWidthAndHeight:(BOOL)swapWidthAndHeight NS_SWIFT_NAME(setVideoProfile(_:swapWidthAndHeight:)) __deprecated_msg(
"use setVideoEncoderConfiguration: instead.");
7356 - (int)setVideoResolution:(CGSize)size andFrameRate:(NSInteger)frameRate bitrate:(NSInteger)bitrate NS_SWIFT_NAME(setVideoResolution(_:andFrameRate:bitrate:)) __deprecated_msg(
"use setVideoEncoderConfiguration: instead.");
7376 - (int)setAudioProfile:(
AgoraAudioProfile)profile scenario:(
AgoraAudioScenario)scenario NS_SWIFT_NAME(setAudioProfile(_:scenario:)) __deprecated_msg(
"use setAudioProfile: instead.");
7385 - (NSString * _Nullable)getDeviceId:(AgoraMediaDeviceType)type NS_SWIFT_NAME(getDeviceId(_:)) __deprecated_msg(
"use getDeviceInfo: instead.");
7407 - (int)setExternalAudioSource:(BOOL)enabled
7408 sampleRate:(NSInteger)sampleRate
7409 channels:(NSInteger)channels NS_SWIFT_NAME(setExternalAudioSource(_:sampleRate:channels:)) __deprecated_msg(
"use createCustomAudioTrack:config: instead.");
7437 - (int)setExternalAudioSource:(BOOL)enabled
7438 sampleRate:(NSInteger)sampleRate
7439 channels:(NSInteger)channels
7440 localPlayback:(BOOL)localPlayback
7441 publish:(BOOL)publish NS_SWIFT_NAME(setExternalAudioSource(_:sampleRate:channels:localPlayback:publish:)) __deprecated_msg(
"use createCustomAudioTrack:config: instead.");
7443 #if (!(TARGET_OS_IPHONE) && (TARGET_OS_MAC))
7453 - (int)setSpeakerphoneVolume:(NSUInteger)volume NS_SWIFT_NAME(setSpeakerphoneVolume(_:)) __deprecated_msg(
"use setDeviceVolume:volume: instead.");
7455 - (int)startScreenCapture:(NSUInteger)windowId
7456 withCaptureFreq:(NSInteger)captureFreq
7457 bitRate:(NSInteger)bitRate
7458 andRect:(CGRect)rect NS_SWIFT_NAME(startScreenCapture(_:withCaptureFreq:bitRate:andRect:)) __deprecated_msg(
"use startScreenCaptureByWindowId:regionRect:captureParams: instead.");
7466 + (NSString * _Nonnull)getMediaEngineVersion NS_SWIFT_NAME(getMediaEngineVersion())
__deprecated;
7468 - (int)setAudioOptionParams:(NSString * _Nonnull)params NS_SWIFT_NAME(setAudioOptionParams(_:));
7469 - (NSString * _Nullable)getAudioOptionParams NS_SWIFT_NAME(getAudioOptionParams());
7478 - (int)setAdvancedAudioOptions:(
AgoraAdvancedAudioOptions * _Nonnull)options NS_SWIFT_NAME(setAdvancedAudioOptions(_:));
7492 - (int)sendCustomReportMessage:(NSString * _Nullable)messageId
7493 category:(NSString * _Nullable)category
7494 event:(NSString * _Nullable)
event
7495 label:(NSString * _Nullable)label
7496 value:(NSInteger)value NS_SWIFT_NAME(sendCustomReportMessage(_:category:event:label:value:));
7512 - (int)setLogLevel:(
AgoraLogLevel)level NS_SWIFT_NAME(setLogLevel(_:));
7529 - (int)setEncryptionMode:(NSString * _Nullable)encryptionMode NS_SWIFT_NAME(setEncryptionMode(_:)) __deprecated_msg(
"use enableEncryption: instead.");
7545 - (int)setEncryptionSecret:(NSString * _Nullable)secret NS_SWIFT_NAME(setEncryptionSecret(_:)) __deprecated_msg(
"use enableEncryption: instead.");
7596 - (NSInteger)takeSnapshot:(NSInteger)uid filePath:(NSString* _Nonnull)filePath NS_SWIFT_NAME(takeSnapshot(_:filePath:));
7598 - (int)enableContentInspect:(BOOL)enabled config:(
AgoraContentInspectConfig* _Nonnull)config NS_SWIFT_NAME(enableContentInspect(_:config:));
7610 - (int)setAVSyncSource:(NSString* _Nonnull)channelId uid:(NSUInteger)uid NS_SWIFT_NAME(setAVSyncSource(_:uid:));
7618 - (int)enableVideoImageSource:(BOOL)enable
7649 #pragma mark Media Recorder Delegate Methods
7702 - (int)setMediaRecorderDelegate:(
id<
AgoraMediaRecorderDelegate> _Nullable)delegate NS_SWIFT_NAME(setMediaRecorderDelegate(_:));
7713 - (int)enableMainQueueDispatch:(BOOL)enabled NS_SWIFT_NAME(enableMainQueueDispatch(_:));