1. 接口描述
接口请求域名: tiw.tencentcloudapi.com 。
发起一个实时录制任务
默认接口请求频率限制:20次/秒。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
Action | 是 | String | 公共参数,本接口取值:StartOnlineRecord。 |
Version | 是 | String | 公共参数,本接口取值:2019-09-19。 |
Region | 是 | String | 公共参数,详见产品支持的 地域列表。 |
SdkAppId | 是 | Integer | 客户的SdkAppId 示例值:1400000001 |
RoomId | 是 | Integer | 需要录制的白板房间号,取值范围: (1, 4294967295)。 1. 在没有指定 GroupId 的情况下,实时录制默认以RoomId 的字符串表达形式作为同步白板信令的IM群组ID(比如RoomId 为1234,则IM群组ID为"1234"),并加群进行信令同步,请在开始录制前确保相应IM群组已创建完成,否则会导致录制失败。2. 在没有指定 TRTCRoomId 和TRTCRoomIdStr 的情况下,默认会以RoomId 作为TRTC房间号进房拉流进行录制。示例值:12345 |
RecordUserId | 是 | String | 用于录制服务进房的用户ID,最大长度不能大于60个字节,格式为tic_record_user_${RoomId}_${Random} ,其中 ${RoomId} 与录制房间号对应,${Random} 为一个随机字符串。该ID必须是一个单独的未在SDK中使用的ID,录制服务使用这个用户ID进入房间进行音视频与白板录制,若该ID和SDK中使用的ID重复,会导致SDK和录制服务互踢,影响正常录制。 示例值:tic_record_user_880528_1258 |
RecordUserSig | 是 | String | 与RecordUserId 对应的IM签名示例值:eJwtjb0OgjAAhN*lK4a0tcVC4iDGkIg-g7K4NEiLViLUUsFgfHcRmS733eXuDY6b |
GroupId | 否 | String | 白板进行信令同步的 IM 群组 ID。 在没有指定 GroupId 的情况下,实时录制服务将使用 RoomId 的字符串形式作为同步白板信令的IM群组ID。在指定了 GroupId 的情况下,实时录制将优先使用GroupId 作为同步白板信令的群组ID。请在开始录制前确保相应的IM群组已创建完成,否则会导致录制失败。示例值:12345 |
Concat | 否 | Concat | 录制视频拼接参数 |
Whiteboard | 否 | Whiteboard | 录制白板参数,例如白板宽高等 |
MixStream | 否 | MixStream | 录制混流参数 特别说明: 1. 混流功能需要根据额外开通, 请联系腾讯云互动白板客服人员 2. 使用混流功能,必须提供 Extras 参数,且 Extras 参数中必须包含 "MIX_STREAM" |
Extras.N | 否 | Array of String | 使用到的高级功能列表 可以选值列表: MIX_STREAM - 混流功能 示例值:["MixStream"] |
AudioFileNeeded | 否 | Boolean | 是否需要在结果回调中返回各路流的纯音频录制文件,文件格式为mp3 示例值:false |
RecordControl | 否 | RecordControl | 录制控制参数,用于更精细地指定需要录制哪些流,某一路流是否禁用音频,是否只录制小画面等 |
RecordMode | 否 | String | 录制模式 REALTIME_MODE - 实时录制模式(默认) VIDEO_GENERATION_MODE - 视频生成模式(内测中,需邮件申请开通) 示例值:REALTIME_MODE |
ChatGroupId | 否 | String | 聊天群组ID,此字段仅适用于视频生成模式 在 视频生成模式 下,默认会记录白板群组内的非白板信令消息,如果指定了ChatGroupId ,则会记录指定群ID的聊天消息。示例值:12345 |
AutoStopTimeout | 否 | Integer | 自动停止录制超时时间,单位秒,取值范围[300, 86400], 默认值为300秒。 当超过设定时间房间内没有音视频上行且没有白板操作的时候,录制服务会自动停止当前录制任务。 示例值:300 |
ExtraData | 否 | String | 内部参数,可忽略 |
TRTCRoomId | 否 | Integer | TRTC数字类型房间号,取值范围: (1, 4294967295)。 在同时指定了 RoomId 与TRTCRoomId 的情况下,优先使用TRTCRoomId 作为实时录制拉TRTC流的TRTC房间号。当指定了 TRTCRoomIdStr 的情况下,此字段将被忽略。示例值:12345 |
TRTCRoomIdStr | 否 | String | TRTC字符串类型房间号。 在指定了 TRTCRoomIdStr 的情况下,会优先使用TRTCRoomIdStr 作为实时录制拉TRTC流的TRTC房间号。示例值:record-room |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
TaskId | String | 录制任务Id 示例值:0c69baivvc3lp8t4f80b |
RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 开始实时录制
输入示例
https://tiw.tencentcloudapi.com/?Action=StartOnlineRecord
&SdkAppId=1400000001
&RoomId=1203
&RecordUserId=tic_record_user_1203_141551
&RecordUserSig=usersig_of_<tic_record_user_1203_141551>
&<公共请求参数>
输出示例
{
"Response": {
"RequestId": "eac6b301-a322-493a-8e36-83b295459397",
"TaskId": "bj0mt2l23osdj300hl30"
}
}
示例2 开始带混流的实时录制
使用内置混流布局进行混流录制
输入示例
https://tiw.tencentcloudapi.com/?Action=StartOnlineRecord
&SdkAppId=1400000001
&RoomId=1203
&RecordUserId=tic_record_user_1203_141551
&RecordUserSig=usersig_of_<tic_record_user_1203_141551>
&Whiteboard.Width=1280
&Whiteboard.Height=960
&Whiteboard.InitParam={"ratio":"16:9"}
&Concat.Enabled=true
&Concat.Image=http://background/image.jpg
&MixStream.Enabled=true
&MixStream.DisableAudio=false
&MixStream.ModelId=2
&MixStream.TeacherId=teacher
&Extras.0=MIX_STREAM
&<公共请求参数>
输出示例
{
"Response": {
"RequestId": "eac6b301-a322-493a-8e36-83b295459397",
"TaskId": "bj0mt2l23osdj300hl30"
}
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: GitHub Gitee
- Tencent Cloud SDK 3.0 for Java: GitHub Gitee
- Tencent Cloud SDK 3.0 for PHP: GitHub Gitee
- Tencent Cloud SDK 3.0 for Go: GitHub Gitee
- Tencent Cloud SDK 3.0 for Node.js: GitHub Gitee
- Tencent Cloud SDK 3.0 for .NET: GitHub Gitee
- Tencent Cloud SDK 3.0 for C++: GitHub Gitee
- Tencent Cloud SDK 3.0 for Ruby: GitHub Gitee
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
错误码 | 描述 |
---|---|
AuthFailure | CAM签名/鉴权错误。 |
InvalidParameter.BodyParameterTypeUnmatched | 参数类型不匹配。 |
InvalidParameter.InvalidExtra | 额外指定的特殊功能不存在。 |
InvalidParameter.RecordParameter | 实时录制参数格式不正确。 |
InvalidParameter.SdkAppIdNotFound | SdkAppId不存在或格式错误。 |
LimitExceeded.TaskConcurrency | 转码或录制任务并发数量超过限制,请参考错误描述或稍后重试。 |
ResourceInUse.RecordUserId | 实时录制任务录制用户已被其他录制任务使用。 |
ResourceUnavailable.NotRegistered | 未开通互动白板。 |
ResourceUnavailable.ServiceExpired | 账户欠费或者互动白板服务已过期。 |
UnauthorizedOperation.SdkAppId | SdkAppId不存在或者SdkAppId与当前腾讯云账号不对应。 |