API 概览

最后更新时间:2021-09-09 11:42:10

    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 暂停屏幕分享
    resumeScreenCapture 恢复屏幕分享
    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 设置音频数据自定义回调
    setMixedPlayAudioFrameCallbackFormat 设置最终要由系统播放出的音频帧回调格式
    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 房间切换参数
    TRTCAudioFrameCallbackFormat 音频自定义回调的格式参数
    TRTCScreenCaptureSourceInfo 屏幕分享的目标信息(仅适用于桌面系统)