本文档 API 接口为最新版本接口,后续相关功能的新增都会在此更新,推荐使用最新版本接口。旧版接口文档请参考历史版本。
注意
在使用单流转推功能前,你必须在控制台上开通转推直播服务。
在实时音视频通话场景中,你可以通过调用此接口实现将指定音视频房间内的一路流推送至指定的 CDN 推流地址。
接口调用后,接口会返回操作结果,确认任务是否成功,同时你可以在控制台设置回调地址接收任务状态相关回调。
aac,音频声道数固定为双声道,音频采样率固定为 44100。请求频率:QPS 不得超过 150。
下表仅列出该接口特有的请求参数和部分公共参数。更多信息请见公共参数。
参数 | 类型 | 是否必选 | 示例值 | 描述 |
|---|---|---|---|---|
Action | String | 是 | StartPushSingleStreamToCDN | 接口名称。当前 API 的名称为 StartPushSingleStreamToCDN。 |
Version | String | 是 | 2023-11-01 | 接口版本。当前 API 的版本为 2023-11-01。 |
参数 | 类型 | 是否必选 | 示例值 | 描述 |
|---|---|---|---|---|
AppId | String | 是 | 661e****543cf | 你的音视频应用的唯一标志,参看获取 AppId。 |
BusinessId | String | 否 | B****23 | 业务标识 |
RoomId | String | 是 | Room1 | 房间的 ID,是房间的唯一标志。 |
TaskId | String | 是 | Task1 | 转推任务 ID。你必须对每个转推任务设定 TaskId,且在后续进行任务结束时也须使用该 TaskId。
关于 TaskId 及以上 Id 字段的命名规则符合正则表达式: TaskId 重复调用开始接口不会导致请求失败,BaseResponse.Result 会提示 The task has been started. Please do not call the startup task interface repeatedly。 |
Stream | Object | 是 | - | 指定房间内转推的流。 |
UserId | String | 是 | user1 | 用户 ID,表示这个流所属的用户。 |
StreamType | Integer | 否 | 0 | 流的类型。支持取值及含义如下:
0。 |
PushURL | String | 是 | rtmp://push.example.com/live/stream123 | 推流地址,用于将音视频流通过 RTMP 协议推送到指定的 CDN 服务器。目前仅支持 RTMP 协议。 |
Control | Object | 是 | 配置选项 | |
MediaType | Integer | 否 | 0 | 全局控制订阅的流的类型,支持的取值如下:
0。 |
MaxIdleTime | Integer | 否 | 180 | 任务的空闲超时时间,单位为秒。
|
本接口无特有的返回参数。公共返回参数请见返回结构。
其中返回值 Result 仅在请求成功时返回 ok,失败时为空。
POST https://rtc.volcengineapi.com?Action=StartPushSingleStreamToCDN&Version=2023-11-01 { "AppId": "661e****543cf", "BusinessId": "B****23", "RoomId": "Room1", "TaskId": "Task1", "PushURL": "rtmp://xxx/xxx", "Stream": { "UserId": "user1", "StreamType": 0 }, "Control": { "MediaType": 0, "MaxIdleTime": 180 } }
{ "Result": "ok", "ResponseMetadata": { "RequestId": "20230****10420", "Action": "StartPushSingleStreamToCDN", "Version": "2023-11-01", "Service": "rtc", "Region": "cn-north-1" } }
您可访问公共错误码,获取更多错误码信息。