创建RTMP流在房间中的推流地址

调用CreateRoomRealTimeStreamAddress创建RTMP流在房间中的推流地址。

注意事项

在使用实时音视频时,需要通过阿里云ARTC SDK进行入会并推送RTC的流。但在部分特殊场景下,阿里云允许您使用RTMP协议推流(如OBS推流),并由阿里云将RTMP转换成RTC流进行推送和实现用户入会。您可以通过本接口实现该能力,本接口将为您生成RTMP推流地址,当您完成推流后阿里云将自动将流转换成RTC流。

若您的业务是纯直播场景时,请勿使用该接口,您可以参见生成推流地址和播放地址快速实现RTMP推流和直播播放。

使用说明

1. 调用此接口生成RTMP推流地址。

2. 向RTMP地址推流,房间中的其他用户可以看到此路流。

3. 停止推流,房间中的其他用户看到推RTMP流的用户离开房间。

说明
  • 在RTMP地址有效期内可以重复步骤2、3。
  • 建议配合调用DescribeChannelParticipants查询频道用户列表,定时间隔的检查推RTMP流的用户是否还在房间中。如果不在,可能推流中断,建议停止推流再转到步骤2重推。

QPS限制

本接口的单用户QPS限制为100次/秒。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。更多信息,请参见QPS限制

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称

类型

是否必选

示例值

描述

Action String CreateRoomRealTimeStreamAddress

系统规定参数。取值:CreateRoomRealTimeStreamAddress

AppId String yourAppId

实时音视频应用ID,仅支持传单个ID。由大小写字母、数字、下划线、短划线(-)组成,最大64字符。

ChannelId String yourChannelId

要加入的房间ID,仅支持传单个ID。由大小写字母、数字、下划线、短划线(-)组成,最大64字符。

UserId String rtmp-uuid

向RTMP地址推流的用户ID,不能和房间中的其他用户ID重复。由大小写字母、数字、下划线、短划线(-)组成,最大64字符。

DisplayName String rtmp-dname

RTMP流在房间中显示的名称,最大40字符。

ExpireTime Integer 43200

RTMP地址有效时长,单位:秒,默认值36000,即10小时。

返回数据

名称

类型

示例值

描述

RequestId String F8DB7E25-6A35-161A-AA41-B7A658AF****

请求ID。

RtmpAddress String rtmp://rtcpush****.rtmp.alivecdn.com/rtcdev****/H4sIAAAA****_6pWSlayUipJLS5R0lEqRTBTEMwiJSul1CRTMxNjsyQTM****-PUZCMz8yTDZLNkAwMDA6M0I0ulWgA****__wEAAP__a_e7YkkAAAA?auth_key=1700492701-6e33-0-c6d7e3a93dc2dbe3af42f6259ccd****

RTMP推流地址。

示例

请求示例

http(s)://live.aliyuncs.com?Action=CreateRoomRealTimeStreamAddress
&AppId=yourAppId
&ChannelId=yourChannelId
&UserId=rtmp-uuid
&DisplayName=rtmp-dname
&ExpireTime=43200
&公共请求参数

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<CreateRoomRealTimeStreamAddressResponse>
    <RequestId>F8DB7E25-6A35-161A-AA41-B7A658AF0635</RequestId>
    <RtmpAddress>rtmp://rtcpush****.rtmp.alivecdn.com/rtcdev****/H4sIAAAA****_6pWSlayUipJLS5R0lEqRTBTEMwiJSul1CRTMxNjsyQTM****-PUZCMz8yTDZLNkAwMDA6M0I0ulWgA****__wEAAP__a_e7YkkAAAA?auth_key=1700492701-6e33-0-c6d7e3a93dc2dbe3af42f6259ccd****</RtmpAddress>
</CreateRoomRealTimeStreamAddressResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "F8DB7E25-6A35-161A-AA41-B7A658AF0635",
  "RtmpAddress" : "rtmp://rtcpush****.rtmp.alivecdn.com/rtcdev****/H4sIAAAA****_6pWSlayUipJLS5R0lEqRTBTEMwiJSul1CRTMxNjsyQTM****-PUZCMz8yTDZLNkAwMDA6M0I0ulWgA****__wEAAP__a_e7YkkAAAA?auth_key=1700492701-6e33-0-c6d7e3a93dc2dbe3af42f6259ccd****"
}

错误码

HttpCode

错误码

错误信息

描述

400 InputInvalid %s. 输入参数不合法
403 NoAuth %s. 没有权限
404 ResourceNotExist %s. 请求资源不存在,请检查后重新尝试
500 ServerError %s. 未知错误,请稍后重试或提交工单咨询。

访问错误中心查看更多错误码。