API 概览

最近更新时间:2021-08-09 10:13:55

C++ 全平台接口简介

自 8.0 版本起,我们在原有的 Windows(C++)接口的基础上,提供了全新的 C++ 接口,适用于 Windows、iOS、Mac、Android 平台。
如果您暂不清楚如何集成 C++ 接口,请参阅各平台的集成指引。

说明:

  • 目前 C++ 接口仅提供在精简版(TRTC)中。
  • Windows 平台中,TRTC头文件已自动使用“trtc”命名空间,无需重复指定。

ITRTCCloud @ TXLiteAVSDK

创建实例和事件回调

API 描述
getTRTCShareInstance 创建 TRTCCloud 实例(单例模式)
destroyTRTCShareInstance 销毁 TRTCCloud 实例(单例模式)
addCallback 设置 TRTC 事件回调
removeCallback 移除 TRTC 事件回调

房间相关接口函数

API 描述
enterRoom 进入房间
exitRoom 离开房间
switchRole 切换角色
switchRoom 切换房间
connectOtherRoom 请求跨房通话
disconnectOtherRoom 退出跨房通话
setDefaultStreamRecvMode 设置订阅模式(需要在进入房前设置才能生效)
createSubCloud 创建子房间示例(用于多房间并发观看)
destroySubCloud 销毁子房间示例

CDN 相关接口函数

API 描述
startPublishing 开始向腾讯云直播 CDN 上发布音视频流
stopPublishing 停止向腾讯云直播 CDN 上发布音视频流
startPublishCDNStream 开始向非腾讯云 CDN 上发布音视频流
stopPublishCDNStream 停止向非腾讯云 CDN 上发布音视频流
setMixTranscodingConfig 设置云端混流的排版布局和转码参数

视频相关接口函数

API 描述
startLocalPreview 开启本地摄像头的预览画面(移动端)
startLocalPreview 开启本地摄像头的预览画面(桌面端)
updateLocalView 更新本地摄像头的预览画面
stopLocalPreview 停止摄像头预览
muteLocalVideo 暂停/恢复发布本地的视频流
startRemoteView 订阅远端用户的视频流,并绑定视频渲染控件
updateRemoteView 更新远端用户的视频渲染控件
stopRemoteView 停止订阅远端用户的视频流,并释放渲染控件
stopAllRemoteView 停止订阅所有远端用户的视频流,并释放全部渲染资源
muteRemoteVideoStream 暂停/恢复订阅远端用户的视频流
muteAllRemoteVideoStreams 暂停/恢复订阅所有远端用户的视频流
setVideoEncoderParam 设置视频编码器的编码参数
setNetworkQosParam 设置网络质量控制的相关参数
setLocalRenderParams 设置本地画面的渲染参数
setRemoteRenderParams 设置远端画面的渲染模式
setVideoEncoderRotation 设置视频编码器输出的画面方向
setVideoEncoderMirror 设置编码器输出的画面镜像模式
enableSmallVideoStream 开启大小画面双路编码模式
setRemoteVideoStreamType 切换指定远端用户的大小画面
snapshotVideo 视频画面截图

音频相关接口函数

API 描述
startLocalAudio 开启本地音频的采集和发布
stopLocalAudio 停止本地音频的采集和发布
muteLocalAudio 暂停/恢复发布本地的音频流
muteRemoteAudio 暂停/恢复播放远端的音频流
muteAllRemoteAudio 暂停/恢复播放所有远端用户的音频流
setRemoteAudioVolume 设定某一个远端用户的声音播放音量
setAudioCaptureVolume 设定本地音频的采集音量
getAudioCaptureVolume 获取本地音频的采集音量
setAudioPlayoutVolume 设定远端音频的播放音量
getAudioPlayoutVolume 获取远端音频的播放音量
enableAudioVolumeEvaluation 启用音量大小提示
startAudioRecording 开始录音
stopAudioRecording 停止录音
startLocalRecording 开启本地媒体录制
stopLocalRecording 停止本地媒体录制

设备管理相关接口

API 描述
getDeviceManager 获取设备管理类(TXDeviceManager)

美颜特效和图像水印

API 描述
setBeautyStyle 设置美颜、美白、红润等特效
setWaterMark 添加水印

背景音乐和声音特效

API 描述
getAudioEffectManager 获取音效管理类(TXAudioEffectManager)
startSystemAudioLoopback 开启系统声音采集(仅适用于桌面系统)
stopSystemAudioLoopback 停止系统声音采集(仅适用于桌面系统)
setSystemAudioLoopbackVolume 设置系统声音的采集音量

屏幕分享相关接口

API 描述
startScreenCapture 开始桌面端屏幕分享(该接口仅支持桌面系统)
stopScreenCapture 停止屏幕分享
pauseScreenCapture 暂停屏幕分享
pauseScreenCapture 恢复屏幕分享
getScreenCaptureSources 枚举可分享的屏幕和窗口(该接口仅支持桌面系统)
selectScreenCaptureTarget 选取要分享的屏幕或窗口(该接口仅支持桌面系统)
setSubStreamEncoderParam 设置屏幕分享(即辅路)的视频编码参数(该接口仅支持桌面系统)
setSubStreamMixVolume 设置屏幕分享时的混音音量大小(该接口仅支持桌面系统)
addExcludedShareWindow 将指定窗口加入屏幕分享的排除列表中(该接口仅支持桌面系统)
removeExcludedShareWindow 将指定窗口从屏幕分享的排除列表中移除(该接口仅支持桌面系统)
removeAllExcludedShareWindow 将所有窗口从屏幕分享的排除列表中移除(该接口仅支持桌面系统)
addIncludedShareWindow 将指定窗口加入屏幕分享的包含列表中(该接口仅支持桌面系统)
removeIncludedShareWindow 将指定窗口从屏幕分享的包含列表中移除(该接口仅支持桌面系统)
removeAllIncludedShareWindow 将全部窗口从屏幕分享的包含列表中移除(该接口仅支持桌面系统)

自定义采集和自定义渲染

API 描述
enableCustomVideoCapture 启用/关闭视频自定义采集模式
sendCustomVideoData 向 SDK 投送自己采集的视频帧
enableCustomAudioCapture 启用音频自定义采集模式
sendCustomAudioData 向 SDK 投送自己采集的音频数据
enableMixExternalAudioFrame 启用/关闭自定义音轨
mixExternalAudioFrame 向 SDK 混入自定义音轨
setMixExternalAudioVolume 设置推流时混入外部音频的推流音量和播放音量
generateCustomPTS 生成自定义采集时的时间戳
setLocalVideoProcessCallback 设置第三方美颜的视频数据回调
setLocalVideoRenderCallback 设置本地视频自定义渲染回调
setRemoteVideoRenderCallback 设置远端视频自定义渲染回调
setAudioFrameCallback 设置音频数据自定义回调
enableCustomAudioRendering 开启音频自定义播放
getCustomAudioRenderingFrame 获取可播放的音频数据

自定义消息发送接口

API 描述
sendCustomCmdMsg 使用 UDP 通道发送自定义消息给房间内所有用户
sendSEIMsg 使用 SEI 通道发送自定义消息给房间内所有用户

网络测试接口

API 描述
startSpeedTest 开始进行网络测速(进入房间前使用)
stopSpeedTest 停止网络测速

调试相关接口

API 描述
getSDKVersion 获取 SDK 版本信息
setLogLevel 设置 Log 输出级别
setConsoleEnabled 启用/禁用控制台日志打印
setLogCompressEnabled 启用/禁用日志的本地压缩
setLogDirPath 设置本地日志的保存路径
setLogCallback 设置日志回调
showDebugView 显示仪表盘
callExperimentalAPI 调用实验性接口

废弃接口

API 描述
enableCustomVideoCapture 启用视频自定义采集模式
sendCustomVideoData 投送自己采集的视频数据
muteLocalVideo 暂停/恢复发布本地的视频流
muteRemoteVideoStream 暂停 / 恢复订阅远端用户的视频流

错误和警告事件

API 描述
onError 错误事件回调
onWarning 警告事件回调

房间相关事件回调

API 描述
onEnterRoom 进入房间成功与否的事件回调
onExitRoom 离开房间的事件回调
onSwitchRole 切换角色的事件回调
onSwitchRoom 切换房间的结果回调
onConnectOtherRoom 请求跨房通话的结果回调
onDisconnectOtherRoom 结束跨房通话的结果回调

用户相关事件回调

API 描述
onRemoteUserEnterRoom 有用户加入当前房间
onRemoteUserLeaveRoom 有用户离开当前房间
onUserVideoAvailable 某远端用户发布/取消了主路视频画面
onUserSubStreamAvailable 某远端用户发布/取消了辅路视频画面
onUserAudioAvailable 某远端用户发布/取消了自己的音频
onFirstVideoFrame SDK 开始渲染自己本地或远端用户的首帧画面
onFirstAudioFrame SDK 开始播放远端用户的首帧音频
onSendFirstLocalVideoFrame 自己本地的首个视频帧已被发布出去
onSendFirstLocalAudioFrame 自己本地的首个音频帧已被发布出去
onRemoteVideoStatusUpdated 远端视频状态变化的事件回调

网络和技术指标统计回调

API 描述
onNetworkQuality 网络质量的实时统计回调
onStatistics 音视频技术指标的实时统计回调

与云端连接情况的事件回调

API 描述
onConnectionLost SDK 与云端的连接已经断开
onTryToReconnect SDK 正在尝试重新连接到云端
onConnectionRecovery SDK 与云端的连接已经恢复
onSpeedTest 服务器测速的结果回调

硬件设备相关事件回调

API 描述
onCameraDidReady 摄像头准备就绪
onMicDidReady 麦克风准备就绪
onUserVoiceVolume 音量大小的反馈回调
onDeviceChange 本地设备的通断状态发生变化(仅适用于桌面系统)
onAudioDeviceCaptureVolumeChanged 当前麦克风的系统采集音量发生变化
onAudioDevicePlayoutVolumeChanged 当前系统的播放音量发生变化
onSystemAudioLoopbackError 系统声音采集是否被成功开启的事件回调(仅适用于 Mac 系统)
onTestMicVolume 测试麦克风时的音量回调
onTestSpeakerVolume 测试扬声器时的音量回调

自定义消息的接收事件回调

API 描述
onRecvCustomCmdMsg 收到自定义消息的事件回调
onMissCustomCmdMsg 自定义消息丢失的事件回调
onRecvSEIMsg 收到 SEI 消息的回调

CDN 相关事件回调

API 描述
onStartPublishing 开始向腾讯云直播 CDN 上发布音视频流的事件回调
onStopPublishing 停止向腾讯云直播 CDN 上发布音视频流的事件回调
onStartPublishCDNStream 开始向非腾讯云 CDN 上发布音视频流的事件回调
onStopPublishCDNStream 停止向非腾讯云 CDN 上发布音视频流的事件回调
onSetMixTranscodingConfig 设置云端混流的排版布局和转码参数的事件回调

屏幕分享相关事件回调

API 描述
onScreenCaptureStarted 屏幕分享开启的事件回调
onScreenCapturePaused 屏幕分享暂停的事件回调
onScreenCaptureResumed 屏幕分享恢复的事件回调
onScreenCaptureStoped 屏幕分享停止的事件回调
onScreenCaptureCovered 屏幕分享的目标窗口被遮挡的事件回调(仅适用于 Windows 操作系统)

本地录制和本地截图的事件回调

API 描述
onLocalRecordBegin 本地录制任务已经开始的事件回调
onLocalRecording 本地录制任务正在进行中的进展事件回调
onLocalRecordComplete 本地录制任务已经结束的事件回调
onSnapshotComplete 本地截图完成的事件回调

废弃的事件回调

API 描述
onUserEnter 有主播加入当前房间(已废弃)
onUserExit 有主播离开当前房间(已废弃)
onAudioEffectFinished 音效播放已结束(已废弃)
onPlayBGMBegin 开始播放背景音乐(已废弃)
onPlayBGMProgress 背景音乐的播放进度回调(已废弃)
onPlayBGMComplete 背景音乐播放已经结束(已废弃)

视频数据自定义回调

API 描述
onRenderVideoFrame 自定义视频渲染回调
onProcessVideoFrame 用于对接第三方美颜组件的视频处理回调

音频数据自定义回调

API 描述
onCapturedRawAudioFrame 本地麦克风采集到的原始音频数据回调
onLocalProcessedAudioFrame 本地采集并经过音频模块前处理后的音频数据回调
onPlayAudioFrame 混音前的每一路远程用户的音频数据
onMixedPlayAudioFrame 将各路待播放音频混合之后并在最终提交系统播放之前的数据回调

更多事件回调接口

API 描述
onLog 本地 LOG 的打印回调

视频相关枚举值定义

API 描述
TRTCVideoResolution 视频分辨率
TRTCVideoResolutionMode 视频宽高比模式
TRTCVideoStreamType 视频流类型
TRTCVideoFillMode 视频画面填充模式
TRTCVideoRotation 视频画面旋转方向
TRTCBeautyStyle 美颜(磨皮)算法
TRTCVideoPixelFormat 视频像素格式
TRTCVideoBufferType 视频数据传递方式
TRTCVideoMirrorType 视频的镜像类型
TRTCSnapshotSourceType 本地视频截图的数据源

网络相关枚举值定义

API 描述
TRTCAppScene 应用场景
TRTCRoleType 角色
TRTCQosControlMode 流控模式(已废弃)
TRTCVideoQosPreference 画质偏好
TRTCQualityInfo 网络质量
TRTCAVStatusType 视频状态类型
TRTCAVStatusChangeReason 视频状态变化原因类型

音频相关枚举值定义

API 描述
TRTCAudioQuality 声音音质

更多枚举值定义

API 描述
TRTCLogLevel Log 级别
TRTCScreenCaptureSourceType 屏幕分享的目标类型(仅适用于桌面端)
TRTCTranscodingConfigMode 云端混流的排版模式
TRTCLocalRecordType 媒体录制类型
TRTCMixInputType 混流输入类型
TRTCDeviceType 设备类型(仅适用于桌面平台)
TRTCAudioRecordingContent 音频录制内容类型

TRTC 核心类型定义

API 描述
TRTCParams 进房参数
TRTCVideoEncParam 视频编码参数
TRTCNetworkQosParam 网络流控(Qos)参数集
TRTCRenderParams 视频画面的渲染参数
TRTCQualityInfo 网络质量
TRTCVolumeInfo 音量大小
TRTCSpeedTestResult 网络测速结果
TRTCVideoFrame 视频帧信息
TRTCAudioFrame 音频帧数据
TRTCMixUser 云端混流中各路画面的描述信息
TRTCTranscodingConfig 云端混流的排版布局和转码参数
TRTCPublishCDNParam 向非腾讯云 CDN 上发布音视频流时需设置的转推参数
TRTCAudioRecordingParams 本地音频文件的录制参数
TRTCLocalRecordingParams 本地媒体文件的录制参数
TRTCAudioEffectParam 音效参数(已废弃)
TRTCSwitchRoomConfig 房间切换参数
TRTCScreenCaptureSourceInfo 屏幕分享的目标信息(仅适用于桌面系统)
目录