# 腾讯云实时音视频(TRTC SDK )文档

## 概述
`TXLiteAVCode.h` 是腾讯云实时音视频(TRTC SDK ) C++ 的状态码文档，用于通知客户 TRTC 在使用过程中出现的警告和错误。

## 枚举类型
| 枚举类型 | 描述 |
| --- | --- |
| TXLiteAVError | 错误码。 |
| TXLiteAVWarning | 警告码。 |

## TXLiteAVError

#### 错误码。
| 枚举 | 取值 | 描述 |
| --- | --- | --- |
| ERR_NULL | 0 | 无错误 |
| ERR_FAILED | -1 | 暂未归类的通用错误 |
| ERR_INVALID_PARAMETER | -2 | 调用 API 时，传入的参数不合法 |
| ERR_REFUSED | -3 | API 调用被拒绝 |
| ERR_NOT_SUPPORTED | -4 | 当前 API 不支持调用 |
| ERR_INVALID_LICENSE | -5 | license 不合法，调用失败 |
| ERR_REQUEST_SERVER_TIMEOUT | -6 | 请求服务器超时 |
| ERR_SERVER_PROCESS_FAILED | -7 | 服务器无法处理您的请求 |
| ERR_DISCONNECTED | -8 | 断开连接 |
| ERR_CAMERA_START_FAIL | -1301 | 打开摄像头失败，在移动端中是授权后调用系统接口开启摄像头异常，在 Windows 或 Mac 设备，摄像头的配置程序（驱动程序）异常，禁用后重新启用设备，或者重启机器，或者更新配置程序 |
| ERR_CAMERA_NOT_AUTHORIZED | -1314 | 摄像头设备未授权，通常在移动设备出现，可能是权限被用户拒绝了 |
| ERR_CAMERA_SET_PARAM_FAIL | -1315 | 摄像头参数设置出错（参数不支持或其它） |
| ERR_CAMERA_OCCUPY | -1316 | 摄像头正在被占用中，可尝试打开其他摄像头 |
| ERR_SCREEN_CAPTURE_START_FAIL | -1308 | 开始录屏失败，如果在移动设备出现，可能是权限被用户拒绝了。在 Windows 或 Mac 系统的设备出现，请检查录屏接口的参数是否符合要求 |
| ERR_SCREEN_CAPTURE_UNSURPORT | -1309 | 录屏失败，在 Android 平台，需要5.0以上的系统，在 iOS 平台，需要11.0以上的系统 |
| ERR_SCREEN_CAPTURE_STOPPED | -7001 | 录屏被系统中止 |
| ERR_SCREEN_SHARE_NOT_AUTHORIZED | -102015 | 没有权限上行辅路 |
| ERR_SCREEN_SHRAE_OCCUPIED_BY_OTHER | -102016 | 其他用户正在上行辅路 |
| ERR_VIDEO_ENCODE_FAIL | -1303 | 视频帧编码失败，编码器异常导致编码失败 |
| ERR_UNSUPPORTED_RESOLUTION | -1305 | 不支持的视频分辨率 |
| ERR_PIXEL_FORMAT_UNSUPPORTED | -1327 | 自定视频采集：设置的 pixel format 不支持 |
| ERR_BUFFER_TYPE_UNSUPPORTED | -1328 | 自定视频采集：设置的 buffer type 不支持 |
| ERR_NO_AVAILABLE_HEVC_DECODERS | -2304 | 找不到可用的 HEVC 解码器 |
| ERR_MIC_START_FAIL | -1302 | 打开麦克风失败，例如在 Windows 或 Mac 设备，麦克风的配置程序（驱动程序）异常，禁用后重新启用设备，或者重启机器，或者更新配置程序 |
| ERR_MIC_NOT_AUTHORIZED | -1317 | 麦克风设备未授权，通常在移动设备出现，可能是权限被用户拒绝了 |
| ERR_MIC_OCCUPY | -1319 | 麦克风正在被占用中，例如移动设备正在通话时，打开麦克风会失败 |
| ERR_MIC_STOP_FAIL | -1320 | 停止麦克风失败 |
| ERR_SPEAKER_START_FAIL | -1321 | 打开扬声器失败，例如在 Windows 或 Mac 设备，扬声器的配置程序（驱动程序）异常，禁用后重新启用设备，或者重启机器，或者更新配置程序 |
| ERR_SPEAKER_SET_PARAM_FAIL | -1322 | 扬声器设置参数失败 |
| ERR_SPEAKER_STOP_FAIL | -1323 | 停止扬声器失败 |
| ERR_AUDIO_PLUGIN_START_FAIL | -1330 | 开启系统声音录制失败，例如音频驱动插件不可用 |
| ERR_AUDIO_PLUGIN_INSTALL_NOT_AUTHORIZED | -1331 | 安装音频驱动插件未授权 |
| ERR_AUDIO_PLUGIN_INSTALL_FAILED | -1332 | 安装音频驱动插件失败 |
| ERR_AUDIO_PLUGIN_INSTALLED_BUT_NEED_RESTART | -1333 | 安装虚拟声卡插件成功，但首次安装后功能暂时不可用，此为 Mac 系统限制，请在收到此错误码后提示用户重启当前 APP |
| ERR_AUDIO_ENCODE_FAIL | -1304 | 音频帧编码失败，例如传入自定义音频数据，SDK 无法处理 |
| ERR_UNSUPPORTED_SAMPLERATE | -1306 | 不支持的音频采样率 |
| ERR_SYSTEM_LOOPBACK_START_FAILED | -1307 | 系统混音启动出错，常见的出错原因及解决：1.当前系统版本无法支持，指定、排除指定进程混音功能需满足 Windows 系统为10.0.19042（20H2）或更高版本，指定路径混音功能 x64 版本需满足 Windows 系统为10.0.19042（20H2）或更高版本，请检查当前系统版本。2.传入参数非法（包括参数为空、传入路径不存在、传入进程号不存在、传入设备名不存在），请检查传入参数是否合法。3.无可用扬声器设备，请检查是否可用 |
| ERR_SYSTEM_LOOPBACK_THIRD_PARTY_APP_EXIT | -1324 | 第三方应用混音采集出错，该错误可能出现于第三方应用混音启动成功后，在采集声音的过程中指定进程或应用意外退出，请检查指定进程或应用的状态，可通过重新输入进程号进行重试 |
| ERR_TRTC_ENTER_ROOM_FAILED | -3301 | 进入房间失败，请查看 onError 中的 -3301 对应的 msg 提示确认失败原因 |
| ERR_TRTC_REQUEST_IP_TIMEOUT | -3307 | 请求 IP 和 sig 超时，请检查网络是否正常，或网络防火墙是否放行 UDP。<br>可尝试访问下列 IP：162.14.22.165:8000 162.14.6.105:8000 和域名：default-query.trtc.tencent-cloud.com:8000 |
| ERR_TRTC_CONNECT_SERVER_TIMEOUT | -3308 | 请求进房超时，请检查是否断网或者是否开启vpn，您也可以切换4G进行测试确认 |
| ERR_TRTC_ROOM_PARAM_NULL | -3316 | 进房参数为空，请检查： enterRoom:appScene: 接口调用是否传入有效的 param |
| ERR_TRTC_INVALID_SDK_APPID | -3317 | 进房参数 sdkAppId 错误，请检查 TRTCParams.sdkAppId 是否为空 |
| ERR_TRTC_INVALID_ROOM_ID | -3318 | 进房参数 roomId 错误，请检查 TRTCParams.roomId 或 TRTCParams.strRoomId 是否为空，注意 roomId 和 strRoomId 不可混用 |
| ERR_TRTC_INVALID_USER_ID | -3319 | 进房参数 userId 不正确，请检查 TRTCParams.userId 是否为空 |
| ERR_TRTC_INVALID_USER_SIG | -3320 | 进房参数 userSig 不正确，请检查 TRTCParams.userSig 是否为空 |
| ERR_TRTC_ENTER_ROOM_REFUSED | -3340 | 进房请求被拒绝，请检查是否连续调用 enterRoom 进入相同 Id 的房间 |
| ERR_TRTC_INVALID_PRIVATE_MAPKEY | -100006 | 您开启了高级权限控制，但参数 TRTCParams.privateMapKey 校验失败，<br>您可参考 [高级权限控制](https://cloud.tencent.com/document/product/647/32240) 进行检查 |
| ERR_TRTC_SERVICE_SUSPENDED | -100013 | 服务不可用。请检查：套餐包剩余分钟数是否大于0，腾讯云账号是否欠费。<br>您可参考 [套餐包管理](https://cloud.tencent.com/document/product/647/50492) 进行查看与配置 |
| ERR_TRTC_USER_SIG_CHECK_FAILED | -100018 | UserSig 校验失败，请检查参数 TRTCParams.userSig 是否填写正确，或是否已经过期。<br>您可参考 [UserSig 生成与校验](https://cloud.tencent.com/document/product/647/50686) 进行校验 |
| ERR_TRTC_PUSH_THIRD_PARTY_CLOUD_TIMEOUT | -3321 | 旁路转推请求超时 |
| ERR_TRTC_MIX_TRANSCODING_TIMEOUT | -3322 | 云端混流请求超时 |
| ERR_TRTC_PUSH_THIRD_PARTY_CLOUD_FAILED | -3323 | 旁路转推回包异常 |
| ERR_TRTC_MIX_TRANSCODING_FAILED | -3324 | 云端混流回包异常 |
| ERR_TRTC_START_PUBLISHING_TIMEOUT | -3333 | 开始向腾讯云的直播 CDN 推流信令超时 |
| ERR_TRTC_START_PUBLISHING_FAILED | -3334 | 开始向腾讯云的直播 CDN 推流信令异常 |
| ERR_TRTC_STOP_PUBLISHING_TIMEOUT | -3335 | 停止向腾讯云的直播 CDN 推流信令超时 |
| ERR_TRTC_STOP_PUBLISHING_FAILED | -3336 | 停止向腾讯云的直播 CDN 推流信令异常 |
| ERR_TRTC_CONNECT_OTHER_ROOM_TIMEOUT | -3326 | 请求连麦超时 |
| ERR_TRTC_DISCONNECT_OTHER_ROOM_TIMEOUT | -3327 | 请求退出连麦超时 |
| ERR_TRTC_CONNECT_OTHER_ROOM_INVALID_PARAMETER | -3328 | 无效参数 |
| ERR_TRTC_CONNECT_OTHER_ROOM_AS_AUDIENCE | -3330 | 当前是观众角色，不能请求或断开跨房连麦，需要先 ` switchRole ` 到主播 |
| ERR_BGM_OPEN_FAILED | -4001 | 打开文件失败，如音频数据无效，FFMPEG 协议未找到等 |
| ERR_BGM_DECODE_FAILED | -4002 | 音频文件解码失败 |
| ERR_BGM_OVER_LIMIT | -4003 | 数量超过限定值，如同时预加载两首背景音乐 |
| ERR_BGM_INVALID_OPERATION | -4004 | 无效操作，如开始播放后再调用预加载操作 |
| ERR_BGM_INVALID_PATH | -4005 | 非法路径导致打开文件失败，请检查您传入的路径参数是否指向一个合法的音乐文件 |
| ERR_BGM_INVALID_URL | -4006 | 非法URL导致打开文件失败，请用浏览器检查您传入的 URL 地址是否可以下载到期望的音乐文件，如果操作系统为 iOS 或 MacOS 请确保使用 https 链接 |
| ERR_BGM_NO_AUDIO_STREAM | -4007 | 无音频流导致打开文件失败，请确认您传入的文件是否是合法的音频文件，以及文件是否被损坏 |
| ERR_BGM_FORMAT_NOT_SUPPORTED | -4008 | 格式不支持导致打开文件失败，请确认您传入的文件格式是否是支持的文件格式，移动端支持【mp3，aac，m4a，wav，ogg，mp4，mkv】，桌面端支持 【mp3，aac，m4a，wav，mp4，mkv】 |
| ERR_CONCURRENT_BGM_OVER_LIMIT | -4009 | 同时播放 bgm 数量超过限定值，如当前同时播放 bgm 数量超过 10 后提示该错误，请检查并发播放 bgm 数量 |

## TXLiteAVWarning

#### 警告码。
| 枚举 | 取值 | 描述 |
| --- | --- | --- |
| WARNING_HW_ENCODER_START_FAIL | 1103 | 硬编码启动出现问题，自动切换到软编码 |
| WARNING_CURRENT_ENCODE_TYPE_CHANGED | 1104 | 表示编码器发生改变，可以通过 onWarning 函数的扩展信息中的相关字段来获取当前的编码格式和类型。<br>type 字段值为 0 代表 H.264 编码，1 代表 H.265 编码<br>hardware 字段值为 0 代表软件编码，1 代表硬件编码<br>stream 字段值为 0 代表大流，1 代表小流，2 代表辅流 |
| WARNING_VIDEO_ENCODER_SW_TO_HW | 1107 | 当前 CPU 使用率太高，无法满足软件编码需求，自动切换到硬件编码 |
| WARNING_INSUFFICIENT_CAPTURE_FPS | 1108 | 摄像头采集帧率不足，部分自带美颜算法的 Android 手机上会出现 |
| WARNING_SW_ENCODER_START_FAIL | 1109 | 软编码启动失败 |
| WARNING_REDUCE_CAPTURE_RESOLUTION | 1110 | 摄像头采集分辨率被降低，以满足当前帧率和性能最优解。 |
| WARNING_CAMERA_DEVICE_EMPTY | 1111 | 没有检测到可用的摄像头设备 |
| WARNING_CAMERA_NOT_AUTHORIZED | 1112 | 用户未授权当前应用使用摄像头 |
| WARNING_OUT_OF_MEMORY | 1113 | 内存不足，部分功能可能不正常。 |
| WARNING_CAMERA_IS_OCCUPIED | 1114 | 摄像头被占用. |
| WARNING_CAMERA_DEVICE_ERROR | 1115 | 摄像头设备异常. |
| WARNING_CAMERA_DISCONNECTED | 1116 | 摄像头无法连接. |
| WARNING_CAMERA_START_FAILED | 1117 | 摄像头启动失败. |
| WARNING_CAMERA_SERVER_DIED | 1118 | 系统异常. |
| WARNING_SCREEN_CAPTURE_NOT_AUTHORIZED | 1206 | 用户未授权当前应用使用屏幕录制 |
| WARNING_CURRENT_DECODE_TYPE_CHANGED | 2008 | 表示解码器发生改变，可以通过 onWarning 函数的扩展信息中的 type 字段来获取当前的解码格式。<br>其中 1 代表 265 解码，0 代表 264 解码。注意 Windows 端不支持此错误码的扩展信息。 |
| WARNING_VIDEO_FRAME_DECODE_FAIL | 2101 | 当前视频帧解码失败 |
| WARNING_HW_DECODER_START_FAIL | 2106 | 硬解启动失败，采用软解码 |
| WARNING_VIDEO_DECODER_HW_TO_SW | 2108 | 当前流硬解第一个 I 帧失败，SDK 自动切软解 |
| WARNING_SW_DECODER_START_FAIL | 2109 | 软解码器启动失败 |
| WARNING_VIDEO_RENDER_FAIL | 2110 | 视频渲染失败 |
| WARNING_VIRTUAL_BACKGROUND_DEVICE_UNSURPORTED | 8001 | 虚拟背景设备不支持 |
| WARNING_VIRTUAL_BACKGROUND_NOT_AUTHORIZED | 8002 | 虚拟背景未授权 |
| WARNING_VIRTUAL_BACKGROUND_INVALID_PARAMETER | 8003 | 虚拟背景参数异常 |
| WARNING_VIRTUAL_BACKGROUND_PERFORMANCE_INSUFFICIENT | 8004 | 虚拟背景性能不足 |
| WARNING_MICROPHONE_DEVICE_EMPTY | 1201 | 没有检测到可用的麦克风设备 |
| WARNING_SPEAKER_DEVICE_EMPTY | 1202 | 没有检测到可用的扬声器设备 |
| WARNING_MICROPHONE_NOT_AUTHORIZED | 1203 | 用户未授权当前应用使用麦克风 |
| WARNING_MICROPHONE_DEVICE_ABNORMAL | 1204 | 音频采集设备不可用（例如被占用或者PC判定无效设备） |
| WARNING_SPEAKER_DEVICE_ABNORMAL | 1205 | 音频播放设备不可用（例如被占用或者PC判定无效设备） |
| WARNING_BLUETOOTH_DEVICE_CONNECT_FAIL | 1207 | 蓝牙设备连接失败（例如其他应用通过设置通话音量占用音频通道） |
| WARNING_MICROPHONE_IS_OCCUPIED | 1208 | 音频采集设备被占用 |
| WARNING_AUDIO_FRAME_DECODE_FAIL | 2102 | 当前音频帧解码失败 |
| WARNING_AUDIO_RECORDING_WRITE_FAIL | 7001 | 音频录制写入文件失败 |
| WARNING_MICROPHONE_HOWLING_DETECTED | 7002 | 录制音频时监测到啸叫 |
| WARNING_IGNORE_UPSTREAM_FOR_AUDIENCE | 6001 | 当前是观众角色，不支持发布音视频，需要先切换成主播角色 |
| WARNING_UPSTREAM_AUDIO_AND_VIDEO_OUT_OF_SYNC | 6006 | 音视频发送时间戳异常，可能引起音画不同步问题 |
| WARNING_RECONNECT_ON_SERVER_STATUS_ABNORMAL | 6007 | 服务器状态异常，正在进行重连 |
