用于新建视频流。请求方可自定义传入参数,通过接口获取视频流播放地址。
1)调用协议
HTTPS + JSON
POST /v2/ivh/streammanager/streamservice/newsession
Header Content-Type: application/json;charset=utf-8
2)请求参数
参数名称 | 型选 | 必类 | 描述 |
SessionId | String | 是 | 会话唯一标识。Saas 环境不允许传入,私有化环境可传入,不传入则由系统自动分配。 |
UserId | string | 是 | 用户的唯一标识,由调用方自己维护。以相同的 UserId 创建新流,会导致上一个该UserId 流关闭。 |
Protocol | string | 否 | 视频流播放协议,缺省值:rtmp。当前支持参数:rtmp、trtc、webrtc |
DriverType | int | 是 | 数智人驱动方式。 1:文本驱动; 2:语音驱动(变声); 3:语音驱动(原声) |
ProtocolOption | ProtocolOption | 否 | 协议自定义参数 |
ExtraInfo | ExtraInfo | 否 | 扩展额外信息 |
ProtocolOption
名称 | 类型 | 必选 | 描述 |
RtmpPushAddr | string | 否 | 当 Protocol 填写 rtmp 时,指定 rtmp 推流地址 |
TrtcUseExternalApp | boolean | 否 | 是否使用外部 trtc appid,如果不使用,将使用数智人平台统一的 trtc appid。 注意:使用数智人平台的 trtc 时,仅可用于调试,实际投产请使用外部 trtc |
TrtcAppId | string | 否 | trtc appid(使用外部 trtc appid 时必填)。 |
TrtcRoomId | int | 否 | trtc 房间号(不指定则由云端分配房间号)。 |
TrtcUserSig | string | 否 | trtc 数字人用户签名(使用外部 trtc appid 时必填)。 |
TrtcPrivateMapKey | string | 否 | trtc 数字人用户权限密钥(使用外部 trtc appid 时必填)。 |
ExtraInfo
名称 | 类型 | 必选 | 描述 |
UserInfo | string | 否 | 用户相关的初始化信息 |
3)返回参数
名称 | 类型 | 必选 | 描述 |
SessionId | String | 是 | 会话的唯一标识 |
SessionStatus | 是 | int | 状态:1: 进行中3: 准备中 |
PlayStreamAddr | String | 否 | 格式为: rtmp://liveplay.ivh.qq.com/live/m789 |
注:使用2D小样本形象新建流时,需关注返回的 SessionStatus 字段,如果返回为1:则直接命中了形象缓存,和之前使用流程一致,如果返回为3: 准备中,则需要使用 查询会话状态接口 轮询得到最终的播流地址。建议轮询周期为5s一次。一般在1分钟内完成形象加载并返回播流地址,最长加载时间不超过2分钟。
4)示例
输入参数:
{"Header": {},"Payload": {"UserId": "henry","Protocol": "rtmp"}}
输出响应:
{"Header": {"Code": 0,"Message": "","RequestID": "123",},"Payload": {"SessionId": "m789","SessionStatus": 1,"PlayStreamAddr": "rtmp://live.qq.com/live/m789"}}