# 腾讯8.8与阿里2.4.1接口对比
- 整理时间 :2021年7月8日
- 腾讯版本:v8.8
- 阿里版本:2.4.1
- 端:iOS&Mac
本文统计:腾讯官网文档暴露出来的主要接口与回调163个, 完全对齐119-32 = 84个 未对齐111-32 = 79个
# 方法
# 创建与销毁
# 房间相关接口函数
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
enterRoom (opens new window) | joinChannel (opens new window) | 进入房间。 | 是 |
exitRoom (opens new window) | leaveChannel (opens new window) | 离开房间。 | 是 |
switchRole (opens new window) | setClientRole (opens new window) | 切换角色,仅适用于直播场景(TRTCAppSceneLIVE 和 TRTCAppSceneVoiceChatRoom) | 是 |
connectOtherRoom (opens new window) | startChannelRelay (opens new window) | 请求跨房通话(主播 PK)。 | 是 |
disconnectOtherRoom (opens new window) | stopChannelRelay (opens new window) | 退出跨房通话。 | 是 |
setDefaultStreamRecvMode (opens new window) | setDefaultSubscribeAllRemoteVideoStreams (opens new window)/setDefaultSubscribeAllRemoteAudioStreams (opens new window) | 设置音视频数据接收模式,需要在进房前设置才能生效。 | 否 |
createSubCloud (opens new window) | createChannelWithDelegate (opens new window) | 创建子 TRTCCloud (opens new window) 实例。 | 是 |
destroySubCloud (opens new window) | destroyChannel (opens new window) | 销毁子 TRTCCloud (opens new window)实例。 | 是 |
switchRoom (opens new window) | switchChannel (opens new window) | 切换房间。 | 是 |
# CDN 相关接口函数
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
startPublishing (opens new window) | - | 开始向腾讯云的直播 CDN 推流。 | 否 |
stopPublishing (opens new window) | - | 停止向腾讯云的直播 CDN 推流。 | 否 |
startPublishCDNStream (opens new window) | startPublishLiveStreamWithURL (opens new window) | 开始向友商云的直播 CDN 转推。 | 是 |
stopPublishCDNStream (opens new window) | stopPublishLiveStreamWithURL (opens new window) | 停止向非腾讯云地址转推。 | 是 |
setMixTranscodingConfig (opens new window) | setLiveStreamingViewConfig (opens new window) | 设置云端的混流转码参数。 | 是 |
# 视频相关接口函数
# 音频相关接口函数
# 设备管理接口
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
getDeviceManager (opens new window) | - | 获取设备管理类 TXDeviceManager。 | 否(功能阿里也有,就是设计不一样) |
# 美颜特效和变脸特效
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
getBeautyManager (opens new window) | - | 获取美颜管理对象。 | 否(阿里美颜:setBeautyEffect (opens new window)) |
setWatermark (opens new window) | addVideoWatermark (opens new window) | 添加水印。 | 是 |
# 音乐特效和人声特效
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
getAudioEffectManager (opens new window) | - | 获取音效管理类 TXAudioEffectManager。 | 否(阿里没有单独的类,但是这个类的功能都有) |
# 屏幕分享相关接口函数
# 自定义采集和渲染
# 自定义消息发送
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
sendCustomCmdMsg (opens new window) | - | 发送自定义消息给房间内所有用户。 | 否 |
sendSEIMsg (opens new window) | sendMediaExtensionMsg (opens new window) | 将小数据量的自定义数据嵌入视频帧中。 | 是 |
# 设备和网络测试
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
startSpeedTest (opens new window) | startLastmileDetect (opens new window) | 开始进行网络测速(视频通话期间请勿测试,以免影响通话质量)。 | 是 |
stopSpeedTest (opens new window) | stopLastmileDetect (opens new window) | 停止服务器测速。 | 是 |
# Log 相关接口函数
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
getSDKVersion (opens new window) | getSDKVersion (opens new window) | 获取 SDK 版本信息。 | 是 |
setLogLevel (opens new window) | setLogLevel (opens new window) | 设置 Log 输出级别。 | 是 |
setConsoleEnabled (opens new window) | - | 启用或禁用控制台日志打印。 | 否 |
setLogCompressEnabled (opens new window) | - | 启用或禁用 Log 的本地压缩。 | 否 |
setLogDirPath (opens new window) | setLogDirPath (opens new window) | 修改日志保存路径。 | 是 |
setLogDelegate (opens new window) | - | 设置日志回调。 | 否 |
showDebugView (opens new window) | - | 显示仪表盘。 | 否 |
setDebugViewMargin (opens new window) | - | 设置仪表盘的边距。 | 否 |
callExperimentalAPI (opens new window) | - | 调用实验性 API 接口。 | 否 |
# 回调
# TRTCCloudDelegate @ TXLiteAVSDK
# 错误事件和警告事件
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
onError (opens new window) | onOccurError (opens new window) | 错误回调,表示 SDK 不可恢复的错误,一定要监听并分情况给用户适当的界面提示。 | 是 |
onWarning (opens new window) | onOccurWarning (opens new window) | 警告回调,用于告知您一些非严重性问题,例如出现了卡顿或者可恢复的解码失败。 | 是 |
# 房间事件回调
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
onEnterRoom (opens new window) | onJoinChannelResult (opens new window) | 已加入房间的回调。 | 是 |
onExitRoom (opens new window) | onLeaveChannelResult (opens new window) | 离开房间的事件回调。 | 是 |
onSwitchRole (opens new window) | onUpdateRoleNotifyWithOldRole (opens new window) | 切换角色的事件回调。 | 是 |
onConnectOtherRoom (opens new window) | onChannelRelayEvent (opens new window) | 请求跨房通话(主播 PK)的结果回调。 | 否 |
onDisconnectOtherRoom (opens new window) | onChannelRelayEvent (opens new window) | 结束跨房通话(主播 PK)的结果回调。 | 否 |
onSwitchRoom (opens new window) | - | 切换房间 (switchRoom) 的结果回调。 | 否(阿里:SDK会先触发离开原频道的onLeaveChannelResult (opens new window)回调,再返回加入新频道的onJoinChannelResult回调。) |
# 成员事件回调
# 统计和质量回调
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
onNetworkQuality (opens new window) | onLastmileDetectResultWithQuality (opens new window) | 网络质量,该回调每2秒触发一次,统计当前网络的上行和下行质量。 | 是 |
onStatistics (opens new window) | onRtcStats (opens new window) | 技术指标统计回调。 | 是 |
# 服务器事件回调
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
onConnectionLost (opens new window) | onConnectionLost (opens new window) | SDK 跟服务器的连接断开。 | 是 |
onTryToReconnect (opens new window) | onTryToReconnect (opens new window) | SDK 尝试重新连接到服务器。 | 是 |
onConnectionRecovery (opens new window) | onConnectionRecovery (opens new window) | SDK 跟服务器的连接恢复。 | 是 |
# 硬件设备事件回调
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
onCameraDidReady (opens new window) | - | 摄像头准备就绪。 | 否 |
onMicDidReady (opens new window) | - | 麦克风准备就绪。 | 否 |
onAudioRouteChanged (opens new window) | - | 音频路由发生变化(仅 iOS),音频路由即声音由哪里输出(扬声器或听筒)。 | 否 |
onUserVoiceVolume (opens new window) | onAudioVolumeCallback (opens new window) | 用于提示音量大小的回调,包括每个 userId 的音量和远端总音量。 | 是 |
onDevice (opens new window) | onAudioDeviceStateChanged (opens new window) | 本地设备通断回调。 | 否(阿里的只有音频设备有这个回调) |
onAudioDeviceCaptureVolumeChanged (opens new window) | onAudioDeviceRecordLevel (opens new window) | 当前音频采集设备音量变化回调。 | 是 |
onAudioDevicePlayoutVolumeChanged (opens new window) | onAudioDevicePlayoutLevel (opens new window) | 当前音频播放设备音量变化回调。 | 是 |
onSystemAudioLoopbackError (opens new window) | - | 系统声音采集结果回调。 | 否 |
# 自定义消息的接收回调
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
onRecvCustomCmdMsgUserId (opens new window) | - | 收到自定义消息回调。 | 否 |
onMissCustomCmdMsgUserId (opens new window) | - | 自定义消息丢失回调。 | 否 |
onRecvSEIMsg (opens new window) | onMediaExtensionMsgReceived (opens new window) | 收到 SEI 消息的回调。 | 是 |
# CDN 旁路转推回调
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
onStartPublishing (opens new window) | - | 开始向腾讯云的直播 CDN 推流的回调,对应于 TRTCCloud (opens new window) 中的 startPublishing() 接口。 | 否 |
onStopPublishing (opens new window) | - | 停止向腾讯云的直播 CDN 推流的回调,对应于 TRTCCloud (opens new window) 中的 stopPublishing() 接口。 | 否 |
onStartPublishCDNStream (opens new window) | onPublishLiveStreamStateChanged (opens new window)/onPublishTaskStateChanged (opens new window) | 启动旁路推流到 CDN 完成的回调。 | 否 |
onStopPublishCDNStream (opens new window) | onPublishTaskStateChanged (opens new window)/onPublishTaskStateChanged (opens new window) | 停止旁路推流到 CDN 完成的回调。 | 否 |
onSetMixTranscodingConfig (opens new window) | - | 设置云端的混流转码参数的回调,对应于 TRTCCloud (opens new window) 中的 setMixTranscodingConfig() 接口。 | 否 |
# 音效回调
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
onAudioEffectFinished (opens new window) | onAudioEffectFinished (opens new window) | 播放音效结束回调。 | 是 |
# 屏幕分享回调
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
onScreenCaptureStarted (opens new window) | - | 当屏幕分享开始时,SDK 会通过此回调通知。 | 否 |
onScreenCapturePaused (opens new window) | - | 当屏幕分享暂停时,SDK 会通过此回调通知。 | 否 |
onScreenCaptureResumed (opens new window) | - | 当屏幕分享恢复时,SDK 会通过此回调通知。 | 否 |
onScreenCaptureStoped (opens new window) | - | 当屏幕分享停止时,SDK 会通过此回调通知。 | 否 |
# 媒体录制回调
# 第三方美颜回调
API | 描述 | 对齐 | |
---|---|---|---|
onProcessVideoFrame (opens new window) | onTextureUpdate (opens new window) | 第三方美颜的视频数据回调,需要使用 TRTCCloud (opens new window) 中的 setLocalVideoProcessDelegete 接口进行设置。 | 否 |
onGLContextDestory (opens new window) | - | SDK 内部的 OpenGL 环境的销毁通知。 | 否(类似的有:onTextureDestory (opens new window)) |
# 视频数据帧的自定义处理回调
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
onRenderVideoFrame (opens new window) | - | 自定义视频渲染回调。 | 否 |
# 声音数据帧的自定义处理回调
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
onCapturedRawAudioFrame (opens new window) | onAudioSampleCallback (opens new window) | 本地麦克风采集到的原始音频数据回调。 | 是 |
onLocalProcessedAudioFrame (opens new window) | onAudioSampleCallback (opens new window) | 本地采集并经过音频模块前处理后的音频数据回调。 | 是 |
onRemoteUserAudioFrame (opens new window) | - | 混音前的每一路远程用户的音频数据,即混音前的各路原始数据。例如,对某一路音频进行文字转换时,您必须使用该路音频的原始数据。 | 否 |
onMixedPlayAudioFrame (opens new window) | onAudioSampleCallback (opens new window) | 各路音频数据混合后的音频数据。 | 是 |
onMixedAllAudioFrame (opens new window) | - | SDK所有音频数据混合后的数据回调(包括采集音频数据和所有播放音频数据)。 | 否 |
# 日志相关回调
建议在比较早初始化的类中设置回调委托对象,例如 AppDelegate。
API | 阿里 | 描述 | 对齐 |
---|---|---|---|
onLog (opens new window) | - | 有日志打印时的回调。 | 否 |