You need to enable JavaScript to run this app.
实时音视频

实时音视频

复制全文
输入在线媒体流
开始在线媒体流输入 StartRelayStream
复制全文
开始在线媒体流输入 StartRelayStream

在你的音视频应用中,你可能需要将在线媒体流输入到 RTC 房间中,供频道内的远端用户欣赏。
你可以使用 StartRelayStream 这个 OpenAPI 实现这一功能。

使用说明

接口行为

你可以调用 StartRelayStream 接口,指定你所属的 AppId,对指定 roomId 对应房间内用户输入在线媒体流。
如果媒体流状态发生变化,你在控制台上设置的回调地址会收到每个状态变化的回调。有关回调结果的详细说明,参看 RelayStreamStateChanged

本接口开启后有效期为 72 小时,即接口开启 72 小时后,会自动停止,并通过回调告知具体信息。

前置条件

在开始输入在线媒体流前,你必须已经在控制台上开启在线媒体流功能。

注意事项

请求频率:QPS 不得超过 150。

请求说明

  • 请求方式:POST
  • 请求地址:https://rtc.volcengineapi.com?Action=StartRelayStream&Version=2020-12-01

调试

请求参数

下表仅列出该接口特有的请求参数和部分公共参数。更多信息请见公共参数

Query

参数
类型
是否必选
示例值
描述
Action
String
StartRelayStream
接口名称。当前 API 的名称为 StartRelayStream
Version
String
2020-12-01
接口版本。当前 API 的版本为 2020-12-01

Body

参数
类型
是否必选
示例值
描述
AppId
String
Your_AppId
应用的唯一标志
BusinessId
String
Your_BusinessId
业务标识
RoomId
String
Your_RoomId
房间 ID,是房间的唯一标志
TaskId
String
Your_TaskId

任务 ID。你必须对每个任务设定 TaskId,且在后续进行任务更新和结束时也须使用该 TaskId。

TaskId 是任务的标识,在一个 AppIdRoomIdtaskId 是唯一的,不同 AppId 或者不同 RoomIdTaskId 可以重复,因此 AppId + RoomId + TaskId 是任务的唯一标识,可以用来标识指定 AppId 下某个房间内正在运行的任务,从而能在此任务运行中进行更新或者停止此任务。

关于 TaskId 及以上 Id 字段的命名规则符合正则表达式:[a-zA-Z0-9_@\-\.]{1,128}
UserId
String
Your_UserId
在线媒体流对应的的 UserId
MaxIdleTime
Integer
300
任务的空闲超时时间。超过此时间后,任务自动终止。值的范围为 [5, 600] ,单位为秒。默认值为300
Token
String
Your_token
客户端与业务服务端进行通讯时用于身份认证的 token
Control
Object
/
控制选项
StreamUrl
String
rtmp://xxx
在线流媒体地址。媒体格式应为:hls、rtmp、mp4、flv、dash、或 ts。如源流为海外,建议联系技术支持,以保障最佳体验。
MediaType
Integer
0

媒体类型。

  • 0:音视频
  • 1:音频。采用此选项时,必须是 AAC 或 Opus 编码。
  • 2:视频
    默认值为0
StreamMode
Integer
0

流处理模式。

  • 0:转码。采用此选项时,原视频编码方式必须是 H.264 或 ByteVC1。
  • 1:转封装。采用此选项时,原视频编码方式必须是 H.264。转封装时,源流的视频关键帧间隔若过大,会影响 RTC 体验,建议 1s,但最大不超过 5s。
    默认值为0
StartTimeStamp
Integer
0
任务起始时间戳,用于定时播放,Unix时间,单位为秒。默认为 0,表示立即启动。此参数仅对 StartRelayStream接口生效。
Loop
Boolean
False
是否循环播放,仅对源流为点播流时生效。
VideoWidth
Integer
640
视频宽度。转码时必填,单位为像素,范围为 [16, 1920],必须是偶数,值为奇数时自动调整为偶数。
VideoHeight
Integer
480
视频高度,转码时必填。单位为像素,范围为 [16, 1920],必须是偶数,值为奇数时自动调整为偶数。
FrameRate
Integer
15
发送帧率,值的范围为[1,30],默认值为15,转码时生效。
Bitrate
Integer
6000
最大发送码率,单位为 Kbps,不填则不限制,转码时生效。

返回参数

本接口无特有的返回参数。公共返回参数请见返回结构
其中返回值 Result 仅在请求成功时返回 ok,失败时为空。

请求示例

POST https://rtc.volcengineapi.com?Action=StartRelayStream&Version=2020-12-01
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "UserId": "Your_UserId",
    "Token": "Your_Token",
    "MaxIdleTime": 300,
    "Control" : {
        "StreamUrl": "rtmp://xxx",
        "MediaType": 0,
        "StreamMode": 0,
        "StartTimeStamp": 0,
        "Loop": false,
        "VideoWidth": 640,
        "VideoHeight": 480,
        "FrameRate": 15,
        "Bitrate": 6000
     }
}

返回示例

{
    "Result": "ok",
    "ResponseMetadata": {
        "RequestId": "Your_RequestId",
        "Action": "StartRelayStream",
        "Version": "2020-12-01",
        "Service": "rtc",
        "Region": "cn-north-1"
    }
}

错误码

您可访问公共错误码,获取更多错误码信息。

最近更新时间:2025.07.03 20:05:44
这个页面对您有帮助吗?
有用
有用
无用
无用