| 方法 | 描述 |
|---|---|
| sharedInstance | 获取 ByteRTCEngineKit 单例对象。 |
| destroy | 销毁由 initWithAppId:delegate:parameters: 创建的引擎实例,并释放所有相关资源。 |
| getSdkVersion | 获取 SDK 当前的版本号。 |
| getErrorDescription: | 获取 SDK 内各种错误码、警告码的描述文字。 |
| initWithAppId:delegate:parameters: | 创建引擎对象。 如果当前线程中未创建引擎实例,那么你必须先使用此方法,以使用 RTC 提供的各种音视频能力。 如果当前线程中已创建了引擎实例,再次调用此方法时,会创建另一个独立的引擎实例。 |
| destroyEngine | 手动销毁引擎实例对象,如果当前的引擎对象是通过 initWithAppId:delegate:parameters: 所创建的,则行为与 destroy 保持一致 |
| setBusinessId: | 设置业务标识参数。 可通过 businessId 区分不同的业务场景(角色/策略等)。businessId 由客户自定义,相当于一个“标签”,可以分担和细化现在 AppId 的逻辑划分的功能。 |
| feedbackTypes:desc: | 通话结束,将用户反馈的问题上报到 RTC |
| 方法 | 描述 |
|---|---|
| setUserVisibility: | 设置用户可见性。默认为可见。 通过对用户可见性进行设置,可以控制用户在房间内的行为: + 能否发布音视频流; + 用户自身是否在房间中隐身。 |
| publish | 将本端音视频流发布到此房间。 |
| unpublish | 在当前所在房间内停止发布本地音视频流。 |
| clientRole | 获取当前用户角色。 |
| joinRoomByKey:roomId:userInfo:rtcRoomConfig: | 创建/加入房间:房间不存在时即创建房间;房间存在时,未加入房间的用户可加入这个房间。 同一个房间内的用户间可以相互通话。 进房后重复调用无效,用户必须调用 leaveRoom: 退出当前房间后,才能加入下一个房间。 |
| leaveRoom: | 离开房间。 用户调用此方法离开房间,结束通话过程,释放所有通话相关的资源。 调用 joinRoomByKey:roomId:userInfo:rtcRoomConfig: 方法加入房间后,必须调用此方法离开房间,否则无法进入下一个房间。无论当前是否在房间内,都可以调用此方法。重复调用此方法没有负面影响。 此方法是异步操作,调用返回时并没有真正退出房间。真正退出房间后,SDK 会执行调用此方法时传入的 Block 块。 |
| leaveRoom | 离开房间。 用户调用此方法离开房间,结束通话过程,释放所有通话相关的资源。 |
| updateToken: | 更新 Token。 用户调用 joinRoomByKey:roomId:userInfo:rtcRoomConfig: 方法加入房间时, 如果使用了过期的 Token 将导致加入房间失败,并会收到 rtcEngine:onJoinRoomResult:withUid:errorCode:joinType:elapsed: 回调, 回调错误码为 ByteRTCErrorCode 中的 ByteRTCErrorCodeInvalidToken 此时需要重新获取 Token,并调用此方法更新 Token。更新 Token 后,SDK 会自动加入房间。 |
| pauseAllSubscribedStream: | 暂停接收来自远端的媒体流 |
| resumeAllSubscribedStream: | 恢复接收来自远端的媒体流 |
| subscribeUserStream:streamType:mediaType:videoConfig: | 订阅房间内指定的远端音视频流。 无论是否开启自动订阅,你都可以调用此方法按需订阅房间中的音视频流。 该方法也可用于更新已经订阅的流的属性、媒体类型等配置。 |
| createRtcRoom: | 创建并获取一个 ByteRTCRoom 对象 |
| leaveRoom | 离开房间。 用户调用此方法离开房间,结束通话过程,释放所有通话相关的资源。 |
| 方法 | 描述 |
|---|---|
| startAudioCapture | 开启内部音频采集。默认为关闭状态。 进房前调用该方法,本地用户会收到 rtcEngine:onMediaDeviceStateChanged:device_type:device_state:device_error: 的回调。 进房后调用该方法,房间中的其他用户会收到 rtcEngine:onUserStartAudioCapture: 的回调。 |
| stopAudioCapture | 关闭内部音频采集。默认为关闭状态。 进房前调用该方法,本地用户会收到 rtcEngine:onMediaDeviceStateChanged:device_type:device_state:device_error: 的回调。 进房后调用该方法,房间中的其他用户会收到 rtcEngine:onUserStopAudioCapture: 的回调。 |
| setAudioScenario: | 设置音频场景类型。 你可以根据你的应用所在场景,选择合适的音频场景类型。 选择音频场景后,RTC 会自动根据客户端音频路由和发布订阅状态,适用通话音量/媒体音量。 本方法在进房前和进房后设置均可生效。 |
| setPlaybackVolume: | 调节本地播放的所有远端用户混音后的音量。 |
| enableAudioPropertiesReport: | 启用音量提示。 |
| SetEarMonitorMode: | 开启/关闭耳返功能 |
| SetEarMonitorVolume: | 设置耳返的音量 |
| setAudioPlaybackDevice: | 设置音频播放设备为扬声器或者听筒,默认使用扬声器。 音频播放设备发生变化时,会收到 rtcEngine:onAudioPlaybackDeviceChanged: 回调。 |
| setRemoteAudioPlaybackVolume:volume: | 调节来自指定远端用户的音频播放音量,默认为 100。 |
| 方法 | 描述 |
|---|---|
| publishScreen | 发布本地屏幕共享流。 |
| unpublishScreen | 取消发布屏幕流 |
| pushScreenCaptureFrame:time:rotation: | 推送外部屏幕采集帧 |
| startScreenSharingWithPreferredExtension:groupId: | 开始内部屏幕采集 |
| API_AVAILABLE | 停止内部屏幕采集 |
| setScreenAudioSourceType: | 在屏幕共享时,设置屏幕音频的采集方式(内部采集/自定义采集) |
| setScreenAudioStreamIndex: | 在屏幕共享时,设置屏幕音频流和麦克风采集到的音频流的混流方式 |
| pushScreenAudioFrame: | 使用自定义采集方式,采集屏幕共享时的屏幕音频时,将音频帧推送至 RTC SDK 处进行编码等处理。 |
| 方法 | 描述 |
|---|---|
| sendRoomMessage: | 给房间内的所有其他用户发送文本消息。 |
| sendRoomBinaryMessage: | 给房间内的所有其他用户发送二进制消息。 |
| sendUserMessage:message: | 给房间内指定的用户发送文本消息(P2P)。 |
| sendUserBinaryMessage:message: | 给房间内指定的用户发送二进制消息(P2P)。 |
| login:uid: | 必须先登录注册一个 uid,才能发送房间外消息和向业务服务器发送消息 |
| logout | 调用本接口登出后,无法调用房间外消息以及端到服务器消息相关的方法或收到相关回调。 |
| updateLoginToken: | 更新用户用于登录的 Token Token 有一定的有效期,当 Token 过期时,需调用此方法更新登录的 Token 信息。 调用 login:uid: 方法登录时,如果使用了过期的 Token 将导致登录失败,并会收到 rtcEngine:onLoginResult:errorCode:elapsed: 回调通知,错误码为 ByteRTCLoginErrorCodeInvalidToken。此时需要重新获取 Token,并调用此方法更新 Token。 |
| setServerParams:url: | 设置业务服务器参数 客户端调用 sendServerMessage: 或 sendServerBinaryMessage: 发送消息给业务服务器之前,必须需要设置有效签名和业务服务器地址。 |
| getPeerOnlineStatus: | 查询对端用户或本端用户的登录状态 |
| sendUserMessageOutsideRoom:message: | 给房间外指定的用户发送文本消息(P2P) |
| sendUserBinaryMessageOutsideRoom:message: | 给房间外指定的用户发送二进制消息(P2P) |
| sendServerMessage: | 客户端给业务服务器发送文本消息(P2Server) |
| sendServerBinaryMessage: | 客户端给业务服务器发送二进制消息(P2Server) |
| 方法 | 描述 |
|---|---|
| startAudioMixing:filePath:config: | 开始播放音乐文件及混音 |
| stopAudioMixing: | 停止播放音乐文件及混音 |
| pauseAudioMixing: | 暂停播放音乐文件 |
| resumeAudioMixing: | 恢复播放音乐文件 |
| preloadAudioMixing:filePath: | 预加载指定音乐文件到内存中 |
| unloadAudioMixing: | 卸载指定音乐文件 |
| setAudioMixingVolume:volume:type: | 调节音乐文件在本地和远端播放的音量大小 |
| getAudioMixingDuration: | 获取音乐文件时长 |
| getAudioMixingCurrentPosition: | 获取音乐文件播放进度 |
| setAudioMixingPosition:position: | 设置音乐文件的播放位置 |
| enableAudioMixingFrame: | 启动外部音频流混音 |
| disableAudioMixingFrame | 关闭外部音频流混音 |
| pushAudioMixingFrame: | 向 SDK 推送外部音频帧数据 |
| getAudioMixingManager | 混音管理接口创建 |
| 方法 | 描述 |
|---|---|
| muteLocalAudio: | 控制本地音频流的发送状态:发送/不发送。 使用此方法后,房间中的其他用户会收到回调 rtcEngine:onUserMuteAudio:muteState:。 |
| 方法 | 描述 |
|---|---|
| setCaptureVolume:volume: | 调节音频采集音量 |
| 方法 | 描述 |
|---|---|
| setLocalVideoSink:withSink:withPixelFormat: | 将本地视频流与自定义渲染器绑定。 |
| setRemoteVideoSink:withSink:withPixelFormat: | 将远端视频流与自定义渲染器绑定。 |
| pushExternalVideoFrame:time: | 推送外部视频帧。 |
| pushExternalVideoFrame:time:rotation: | 推送外部视频帧。 |
| pushExternalVideoFrame:time:rotation:extendedData:supplementaryInfo: | 推送外部视频帧。 |
| pushExternalByteVideoFrame: | 推送外部视频帧,使用 ByteRTCVideoFrame 进行封装。 |
| 方法 | 描述 |
|---|---|
| checkVideoEffectLicense: | 视频特效许可证检查 |
| enableVideoEffect: | 创建/销毁视频特效引擎 |
| setVideoEffectAlgoModelPath: | 设置视频特效算法模型路径 |
| setVideoEffectNodes: | 设置视频特效素材包,支持同时设置多个素材包 |
| updateVideoEffectNode:nodeKey:nodeValue: | 设置特效强度 |
| setVideoEffectColorFilter: | 设置颜色滤镜 |
| setVideoEffectColorFilterIntensity: | 设置已启用的颜色滤镜强度 |
| 方法 | 描述 |
|---|---|
| registerLocalVideoProcessor:withConfig: | 设置自定义视频前处理器。 使用这个视频前处理器,你能够调用 processVideoFrame: 对 RTC SDK 采集得到的视频帧进行前处理,并将处理后的视频帧用于 RTC 音视频通信。 |
| 方法 | 描述 |
|---|---|
| registerLocalEncodedVideoFrameObserver: | 注册本地视频帧监测器。 无论使用内部采集还是自定义采集,调用该方法后,SDK 每监测到一帧本地视频帧时,都会将视频帧信息通过 onLocalEncodedVideoFrame:Frame: 回调给用户 |
| 方法 | 描述 |
|---|---|
| startLiveTranscoding:observer: | 开启转推直播,并设置合流的视频视图布局和音频属性。 |
| stopLiveTranscoding | 停止转推直播。 |
| updateLiveTranscoding: | 更新转推直播参数。 启用转推直播功能后,你可以使用此方法更新转推直播功能配置参数。 |
| 方法 | 描述 |
|---|---|
| enableCloudRending: | 按照传入的布局信息开启云端渲染。 |
| updateCloudRending: | 按照传入的布局信息更新云端渲染。 |
| disableCloudRending | 停止云端渲染。 |
| 方法 | 描述 |
|---|---|
| enableExternalAudioDevice:playbackFormat: | 启用自定义音频采集渲染 |
| disableExternalAudioDevice | 禁用已开启的自定义音频采集渲染,将音频采集渲染由自定义模块切换至内部模块。 |
| pushExternalAudioFrame: | 推送外部音频数据。 |
| pullExternalAudioFrame: | 拉取外部音频数据。 |
| 方法 | 描述 |
|---|---|
| setRecordingAudioFrameParameters:channels: | 设置本地麦克风录制的音频数据回调参数 |
| setPlaybackAudioFrameParameters:channels: | 设置远端所有用户音频数据混音后的音频数据回调参数 |
| setMixedAudioFrameParameters:channels: | 设置本地麦克风录制音频数据和远端所有用户音频数据混音后的音频数据回调参数 |
| setAudioFrameObserver: | 设置音频数据回调观察者 |
| 方法 | 描述 |
|---|---|
| registerLocalAudioProcessor:format: | 设置自定义音频处理器。 使用该处理器,你可以调用 processAudioFrame: 对 RTC SDK 采集得到的音频帧进行自定义处理,并将处理后的音频帧用于 RTC 音视频通信。 SDK 只持有 processor 的弱引用,你应保证其生命周期。 |
| 方法 | 描述 |
|---|---|
| setPublishFallbackOption: | 设置发布的音视频流回退选项 |
| setSubscribeFallbackOption: | 设置订阅的音视频流回退选项 |
| setRemoteUserPriority:uid: | 设置用户优先级 |
| 方法 | 描述 |
|---|---|
| setEncryptType:key: | 设置传输时使用内置加密的方式 |
| setCustomizeEncryptHandler: | 设置自定义加密和解密方式 需要实现对应的加密和解密方法。详情参考 ByteRTCEncryptHandler |
| 方法 | 描述 |
|---|---|
| startASR:handler: | 开启自动语音识别服务。该方法将识别后的用户语音转化成文字,并通过 onMessage: 事件回调给用户。 |
| stopASR | 关闭语音识别服务 |
| 方法 | 描述 |
|---|---|
| startFileRecording:withRecordingConfig: | 该方法将通话过程中的音视频数据录制到本地的文件中。 |
| stopFileRecording: | 停止本地录制 |
| 方法 | 描述 |
|---|---|
| destroy | 销毁房间 |
| getRoomId | 获取房间 ID |
| setRtcRoomDelegate: | 设置 ByteRTCRoomDelegate 代理。 通过设置事件句柄,可以监听此 ByteRTCRoom 对象对应的回调事件。 |
| joinRoomByToken:userInfo:roomConfig: | 加入房间。 调用 createRtcRoom: 创建房间后,调用此方法加入房间,同房间内其他用户进行音视频通话。 |
| setUserVisibility: | 设置用户可见性。默认为可见。 通过对用户可见性进行设置,可以控制用户在房间内的行为: + 能否发布音视频流; + 用户自身是否在房间中隐身。 |
| clientRole | 获取当前用户角色。 |
| renewToken: | 更新 Token。 用户调用 joinRoomByToken:userInfo:roomConfig: 方法加入房间时, 如果使用了过期的 Token 将导致加入房间失败,并会收到 rtcEngine:onJoinRoomResult:withUid:errorCode:joinType:elapsed: 回调, 回调错误码为 ByteRTCErrorCode 中的 ByteRTCErrorCodeInvalidToken。 此时需要重新获取 Token,并调用此方法更新 Token。更新 Token 后,SDK 会自动加入房间。 |
| publish | 将本端音视频流发布到此房间。 |
| unpublish | 停止将本端音视频流发布到此房间。 |
| publishScreen: | 发布本地屏幕视频流到此房间。(外部采集) 调用此方法后,你还需要周期性调用 pushScreenCaptureFrame:time:rotation: 方法, 将需要发送的屏幕数据推送给 SDK。 |
| unpublishScreen | 停止发布本地屏幕共享流到房间。 |
| subscribeUserStream:streamType:mediaType:videoConfig: | 订阅房间内指定的远端音视频流。 无论是自动订阅还是手动订阅模式,你都可以调用此方法按需订阅房间中的音视频流。 该方法也可用于更新已经订阅的流的属性、媒体类型等配置。 |
| pauseAllSubscribedStream: | 暂停接收来自远端的媒体流 |
| resumeAllSubscribedStream: | 恢复接收来自远端的媒体流 |
| startLiveTranscoding:observer: | 开启转推直播,并设置视频视图布局、音频属性等参数 |
| stopLiveTranscoding | 停止转推直播。 |
| updateLiveTranscoding: | 更新转推直播参数。 启用转推直播功能后,你可以使用此方法更新合流转推功能配置参数。 |
| sendUserMessage:message: | 给房间内指定的用户发送文本消息(P2P)。 |
| sendUserBinaryMessage:message: | 给房间内指定的用户发送二进制消息(P2P)。 |
| sendRoomMessage: | 给房间内的所有其他用户发送文本消息。 |
| sendRoomBinaryMessage: | 给房间内的所有其他用户发送二进制消息。 |
| 回调 | 描述 |
|---|---|
| onLocalScreenFrame: | 本地屏幕流的视频帧数据回调 |
| onLocalVideoFrame: | 本地视频流的视频帧数据回调 |
| onRemoteScreenFrame:user:room: | 远端屏幕流的视频帧数据回调 |
| onRemoteVideoFrame:user:room: | 远端视频流的视频帧数据回调 |
| onStreamMixingEvent:eventData:error:mixType: | 转推直播状态回调 |
| rtcEngine:onLeaveRoomWithStats: | 离开房间成功回调。 用户调用 leaveRoom 方法后,SDK 会停止所有的发布订阅流,并释放所有通话相关的音视频资源。SDK 完成所有的资源释放后通过此回调通知用户。 |
| 回调 | 描述 |
|---|---|
| processVideoFrame: | 获取 RTC SDK 采集得到的视频帧,根据 registerLocalVideoProcessor:withConfig: 设置的视频前处理器,进行视频前处理,最终将处理后的视频帧给到 RTC SDK 用于编码传输。 |
| 回调 | 描述 |
|---|---|
| onLocalEncodedVideoFrame:Frame: | 调用 registerLocalEncodedVideoFrameObserver: 后,SDK 收到本地视频帧信息时,回调该事件 |
| onRemoteEncodedVideoFrame:withEncodedVideoFrame: | 调用 registerRemoteEncodedVideoFrameObserver: 后,SDK 监测到远端编码后视频数据时,触发该回调 |
| 回调 | 描述 |
|---|---|
| isSupportClientPushStream | 是否具有推流能力。 + false:不具备推流能力(默认值) + true:具备推流能力 |
| onMixingAudioFrame: | 端云一体合流音频 PCM 回调 |
| onMixingVideoFrame: | 端云一体合流视频 YUV 回调 |
| onMixingDataFrame: | 端云一体合流视频 SEI 数据 |
| rtcEngine:onLiveTranscodingResult:errorCode: | 转推直播错误回调。 调用 startLiveTranscoding:observer: 接口或直接在服务端启动转推直播功能后,你会通过此回调收到启动结果和推流过程中的错误。 |
| 回调 | 描述 |
|---|---|
| rtcEngine:onWarning: | 发生警告回调。 SDK 运行时出现了警告。SDK 通常会自动恢复,警告信息可以忽略。 |
| 回调 | 描述 |
|---|---|
| rtcEngine:onError: | 发生错误回调。 SDK 运行时出现了网络或媒体相关的错误,且无法自动恢复时触发此回调。 |
| 回调 | 描述 |
|---|---|
| rtcEngine:connectionChangedToState: | SDK 与信令服务器连接状态改变回调。连接状态改变时触发。 |
| rtcEngine:networkTypeChangedToType: | SDK 当前网络连接类型改变回调。 |
| rtcEngine:onMediaDeviceStateChanged:device_type:device_state:device_error: | 媒体设备状态回调。媒体设备包括音频采集设备、音频渲染设备、视频采集设备三种类型。 |
| 回调 | 描述 |
|---|---|
| rtcEngine:onJoinRoomResult:withUid:errorCode:joinType:elapsed: | 首次加入房间/重连加入房间的回调,表示用户调用 joinRoomByKey:roomId:userInfo:rtcRoomConfig: 的结果,根据错误码判断成功/失败以及区别是否为重连。 |
| rtcEngine:onUserJoined:elapsed: | 远端可见用户加入房间,或房内隐身用户切换为可见的回调。 1. 远端用户调用 setUserVisibility: 方法将自身设为可见后加入房间时,房间内其他用户将收到该事件。 2. 远端可见用户断网后重新连入房间时,房间内其他用户将收到该事件。 3. 房间内隐身远端用户调用 setUserVisibility: 方法切换至可见时,房间内其他用户将收到该事件。 4. 新进房用户会收到进房前已在房内的主播角色用户的进房回调通知。 |
| rtcEngine:onUserLeave:reason: | 远端可见用户离开房间,或从可见切换为隐身的回调。 发生以下情形时,房间内其他用户会收到此事件: 1.远端可见用户调用 leaveRoom: 方法离开房间时; 2.远端可见用户调用 setUserVisibility: 方法切换至隐身; 3.远端可见用户断网,且一直未恢复。 |
| rtcEngine:onAudioFrameSendStateChanged:state: | 音频首帧发送状态改变时,收到此回调。 |
| rtcEngine:onVideoFrameSendStateChanged:state: | 视频首帧发送状态改变时,收到此回调 |
| rtcEngine:onScreenVideoFrameSendStateChanged:state: | 屏幕共享流视频首帧发送状态改变时,收到此回调 |
| rtcEngine:onAudioFramePlayStateChanged:state: | 音频首帧播放状态改变时,收到此回调 |
| rtcEngine:onVideoFramePlayStateChanged:state: | 视频首帧播放状态改变时,收到此回调 |
| rtcEngine:onScreenVideoFramePlayStateChanged:state: | 屏幕共享流视频首帧播放状态改变时,收到此回调 |
| rtcEngine:onStreamAdd: | 以下情况会触发此回调: + 房间内的用户发布新的音视频流时,房间内的其他用户会收到此回调通知。 + 房间内的用户原音视频流被移出后,又重新发布音视频流时,房间内的其他用户会收到此回调通知。 + 用户刚加入房间时,会收到此回调,包含房间中所有已发布的流。 |
| rtcEngine:didStreamRemoved:stream:reason: | 房间内的远端用户停止发布音视频流时,本地用户会收到此回调通知。 |
| 回调 | 描述 |
|---|---|
| rtcEngine:onUserMuteAudio:muteState: | 房间内某用户调用 muteLocalAudio: 改变本地音频发送状态时,房间内其他用户会收到此回调。 |
| 回调 | 描述 |
|---|---|
| rtcEngine:onUserStartAudioCapture: | 房间内的用户调用 startAudioCapture 开启音频采集时,房间内其他用户会收到此回调。 |
| rtcEngine:onUserStopAudioCapture: | 房间内的用户调用 stopAudioCapture 关闭音频采集时,房间内其他用户会收到此回调。 |
| rtcEngine:onFirstRemoteAudioFrame: | 当收到远端流的第一帧音频的时候上报该事件 |
| rtcEngine:onFirstLocalAudioFrame: | 本地采集到第一帧音频帧时,收到该回调。 |
| rtcEngine:onAudioStreamBanned:isBanned: | 通过调用服务端 MuteUser/UnmuteUser 方法禁用/解禁指定房间内指定用户视音频流的发送时,触发此回调。 |
| rtcEngine:onAudioPlaybackDeviceChanged: | 音频播放设备变化时,收到该回调。 |
| rtcEngine:onLocalAudioStateChanged:error: | 本地音频流的状态发生改变时,收到此回调。 |
| rtcEngine:onRemoteAudioStateChanged:state:reason: | 订阅的远端音频流状态发生改变时,收到此回调。 |
| rtcRoom:onAudioStreamBanned:isBanned: | 通过调用服务端 MuteUser/UnmuteUser 方法禁用/解禁指定房间内指定用户视音频流的发送时,触发此回调。 |
| 回调 | 描述 |
|---|---|
| rtcEngine:onLocalAudioPropertiesReport: | 调用 enableAudioPropertiesReport: 后,可能会周期性收到此回调,获取本地音量信息。 |
| rtcEngine:onRemoteAudioPropertiesReport:totalRemoteVolume: | 调用 enableAudioPropertiesReport: 后,可能会周期性收到此回调,获取订阅的远端用户的音量信息。 |
| 回调 | 描述 |
|---|---|
| rtcEngine:onRoomStats: | 房间内通话统计信息回调。 用户进房开始通话后,每 2s 收到一次本回调。 |
| rtcEngine:reportSysStats: | 报告当前设备 cpu 与 memory 使用率,每 2s 触发一次。 |
| rtcEngine:onLocalStreamStats: | 本地流数据统计以及网络质量回调。 本地用户发布流成功后,SDK 会周期性(2s)的通过此回调事件通知用户发布的流在此次统计周期内的质量统计信息。 统计信息通过 ByteRTCLocalStreamStats 类型的回调参数传递给用户,其中包括发送音视频比特率、发送帧率、编码帧率,网络质量等。 |
| rtcEngine:onRemoteStreamStats: | 本地订阅的远端音/视频流数据统计以及网络质量回调。 本地用户订阅流成功后,SDK 会周期性(2s)的通过此回调事件通知用户订阅的流在此次统计周期内的质量统计信息,包括:发送音视频比特率、发送帧率、编码帧率,网络质量等。 |
| 回调 | 描述 |
|---|---|
| rtcEngine:onAudioMixingStateChanged:state:error: | 音频混音文件播放状态改变时回调 |
| 回调 | 描述 |
|---|---|
| rtcEngine:onPerformanceAlarmsWithMode:roomId:reason:sourceWantedData: | 本地未开启发布性能回退,检测到设备性能不足时,收到此回调。 本地开启发布性能回退,因设备性能/网络原因,造成发布性能回退/恢复时,收到此回调。 |
| rtcEngine:OnSimulcastSubscribeFallback: | 因发布/订阅性能回退或退出回退状态,订阅的音视频流,发生流的切换时,收到该回调。 |
| 回调 | 描述 |
|---|---|
| rtcEngine:onHttpProxyState: | HTTP 代理连接状态改变时,收到该回调。 |
| rtcEngine:onHttpsProxyState: | HTTPS 代理连接状态改变时,收到该回调。 |
| rtcEngine:onSocks5ProxyState:cmd:proxy_address:local_address:remote_address: | SOCKS5 代理状态改变时,收到该回调。 |
| 回调 | 描述 |
|---|---|
| rtcEngine:onRecordingStateUpdate:state:error_code:recording_info: | 获取本地录制状态回调。 该回调由 startFileRecording:withRecordingConfig: 或 stopFileRecording: 触发。 |
| rtcEngine:onRecordingProgressUpdate:process:recording_info: | 本地录制进度回调。 该回调由 startFileRecording:withRecordingConfig: 触发,录制状态正常时,系统每秒钟都会通过该回调提示录制进度。 |
| 回调 | 描述 |
|---|---|
| onRecordAudioFrame: | 返回麦克风录制的音频数据 |
| onPlaybackAudioFrame: | 返回远端所有用户混音后的音频数据 |
| onMixedAudioFrame: | 返回本地麦克风录制和远端所有用户混音后的音频数据 |
| 回调 | 描述 |
|---|---|
| ByteRTCEncryptRawData: | 自定义加密。 使用设定的自定义加密方式,对传输前的音视频帧数据进行加密。 |
| ByteRTCDecryptRawData: | 自定义解密。 对自定义加密后的音视频帧数据进行解密。关于自定义加密,参看 ByteRTCEncryptRawData:。 |
| 回调 | 描述 |
|---|---|
| onMonitorLog:withType: | 埋点日志回调 |
| isConsole | 是否进行控制台输出 |
| onVerboseLogWithLevel:filename:tag:line:functionName:format: | 输出更多的调试信息 |