有奖:语音产品征文挑战赛火热进行中> HOT
文档中心 > API 中心

1. 接口描述

接口请求域名: trtc.tencentcloudapi.com 。

将一个在线媒体流推到TRTC房间。
使用此接口的前提条件:需要购买 尊享版或旗舰版套餐包

默认接口请求频率限制:20次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:StartStreamIngest。
Version String 公共参数,本接口取值:2019-07-22。
Region String 公共参数,详见产品支持的 地域列表,本接口仅支持其中的: ap-beijing, ap-chongqing, ap-guangzhou, ap-shanghai, ap-singapore 。
SdkAppId Integer TRTC的SdkAppId,和TRTC的房间所对应的SdkAppId相同。
示例值:1234
RoomId String TRTC的RoomId,录制的TRTC房间所对应的RoomId。
示例值:1234
RoomIdType Integer TRTC房间号的类型。
【*注意】必须和录制的房间所对应的RoomId类型相同:
0: 字符串类型的RoomId
1: 32位整型的RoomId(默认)
示例值:1
UserId String 输入在线媒体流机器人的UserId,用于进房发起拉流转推任务。
示例值:recorder_1234
UserSig String 输入在线媒体流机器人UserId对应的校验签名,即UserId和UserSig相当于机器人进房的登录密码,具体计算方法请参考TRTC计算UserSig的方案。
示例值:recorder_1234_sig
StreamUrl String 源流URL。历史原因本字段【必填】。如果是视频流,分辨率请保持不变。
示例值:https://a.b/test.mp4
PrivateMapKey String TRTC房间权限加密串,只有在TRTC控制台启用了高级权限控制的时候需要携带,在TRTC控制台如果开启高级权限控制后,TRTC 的后台服务系统会校验一个叫做 [PrivateMapKey] 的“权限票据”,权限票据中包含了一个加密后的 RoomId 和一个加密后的“权限位列表”。由于 PrivateMapKey 中包含 RoomId,所以只提供了 UserSig 没有提供 PrivateMapKey 时,并不能进入指定的房间。
VideoEncodeParams VideoEncodeParams 视频编码参数。可选,如果不填,保持原始流的参数。
AudioEncodeParams AudioEncodeParams 音频编码参数。可选,如果不填,保持原始流的参数。
SourceUrl.N Array of String 【本字段已废弃,请使用 StreamUrl 字段】源流URL,支持一个地址。
示例值:https://a.b/test.mp4
SeekSecond Integer 指定视频从某个秒时间戳播放

3. 输出参数

参数名称 类型 描述
TaskId String 输入在线媒体流的任务 ID。任务 ID 是对一次输入在线媒体流生命周期过程的唯一标识,结束任务时会失去意义。任务 ID 需要业务保存下来,作为下次针对这个任务操作的参数。
RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 启动输入在线媒体流

启动一个输入在线媒体流任务,将在线媒体流"https://a.b/test.mp4"输入TRTC房间,音视频编码采用默认编码值,转推成功后返回TaskId

输入示例

POST / HTTP/1.1
Host: trtc.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: StartStreamIngest
<公共请求参数>

{
    "SdkAppId": 1234567890,
    "RoomId": "room123",
    "UserId": "robot123",
    "UserSig": "xxxxxxxxxxxxxxx",
    "PrivateMapKey": "xxxxxxxxxxxxxxx",
    "RoomIdType": 1,
    "StreamUrl": "https://a.b/test.mp4"
}

输出示例

{
    "Response": {
        "TaskId": "-gCTFWtU7t7DUlo7A8IswFszO9z2O-rbERqJAoK-4pycoZXKjIAAnasdcasdOEycyX4CnzhIm4RAQ..",
        "RequestId": "71993312-6ab8-4768-9124-118e0a20c45f"
    }
}

5. 开发者资源

腾讯云 API 平台

腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

API Inspector

用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码 描述
FailedOperation.NotRtmpFunction 未开通RTMP
FailedOperation.RestrictedConcurrency 单用户并发过载,请联系我们增大并发路数到合理值。
FailedOperation.TaskExist 任务已存在
InternalError.HttpParseFailed http请求解析失败。
InternalError.InternalError 内部错误,请重试。
InvalidParameter.BodyParamsError body 解析参数失败。
InvalidParameter.RoomId RoomId参数错误。
InvalidParameter.SdkAppId SdkAppId参数错误。
InvalidParameter.StrRoomId StrRoomId参数错误。
InvalidParameter.TaskId TaskId 参数错误。
InvalidParameter.UserSig UserSig过期或错误。
MissingParameter.RoomId 缺少RoomId参数。
MissingParameter.SdkAppId 缺少SdkAppId参数。
MissingParameter.TaskId 缺少TaskId参数。
ResourceInsufficient.RequestRejection 资源不足。