启动数字人智能直播任务 - StartSmartLive
功能介绍
该接口用于启动数字人智能直播任务。
调用方法
请参见如何调用API。
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限,具体权限要求请参见权限和授权项。
URI
POST /v1/{project_id}/smart-live-rooms/{room_id}/smart-live-jobs
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
project_id | 是 | String | 项目ID,获取方法请参考获取项目ID。 |
room_id | 是 | String | 直播间ID。 |
请求参数
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
X-Auth-Token | 否 | String | 用户Token。使用Token鉴权方式时必选。 通过调用IAM服务获取用户Token接口获取。 响应消息头中X-Subject-Token的值。 |
Authorization | 否 | String | 使用AK/SK方式认证时必选,携带的鉴权信息。 |
X-Sdk-Date | 否 | String | 使用AK/SK方式认证时必选,请求的发生时间。 格式为(YYYYMMDD'T'HHMMSS'Z')。 |
X-Project-Id | 否 | String | 使用AK/SK方式认证时必选,携带项目ID信息。 |
X-App-UserId | 否 | String | 第三方用户ID。不允许输入中文。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
video_config | 否 | VideoConfig object | 视频输出配置。 |
play_policy | 否 | PlayPolicy object | 剧本播放策略 |
output_urls | 否 | Array of strings | 参数解释: RTMP视频推流第三方直播平台地址。 说明: 直播过程中刷新地址,需要调用COMMAND命令REFRESH_OUTPUT_URL。 约束限制: 不涉及 取值范围: 当前仅支持一条RTMP出流地址。 默认取值: 不涉及。 |
stream_keys | 否 | Array of strings | 参数解释: RTMP视频推流第三方直播平台流密钥,与推流地址对应。 说明: 直播过程中刷新地址,需要调用COMMAND命令REFRESH_OUTPUT_URL。 约束限制: 不涉及 取值范围: 当前仅支持一条RTMP出流地址。 默认取值: 不涉及。 |
interaction_callback_url | 否 | String | 参数解释: 互动回调URL,含鉴权信息。 互动规则trigger.reply_mode配置为CALLBACK时填写 约束限制: 不涉及 取值范围: 字符长度0-2048位 默认取值: 不涉及。 |
live_event_callback_config | 否 | LiveEventCallBackConfig object | 直播事件HTTPS回调通知配置 |
rtc_callback_config | 否 | RTCLiveEventCallBackConfig object | RTC回调事件配置。兼容处理,未携带配置则默认订阅LIVE_PROGRESS |
view_mode | 否 | String | 参数解释: 横竖屏类型。 约束限制: 用户无需填写,通过video_config中分辨率判断 取值范围: 默认取值: VERTICAL |
co_streamer_config | 否 | CoStreamerConfig object | 助播配置 |
job_run_config | 否 | LiveJobRunConfig object | 数字人直播任务运行配置 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
clip_mode | 否 | String | 参数解释: 输出视频的剪辑方式。 约束限制: 不涉及。 取值范围: 默认取值: RESIZE |
codec | 否 | String | 参数解释: 视频编码格式及视频文件格式。 约束限制: 仅分身数字人视频制作支持VP8和QTRLE编码。QTRLE编码时文本驱动字符数限制小于1500字,音频驱动音频长度小于5分钟。 QTRLE编码需要先申请开通白名单后才能使用 取值范围: 默认取值: H264 默认取值: H264 |
bitrate | 是 | Integer | 参数解释: 输出平均码率。单位:kbps。 约束限制: 默认取值: 不涉及 取值范围: 40~30000 |
width | 是 | Integer | 参数解释: 视频宽度。单位:像素。 约束限制:
默认取值: 不涉及 取值范围: 0~3840 |
height | 是 | Integer | 参数解释: 视频高度。 单位:像素。 约束限制: 默认取值: 不涉及 取值范围: 0~3840 |
frame_rate | 否 | String | 参数解释: 帧率。单位:FPS。 约束限制: 分身数字人视频固定25FPS。 默认取值: 25 |
is_subtitle_enable | 否 | Boolean | 参数解释: 输出的视频是否带字幕。 约束限制: 分身数字人直播暂时不支持字幕。 取值范围: 默认取值: false |
subtitle_config | 否 | SubtitleConfig object | 字幕配置。 |
dx | 否 | Integer | 参数解释: 裁剪视频左上角像素点横坐标。 说明: 以模特分辨率为画布大小,比如1920*1080分辨率的模特,dx最小值是0,最大值是1920。 约束限制: clip_mode=CROP时生效。 默认取值: 不涉及 取值范围: -1920~3840 |
dy | 否 | Integer | 参数解释: 裁剪视频左上角像素点纵坐标。 说明: 以模特分辨率为画布大小,比如1920*1080分辨率的模特,dy最小值是0,最大值是1080 约束限制: clip_mode=CROP时生效。 默认取值: 不涉及 取值范围: -1920~3840 |
is_enable_super_resolution | 否 | Boolean | 参数解释: 视频是否开启超分。 约束限制: 仅分身数字人视频制作支持。 取值范围 默认取值: false |
is_end_at_first_frame | 否 | Boolean | 参数解释: 视频结束帧是否跟起始帧相同。需要多个数字人视频无缝拼接时设置成true。 约束限制: 仅分身数字人视频制作支持,当视频制作时插入动作标签后此设置将失效。 取值范围 默认取值: false |
output_external_url | 否 | String | 视频文件上传的外部URL。 |
is_vocabulary_config_enable | 否 | Boolean | 参数解释: 是否应用当前租户的读法配置 约束限制: 仅分身数字人视频制作支持。 取值范围 默认取值: true |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
dx | 否 | Integer | 参数解释: 字幕框左下角像素点坐标。 约束限制: 不涉及。 默认取值: 不涉及。 取值范围: 0~1920 |
dy | 否 | Integer | 参数解释: 字幕框左下角像素点坐标。 约束限制: 不涉及。 默认取值: 不涉及。 取值范围: 0~1920 |
h | 否 | Integer | 参数解释: 字幕框高度。 约束限制: 参数h用于方便前端计算字幕框左上角坐标,后台不使用该参数。 取值范围: 0~1920 |
w | 否 | Integer | 参数解释: 字幕框宽度。 约束限制: 取值范围: 0~1920 |
font_name | 否 | String | 参数解释: 字体。当前支持的字体请参考服务支持的字体 约束限制: 不涉及。 取值范围: 字符长度0-64位 默认取值: HarmonyOS_Sans_SC_Black |
font_size | 否 | Integer | 参数解释: 字体大小。接口的取值范围为0-120,实际业务使用的取值范围要求为24-120,请以业务实际使用要求为准。 约束限制: 不涉及。 取值范围: 0~120 默认取值: 54 |
font_color | 否 | String | 参数解释: 字幕字体颜色的RGB颜色值。 约束限制: 无 取值范围: 字符长度0-7位,固定长度 默认取值: #FFFFFF |
stroke_color | 否 | String | 参数解释: 字幕字体描边颜色的RGB颜色值。 约束限制: 无 取值范围: 字符长度0-7位,固定长度 |
stroke_thickness | 否 | Float | 参数解释: 字幕字体描边粗细像素值。 约束限制: 无 取值范围: 0-50 取值范围: 0~50 |
opacity | 否 | Float | 参数解释: 字幕字体不透明度,0表示完全透明,1表示完全不透明。默认1。 约束限制: 无 取值范围: 0-1 取值范围: 0~1 默认取值: 1.0 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
repeat_count | 否 | Integer | 参数解释: 剧本重复播放次数。 约束限制: 不涉及。 取值范围: -1~100 默认取值: 0 |
auto_play_script | 否 | Boolean | 参数解释: 是否自动播放剧本。 约束限制: 不涉及。 取值范围: 默认取值: true |
play_mode | 否 | String | 参数解释: 驱动方式。 约束限制: 不涉及。 取值范围: 默认取值: TEXT |
random_play_mode | 否 | String | 参数解释: 随机播报模式。 约束限制: 从第二轮播报开始随机。 取值范围: 默认取值: SCRIPT_ITEM |
need_independent_capture_client | 否 | Boolean | 参数解释: 是否需要独立采集端。用于客户端播放与命令分离场景。 约束限制: 不涉及。 取值范围: 默认取值: false |
live_exit_config | 否 | LiveExitConfig object | 直播任务退出配置 |
is_rewrite_delay | 否 | Boolean | 参数解释: 动态编辑未播放剧本是否需要下一轮生效。 约束限制: 不涉及。 取值范围: 默认取值: false 默认取值: false |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
max_live_duration | 否 | Integer | 参数解释: 最大直播时长。单位小时。 此数值配置为n,则标识起播后n小时后触发停止直播逻辑。 当前数值最大为168(一周),特殊的,0表示不限时。 约束限制: 停止直播逻辑配置为立即停止则直播停止误差在5分钟之内。其他逻辑则加上处理时长。 默认取值: 不设置则表示不限时。 取值范围: 0~168 |
auto_stop_mode | 否 | String | 参数解释: 自动停止直播模式。 约束限制: 不涉及 默认取值: 不设置则表示FORCE_EXIT。 |
max_exception_waiting_duration | 否 | Integer | 参数解释: 最大异常等待时长。单位分钟。 此数值配置为n,则标识检测到异常n分钟后触发立即停止直播逻辑。 当前数值最大为60(1小时),特殊的,0表示不限时。 约束限制: 不涉及 默认取值: 不设置则为系统默认值,当前为3分钟,默认值可能会根据服务运行状态进行少许调整。 取值范围: 0~60 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
rtc_callback_event_type | 否 | Array of strings | RTC回调的直播事件类型列表。 当前仅支持如下取值: 回调事件结构体定义:
|
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
voice_config | 否 | VoiceConfig object | 语音配置参数。 |
streamer_action | 否 | String | 参数解释: 助播出声时主播行为设置。 约束限制: 不涉及 取值范围: 默认取值: 不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
voice_asset_id | 是 | String | 参数解释: 音色资产ID,可以从资产库中查询。 音色ID的查询操作,详见查询预置音色ID。 约束限制: 不涉及。 取值范围: 字符长度1-256位。 默认取值: 不涉及。 |
speed | 否 | Integer | 参数解释: 语速。50表示0.5倍语速,100表示正常语速,200表示2倍语速。 当取值为“100”时,表示一个成年人的正常语速,约为250字/分钟。 约束限制: 不涉及。 取值范围: 50~200 默认取值: 100 |
pitch | 否 | Integer | 参数解释: 音高。 约束限制: 不涉及。 取值范围: 50~200 默认取值: 100 |
volume | 否 | Integer | 参数解释: 音量。 约束限制: 不涉及。 取值范围: 90~240 默认取值: 140 |
响应参数
状态码:202
参数 | 参数类型 | 描述 |
|---|---|---|
X-Request-Id | String | 请求ID。 |
参数 | 参数类型 | 描述 |
|---|---|---|
job_id | String | 直播任务ID。 |
rtc_room_info | RTCRoomInfoList object | RTC房间信息。 |
live_event_report_url | String | 直播事件上报地址。用户将自行获取的直播间事件上报到此地址,用于触发智能互动,自动回复话术。 |
live_event_report_config | LiveEventReportConfig object | 直播事件上报配置 |
live_event_callback_config | LiveEventCallBackConfig object | 直播事件HTTPS回调通知配置 |
live_warning_info | Array of LiveWarningItem objects | 开播风险告警列表。 |
limit_duration | Integer | 参数解释: 配置的最大直播时长。单位小时。 0 为不限制。 约束限制: 停止直播逻辑配置为立即停止则直播停止误差在5分钟之内。其他逻辑则加上处理时长。 默认取值: 不设置则表示不限时。 取值范围: 0~168 |
参数 | 参数类型 | 描述 |
|---|---|---|
app_id | String | RTC应用ID。 |
room_id | String | RTC房间ID。 |
users | Array of RTCUserInfo objects | 加入RTC房间用户信息。 |
参数 | 参数类型 | 描述 |
|---|---|---|
user_type | String | 用户类型。 |
user_id | String | RTC用户ID。 |
signature | String | RTC鉴权token。 |
ctime | Long | 有效期。时间戳,单位:秒。 取值范围: 0~4294967295 |
参数 | 参数类型 | 描述 |
|---|---|---|
live_event_report_url | String | 直播事件上报地址。用户将自行获取的直播间事件上报到此地址,用于触发智能互动,自动回复话术。 |
auth_key | String | 直播事件上报认证key。请求直播事件上报地址时,把auth_key放到请求头域中。如"auth_key:50fa6bb8aa2b3f88xxxx..." |
expires_time | Long | 直播事件url上报过期时间。请求直播事件上报地址时,把expires_time放到请求头域中。如"expires_time:1757464200000" 取值范围: 0~4102415999000 |
状态码:400
参数 | 参数类型 | 描述 |
|---|---|---|
error_code | String | 错误码。 |
error_msg | String | 错误描述。 |
状态码:401
参数 | 参数类型 | 描述 |
|---|---|---|
error_code | String | 错误码。 |
error_msg | String | 错误描述。 |
状态码:500
参数 | 参数类型 | 描述 |
|---|---|---|
error_code | String | 错误码。 |
error_msg | String | 错误描述。 |
请求示例
POST https://{endpoint}/v1/70b76xxxxxx34253880af501cdxxxxxx/smart-live-rooms/24bad716-87b1-45e5-8912-6102f7693265/smart-live-jobs
{
"output_urls" : [ "rtmp://vfxpush.hwcloudvr.cn/live/lysa" ]
} 响应示例
状态码:202
成功。
{
"job_id" : "26f06524-4f75-4b3a-a853-b649a21aaf66"
} 状态码:400
请求传参异常,包含错误码及对应描述。
{
"error_code" : "MSS.00000003",
"error_msg" : "Invalid parameter"
} 状态码:401
未鉴权或鉴权失败。
{
"error_code" : "MSS.00000001",
"error_msg" : "Unauthorized"
} 状态码:500
内部服务错误。
{
"error_code" : "MSS.00000004",
"error_msg" : "Internal Error"
} 状态码
状态码 | 描述 |
|---|---|
202 | 成功。 |
400 | 请求传参异常,包含错误码及对应描述。 |
401 | 未鉴权或鉴权失败。 |
500 | 内部服务错误。 |
错误码
请参见错误码。

