更新时间:2024-12-12 GMT+08:00

创建智能直播间

功能介绍

该接口用于创建智能直播间。

调用方法

请参见如何调用API

URI

POST /v1/{project_id}/smart-live-rooms

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID,获取方法请参考获取项目ID

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

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。不允许输入中文。

表3 请求Body参数

参数

是否必选

参数类型

描述

room_name

String

参数解释

直播间名称。

约束限制

不涉及。

取值范围

字符长度1-256位。

默认取值

不涉及。

room_description

String

参数解释

直播间描述。

约束限制

不涉及。

取值范围

字符长度0-1024位。

默认取值

不涉及。

room_type

String

参数解释

直播间类型。

约束限制

不涉及。

取值范围

  • NORMAL:普通直播间,直播间一直存在,可以反复开播

  • TEMP:临时直播间,直播任务结束后自动清理直播间。

  • TEMPLATE:直播间模板。

默认取值:

NORMAL

scene_scripts

Array of LiveVideoScriptInfo objects

默认直播剧本列表。

interaction_config

LiveRoomInteractionConfig object

互动配置

interaction_rules

Array of LiveRoomInteractionRuleInfo objects

互动规则列表

play_policy

PlayPolicy object

剧本播放策略

video_config

VideoConfig object

视频输出配置。

output_urls

Array of strings

参数解释

RTMP视频推流第三方直播平台地址。

说明:

直播过程中刷新地址,需要调用COMMAND命令REFRESH_OUTPUT_URL。

约束限制

不涉及

取值范围

当前仅支持一条RTMP出流地址。

默认取值

不涉及。

stream_keys

Array of strings

参数解释

RTMP视频推流第三方直播平台流密钥,与推流地址对应。

说明:

直播过程中刷新地址,需要调用COMMAND命令REFRESH_OUTPUT_URL。

约束限制

不涉及

取值范围

当前仅支持一条RTMP出流地址。

默认取值

不涉及。

backup_model_asset_ids

Array of strings

参数解释

主播轮换时备选主播数字人资产ID(仅形象资产,不包含声音)。

约束限制

不涉及

取值范围

当前最大支持5个备选主播。

数字人资产ID,字符长度0-64位。

默认取值

不涉及

live_event_callback_config

LiveRoomEventCallBackConfig object

rtc_callback_config

RTCLiveEventCallBackConfig object

RTC回调事件配置。兼容处理,未携带配置则默认订阅LIVE_PROGRESS

review_config

ReviewConfig object

内容审核配置

shared_config

SharedConfig object

共享配置

view_mode

String

参数解释

横竖屏类型。

约束限制

用户无需填写,通过video_config中分辨率判断

取值范围

  • LANDSCAPE:横屏。

  • VERTICAL: 竖屏。

默认取值:

VERTICAL

co_streamer_config

CoStreamerConfig object

助播配置

priv_data

String

参数解释

匹配值私有数据,用户填写,原样带回。

约束限制

不涉及

取值范围

字符长度0-8192

默认取值

不涉及。

relation_live_platform_info

PlatformLiveInfo object

平台直播信息

表4 LiveVideoScriptInfo

参数

是否必选

参数类型

描述

script_id

String

参数解释

剧本ID。

约束限制

该字段无需填写。

取值范围

字符长度1-64位。

默认取值

不涉及。

script_name

String

参数解释

剧本名称。

约束限制

该字段必须填写。

取值范围

字符长度1-256位。

默认取值

不涉及。

script_description

String

参数解释

剧本描述。

约束限制

该字段无需填写。

取值范围

字符长度0-1024位。

默认取值

不涉及。

dh_id

String

参数解释

数字人ID。对应形象和音色组合。

约束限制

该字段暂未启用,无需填写。

取值范围

字符长度0-64位。

默认取值

不涉及。

model_asset_id

String

参数解释

数字人模型资产ID,可以从资产库中查询。

约束限制

不涉及

取值范围

字符长度0-64位。

默认取值

不涉及

voice_config

VoiceConfig object

语音配置参数。

background_config

Array of BackgroundConfigInfo objects

背景配置。

layer_config

Array of LayerConfig objects

图层配置。

shoot_scripts

Array of LiveShootScriptItem objects

拍摄脚本列表。

表5 BackgroundConfigInfo

参数

是否必选

参数类型

描述

background_type

String

参数解释

背景类型。

约束限制

不涉及。

取值范围

  • IMAGE:图片背景,指定图片用作分身数字人背景。

  • COLOR:纯色背景,指定颜色RGB值作为分身数字人背景。

默认取值

不涉及

background_config

String

参数解释

背景文件的URL。

约束限制

  • 仅直播支持外部URL,其他业务通过资产库查询获取,不支持外部URL。

  • background_type=IMAGE时需要填写。

取值范围

字符长度1-2048位

默认取值

不涉及。

background_color_config

String

参数解释

纯色背景的RGB颜色值。

约束限制

background_type=COLOR时需要填写。

取值范围

字符长度0-16位

默认取值:

#FFFFFF

background_asset_id

String

参数解释

背景资产ID。

说明:

背景是背景图片时,填图片资产ID。

约束限制

不涉及

取值范围

字符长度0-64位

默认取值

不涉及

表6 LayerConfig

参数

是否必选

参数类型

描述

layer_type

String

参数解释

图层类型。

约束限制

不涉及。

取值范围

  • HUMAN: 人物图层

  • IMAGE: 素材图片图层

  • VIDEO: 素材视频图层

  • TEXT: 素材文字图层

默认取值

不涉及

asset_id

String

参数解释

图层所需资产的资产id,外部资产信息无需填写。

约束限制

不涉及。

取值范围

字符长度0-64位

默认取值

不涉及

group_id

String

参数解释

多场景素材编组。同一group_id的素材,在应用全局时共享位置信息。

约束限制

不涉及。

取值范围

字符长度0-64位

默认取值

不涉及

position

LayerPositionConfig object

图层位置配置。

size

LayerSizeConfig object

图层大小配置。

image_config

ImageLayerConfig object

素材图片图层配置。

video_config

VideoLayerConfig object

素材视频图层配置。

text_config

TextLayerConfig object

素材文字图层配置。

表7 LayerPositionConfig

参数

是否必选

参数类型

描述

dx

Integer

参数解释

图层左上角像素点的X轴位置值(画布左上角坐标是0x0)。

横屏(16:9)画布像素为1920x1080;竖屏(9:16)画布像素为1080x1920。

约束限制

该值为相对于画布的像素值,仅表示布局位置关系,与输出画面分辨率无关。

取值范围:

-1920-3840

默认取值:

0

dy

Integer

参数解释

图层图片左上角像素点的Y轴位置值(画布左上角坐标是0x0)。

横屏(16:9)画布像素为1920x1080;竖屏(9:16)画布像素为1080x1920。

约束限制

该值为相对于画布的像素值,仅表示布局位置关系,与输出画面分辨率无关。

取值范围:

-1920-3840

默认取值:

0

layer_index

Integer

参数解释

图片、视频、人物图的层顺序。

说明:

图层顺序为从1开始的整数,底层图层顺序是1,往上依次增加。

约束限制

如果出现重复则重复图层叠加关系随机。

取值范围:

1-100

默认取值:

100

表8 LayerSizeConfig

参数

是否必选

参数类型

描述

width

Integer

参数解释

图层图片宽度像素值(相对画布大小)。

横屏(16:9)画布像素为1920x1080;竖屏(9:16)画布像素为1080x1920。

约束限制

该值为相对于画布的像素值,仅表示布局位置关系,与输出画面分辨率无关。

取值范围:

1-7680

height

Integer

参数解释

图层图片高度像素值(相对画布大小)。

横屏(16:9)画布像素为1920x1080;竖屏(9:16)画布像素为1080x1920。

约束限制

该值为相对于画布的像素值,仅表示布局位置关系,与输出画面分辨率无关。|

取值范围:

1-7680

表9 ImageLayerConfig

参数

是否必选

参数类型

描述

image_url

String

参数解释

图片文件的URL。

约束限制

  • 仅直播支持外部URL,其他业务通过资产库查询获取,不支持外部URL。

    取值范围

    字符长度1-2048位。

    默认取值

    不涉及

表10 VideoLayerConfig

参数

是否必选

参数类型

描述

video_url

String

参数解释

视频文件的URL。

约束限制

  • 仅直播支持外部URL,其他业务通过资产库查询获取,不支持外部URL。

    取值范围

    字符长度1-2048位。

    默认取值

    不涉及。

video_cover_url

String

参数解释

视频封面文件的URL。

约束限制

  • 仅直播支持外部URL,其他业务通过资产库查询获取,不支持外部URL。

    取值范围

    字符长度1-2048位。

    默认取值

    不涉及。

loop_count

Integer

参数解释

循环播放视频次数。

特殊取值:

  • 0:表示不播放

  • -1:表示持续循环播放

约束限制

不涉及。

取值范围:

-1-100

默认取值:

-1

表11 TextLayerConfig

参数

是否必选

参数类型

描述

text_context

String

参数解释

文字图层的文本,内容需做Base64编码。

示例:若想添加文字水印“测试文字水印”,那么text_context的值为:5rWL6K+V5paH5a2X5rC05Y2w

约束限制

不涉及。

取值范围

字符长度0-1024位。

默认取值

不涉及。

font_name

String

字体。当前支持的字体请参考服务支持的字体

约束限制

不涉及。

取值范围

字符长度0-64位

默认取值:

HarmonyOS_Sans_SC_Black

font_size

Integer

参数解释

字体大小(像素)。接口的取值范围为0-120,实际业务使用的取值范围要求为4-120,请以业务实际使用要求为准。

约束限制

不涉及。

取值范围:

0-120

默认取值:

16

font_color

String

参数解释

字体颜色。RGB颜色值。

约束限制

不涉及。

取值范围

字符长度0-16位

默认取值:

#FFFFFF

表12 LiveShootScriptItem

参数

是否必选

参数类型

描述

sequence_no

Integer

参数解释

剧本序号。

约束限制

不涉及

取值范围:

0-2147483647

title

String

参数解释

段落标题。

约束限制

不涉及

取值范围

字符长度0-256位。

默认取值

不涉及。

text_config

TextConfig object

话术配置。

audio_config

LiveAudioConfig object

直播音频配置

relation_product

RelationProductInfo object

关联商品

表13 TextConfig

参数

是否必选

参数类型

描述

text

String

参数解释

台词脚本。支持两种模式,纯文本模式和标签模式。

  • 纯文本模式:使用方法,如“大家好,我是人工智大家,是个虚拟主播”。

  • 标签模式:SSML标签的详细定义请参考文本驱动SSML定义

约束限制

不含SSML标签字符数最长10000个字符。

取值范围

字符长度0-131072位。

默认取值

不涉及。

表14 LiveAudioConfig

参数

是否必选

参数类型

描述

asset_id

String

参数解释

插入音频资产的资产id,外部资产信息无需填写。若填写,可以从资产库中查询。

约束限制

不涉及

取值范围

字符长度0-64位。

默认取值

不涉及。

audio_url

String

参数解释

音频URL。

约束限制

仅支持MP3格式,大小<100MB。输出会自动转化为单声道16KHZ采样。

取值范围

字符长度0-2048位。

默认取值

不涉及。

subtitle_url

String

参数解释

音频对应的字幕文件URL。

约束限制

仅SRT格式,大小<1MB。

取值范围

字符长度0-2048位。

默认取值

不涉及。

表15 RelationProductInfo

参数

是否必选

参数类型

描述

product_id

String

关联商品ID。如果配置,则段落切换回调中会携带该信息。美团平台对应goodsId

product_title

String

关联商品标题/名称。如果配置,则段落切换回调中会携带该信息。美团平台对应goodsTitle

表16 LiveRoomInteractionConfig

参数

是否必选

参数类型

描述

play_type

String

播放类型。

  • APPEND:追加,放置在场景播放队列尾部

  • INSERT: 插入,在两个音频文件,或者文本句末添加。

  • PLAY_NOW : 立即插入,收到指令后,立即播放,无需等待句末。

默认取值:

INSERT

ignore_current_sentence

Boolean

忽略互动回复中断句子后半句不再播放。用于立即中断场景。默认不忽略。

默认取值:

false

表17 LiveRoomInteractionRuleInfo

参数

是否必选

参数类型

描述

rule_index

String

参数解释

规则索引。用于触发规则时索引具体规则。

约束限制

无需用户填写。

取值范围

字符0-64位

默认取值

不涉及。

rule_name

String

参数解释

规则名称。

约束限制

不涉及。

取值范围

字符0-256位

默认取值

不涉及。

enabled

Boolean

参数解释

是否启用。

约束限制

不涉及。

取值范围

  • true:启用

  • fasle:不启用

默认取值

true

event_type

Integer

参数解释

规则匹配直播事件类型。接口的取值范围[0,100],实际业务取值如下所示:

  • 1:弹幕事件

  • 2:用户入场事件

  • 3:用户点赞事件

  • 4:用户送礼事件

  • 10: 预置话术事件

请以实际业务取值为准。

说明:
  • 1,2,3,4:与LiveEventReport中的event.type对应。

  • 10:匹配预置剧本

约束限制

不涉及。

默认取值

不涉及

取值范围:

0-100

hit_condition

HitCondition object

规则命中的条件

trigger

TriggerProcess object

规则命中后处理

review_config

ReviewConfig object

内容审核配置

group_id

String

参数解释

互动规则库ID。从互动库导入时携带互动库ID。

约束限制

不涉及。

取值范围

字符长度1-64位。

默认取值

不涉及。

group_name

String

参数解释

互动规则库名称。从互动库导入时携带互动库名称。

约束限制

不涉及。

取值范围

字符长度1-256位。

默认取值

不涉及。

enabled_scenes

Array of strings

参数解释

规则启用场景。启用部分场景时填写。如果不填写则适用所有场景。

约束限制

不涉及。

取值范围

对应直播间场景列表,最大100个场景,这边也对应100个。

条目填写场景名称,字符长度1-256。

默认取值

不涉及。

表18 HitCondition

参数

是否必选

参数类型

描述

relation

String

参数解释

条件关系。对于多个条件的逻辑运算关系。

约束限制

不涉及。

取值范围

  • AND:表示多个条件同时满足。

  • OR:表示多个条件满足其一即可。

  • RESERVED:兜底回复不会去判断其他命中条件。

默认取值

不涉及。

priority

Integer

参数解释

优先级,数值越低优先级越高;取值0-999,默认值为500,为可选值

约束限制

不涉及

取值范围:

0-999

默认取值:

500

tags

Array of HitConditionTag objects

匹配关系配置

表19 HitConditionTag

参数

是否必选

参数类型

描述

tag

String

参数解释

事件内容关键字段

说明:
  • event_type为1,2,3,4:与LiveEventReport中event.content中反序列化后的JSON字段对应。如:弹幕事件上报事件。

    {

    "timestamp": 1694481224245,

    "type": 1,

    "content": "{"user":{"userId":"2027271526","name":"","level":17,"badge":"","badgeLevel":0},"content":""}"

    }

    匹配弹幕内容,填写content;匹配用户平台等级,填写level。

  • 10:固定填写content即可。

约束限制

不涉及

取值范围

字符长度0-256位

默认取值

不涉及

operation

String

参数解释

字段取值处理

约束限制

不涉及

取值范围

  • SUM:累计

  • AVG:平均

  • COUNT:计数

  • NONE:无处理

默认取值:

NONE

match

String

参数解释

匹配类型。关键词匹配建议使用REGEX。

约束限制

不涉及。

取值范围

  • EQUAL: 完全相等

  • REGEX:正则匹配

  • MATH_GT:数值大于

  • MATH_GE:数值大于等于

  • MATH_LT:数值小于

  • MATH_LE:数值小于等于

  • MATH_EQ:数值相等

默认取值

不涉及

value

String

参数解释

匹配值。

约束限制

不涉及

取值范围

字符长度0-1024

默认取值

不涉及。

表20 TriggerProcess

参数

是否必选

参数类型

描述

time_window

Integer

参数解释

处理抑制时长。单位秒。

  • -1:表示整场直播仅触发一次。

  • 0:表示无抑制,每次都触发。

  • 其他值n:表示n秒内仅触发一次。

约束限制

不涉及

默认取值

不涉及

取值范围:

-1-7200

reply_mode

String

参数解释

回复类型。

约束限制

不涉及

取值范围

  • SYSTEM_REPLY:系统自动回复预先设置的话术。

  • CALLBACK:回调给其他服务,携带设置的话术。

  • SHOW_LAYER:仅显示叠加图层,不影响话术。

  • INTELLIGENT_REPLY:使用配置的大模型生成回复话术。

默认取值

不涉及

layer_config

SmartLayerConfig object

智能图层配置。

extra_layer_config

SmartLayerConfig object

额外图层,用于有产品同时需要显示动态文本场景,配置第二图层使用。

reply_texts

Array of strings

参数解释

回复话术集。

约束限制

不涉及

取值范围

最大支持5条预置话术。

单条话术字符长度0-1024位。

默认取值

不涉及

reply_audios

Array of ReplyAudioInfo objects

参数解释

回复音频集。填写audio_url。

约束限制

不涉及

取值范围

最大支持5条预置音频。

默认取值

不涉及

reply_order

String

参数解释

回复话术选择次序。

约束限制

不涉及

取值范围

  • RANDOM:随机

  • ORDER:顺序循环

默认取值

不涉及

reply_role

String

参数解释

回复角色。

约束限制

不涉及

取值范围

  • STREAMER:主播

  • CO_STREAMER:助播,仅声音。

默认取值:

STREAMER

robot_id

String

参数解释

机器人ID。

约束限制

reply_mode为INTELLIGENT_REPLY时必填,智能交互配置的大模型机器人ID。

获取方法请参考创建应用

取值范围

字符长度0-64位。

默认取值

不涉及

play_type

String

回复播放类型。

  • APPEND:追加,放置在场景播放队列尾部

  • INSERT: 插入,在两个音频文件,或者文本句末添加。

  • PLAY_NOW : 立即插入,收到指令后,立即播放,无需等待句末。

默认取值:

PLAY_NOW

表21 SmartLayerConfig

参数

是否必选

参数类型

描述

layer_type

String

图层类型。

  • IMAGE: 素材图片图层

  • VIDEO: 素材视频图层

  • TEXT: 文本图层

asset_id

String

图层所需资产的资产id,外部资产信息无需填写

position

LayerPositionConfig object

图层位置配置。

size

LayerSizeConfig object

图层大小配置。

image_config

SmartImageLayerConfig object

素材图片图层配置。

video_config

SmartVideoLayerConfig object

素材视频图层配置。

text_config

SmartTextLayerConfig object

素材视频图层配置。

表22 SmartImageLayerConfig

参数

是否必选

参数类型

描述

image_url

String

图片文件的URL。

display_duration

Integer

参数解释

图片显示时长,单位s。

显示时长规则为,若携带reply_texts、reply_audios,则与播放语音内容时长保持一致。若未携带,则与匹配的关键词语音内容时长保持一致。

取值范围:

0-3600

默认取值:

0

表23 SmartVideoLayerConfig

参数

是否必选

参数类型

描述

video_url

String

视频文件的URL。

video_cover_url

String

视频封面文件的URL。

display_duration

Integer

参数解释

图片显示时长,单位s。

显示时长规则为,若携带reply_texts、reply_audios,则与播放语音内容时长保持一致。若未携带,则与匹配的关键词语音内容时长保持一致。

取值范围:

0-3600

默认取值:

0

表24 SmartTextLayerConfig

参数

是否必选

参数类型

描述

text_type

String

参数解释

文本类型。

  • DYNAMIC:动态文本,需要进行关键字替换。

  • STATIC:静态文本。

默认取值:

DYNAMIC

text_context

String

文本。

font_name

String

参数解释

字体。当前支持的字体:

  • HarmonyOS_Sans_SC_Black:鸿蒙粗体

  • HarmonyOS_Sans_SC_Regular:鸿蒙常规

  • HarmonyOS_Sans_SC_Thin:鸿蒙细体

  • fzyouh:方正瘦体

默认取值:

HarmonyOS_Sans_SC_Black

font_size

Integer

参数解释

字体大小(像素)。

业务取值范围:[4, 120],请以业务取值范围为准。

取值范围:

0-120

默认取值:

16

font_color

String

参数解释

字体颜色。RGB颜色值。

默认取值:

#FFFFFF

display_duration

Integer

参数解释

文本显示时长,单位s。

显示时长规则为,若携带reply_texts、reply_audios,则与播放语音内容时长保持一致;若未携带,则与匹配的关键词语音内容时长保持一致。

取值范围:

0-3600

默认取值:

0

表25 ReplyAudioInfo

参数

是否必选

参数类型

描述

audio_url

String

音频URL

audio_name

String

音频名

表26 PlayPolicy

参数

是否必选

参数类型

描述

repeat_count

Integer

参数解释

剧本重复播放次数。

  • -1:表示持续重复,直至人工停止。

  • 0:表示不重复,仅执行一次。

  • 其他值n:实际运行次数为n+1次。

约束限制

不涉及。

取值范围:

-1-100

默认取值:

0

auto_play_script

Boolean

参数解释

是否自动播放剧本。

约束限制

不涉及。

取值范围

  • true:服务完成任务初始化后,自动播放剧本。

  • false:服务完成任务初始化后,等待信号后再开始播放剧本。

默认取值:

true

play_mode

String

参数解释

驱动方式。

约束限制

不涉及。

取值范围

  • TEXT:文本驱动,即通过TTS合成语音。

  • AUDIO:语音驱动。

  • NO_PRESET:无预置剧本,人工控制模式。

默认取值:

TEXT

random_play_mode

String

参数解释

随机播报模式。

约束限制

从第二轮播报开始随机。

取值范围

  • NONE:不启动随机播报。

  • SCENE:按场景随机播报。场景内段落按顺序播报。

  • SCRIPT_ITEM:按段落随机播报。场景按顺序播报。

  • SCENE_AND_SCRIPT_ITEM:场景和段落都随机播报。

默认取值:

SCRIPT_ITEM

need_independent_capture_client

Boolean

参数解释

是否需要独立采集端。用于客户端播放与命令分离场景。

约束限制

不涉及。

取值范围

  • true:分配CAPTURE、PLAYER两个RTC用户。

  • fasle:仅分配PLAYER一个RTC用户。

默认取值:

false

表27 VideoConfig

参数

是否必选

参数类型

描述

clip_mode

String

参数解释

输出视频的剪辑方式。

约束限制

不涉及。

取值范围

  • RESIZE:视频缩放。

  • CROP:视频裁剪。

默认取值:

RESIZE

codec

String

参数解释

视频编码格式及视频文件格式。

约束限制

仅分身数字人视频制作支持VP8编码。

取值范围

  • H264:h264编码,输出mp4文件。

  • VP8:vp8编码,输出webm文件。

默认取值

不涉及

bitrate

Integer

参数解释

输出平均码率。单位:kbps。

约束限制

  • 分身数字人视频制作采用质量优先,可能会超过设置的码率。

  • 分身数字人直播码率范围[1000, 8000]。

默认取值

不涉及

取值范围:

40-30000

width

Integer

参数解释

视频宽度。单位:像素。

约束限制

  • clip_mode=RESIZE时,当前支持1920x1080、1080x1920、1280x720、720x1280、3840x2160、2160x3840六种分辨率。4K分辨率视频需要分身数字人模型支持4K的情况下才能使用。

  • clip_mode=CROP,裁剪后视频,(dx,dy)为原点,保留视频像宽度为width。

  • 分身数字人直播目前只支持1080x1920、1920x1080。

默认取值

不涉及

取值范围:

0-3840

height

Integer

参数解释

视频高度。

单位:像素。

约束限制

  • clip_mode=RESIZE时,当前支持1920x1080、1080x1920、1280x720、720x1280、3840x2160、2160x3840六种分辨率分辨率。

  • clip_mode=CROP,裁剪后视频,(dx,dy)为原点,保留视频像高度为height。

  • 分身数字人直播目前只支持1080x1920、1920x1080。

默认取值

不涉及

取值范围:

0-3840

frame_rate

String

参数解释

帧率。单位:FPS。

约束限制

分身数字人视频固定25FPS。

默认取值:

25

is_subtitle_enable

Boolean

参数解释

输出的视频是否带字幕。

约束限制

分身数字人直播暂时不支持字幕。

取值范围

  • true: 打开字幕

  • false: 关闭字幕

默认取值:

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

参数解释

视频是否开启超分。

约束限制

仅分身数字人视频制作支持。

取值范围

  • true: 开启

  • false: 不开启

默认取值:

false

is_end_at_first_frame

Boolean

参数解释

视频结束帧是否跟起始帧相同。需要多个数字人视频无缝拼接时设置成true。

约束限制

仅分身数字人视频制作支持。

取值范围

  • true: 开启

  • false: 不开启

默认取值:

false

表28 SubtitleConfig

参数

是否必选

参数类型

描述

dx

Integer

参数解释

字幕框左下角像素点坐标。

约束限制

不涉及。

默认取值

不涉及。

取值范围:

0-1920

dy

Integer

参数解释

字幕框左下角像素点坐标。

约束限制

不涉及。

默认取值

不涉及。

取值范围:

0-1920

font_name

String

参数解释

字体。当前支持的字体请参考服务支持的字体

约束限制

不涉及。

取值范围

字符长度0-64位

默认取值:

HarmonyOS_Sans_SC_Black

font_size

Integer

参数解释

字体大小。接口的取值范围为0-120,实际业务使用的取值范围要求为24-120,请以业务实际使用要求为准。

约束限制

不涉及。

取值范围:

0-120

默认取值:

54

h

Integer

参数解释

字幕框高度。

约束限制

参数h用于方便前端计算字幕框左上角坐标,后台不使用该参数。

取值范围:

0-1920

w

Integer

参数解释

字幕框宽度。

约束限制

  • 字幕框宽度固定为屏幕宽度的80%

  • 参数w用于方便前端计算字幕框左上角坐标,后台不使用该参数

取值范围:

0-1920

表29 LiveRoomEventCallBackConfig

参数

是否必选

参数类型

描述

live_event_type_callback_url

String

参数解释

直播事件回调地址,为https地址。

约束限制

不涉及。

取值范围

字符长度0-2048位。

默认取值

不涉及。

auth_type

String

参数解释

认证类型。

约束限制

不涉及。

取值范围

  • NONE:URL中自带认证。

  • MSS_A:HMACSHA256签名模式,在URL中追加参数hwSecret、hwTime。

    取值方式:hwSecret=hmac_sha256(Key, URI(live_event_callback_url)+ hwTime)&hwTime=hex(timestamp)

  • MSS_A_HEAD:HMACSHA256签名模式,参数hwSecret、hwTime放置在Head中。

    取值方式:x-hw-mss-secret=hmac_sha256(Key, URI(live_event_callback_url)+ hwTime)

    x-hw-mss-time=hex(timestamp)

  • MEITUAN_DEFAULT:仅用于美团平台调用回调使用。

默认取值:

NONE

key

String

参数解释

密钥Key。

约束限制

不涉及。

取值范围

字符长度0-32位。

默认取值

不涉及。

callback_event_type

Array of strings

参数解释

回调的直播事件类型列表。

约束限制

不涉及。

取值范围

当前仅支持如下取值:

  • SHOOT_SCRIPT_SWITCH:剧本段落切换事件。

  • RTMP_STREAM_STATE_CHANGE:RTMP链接发生变化回调事件。

  • REPLY_COMMAND_FINISH:回复播放完成通知。

回调事件结构体定义:

  • event_type:事件类型。

  • message:事件描述。

    • SHOOT_SCRIPT_SWITCH事件回调定义如下:

      {
        "event_type":  "SHOOT_SCRIPT_SWITCH",
        "message":"{\"room_id\":\"26f065244f754b3aa853b649a21aaf66\",\"job_id\":\"e87104f76d7546ce8a46ac6b04c49c3c\",\"scene_script_name\":\"商品1\",\"shoot_script_sequence_no\":\"2\",\"shoot_script_title\":\"段落2\"}"
      }
    • RTMP_STREAM_STATE_CHANGE回调定义如下:

      {
        "event_type":  "RTMP_STREAM_STATE_CHANGE",
        "message":"{\"room_id\":\"26f065244f754b3aa853b649a21aaf66\",\"job_id\":\"e87104f76d7546ce8a46ac6b04c49c3c\",\"output_url\":\"rtmp://xxx/xx/xx\",\"stream_key\":\"xxxxx\",\"state\":\"CONNECTED\"}"
      }

      其中state取值:CONNECTING链路连接中;CONNECTED链路已连接;DISCONNECTED链路已断开,RECONNECTING链路重连中;END联络不再重连,链路已结束。

    • REPLY_COMMAND_FINISH回调定义如下:

      {
        "event_type":  "REPLY_COMMAND_FINISH",
        "message":"{\"room_id\":\"26f065244f754b3aa853b649a21aaf66\",\"job_id\":\"e87104f76d7546ce8a46ac6b04c49c3c\",\"reply_id\":\"e87104f76d7546ce8a46ac6b04c49c3c"}"
      }

is_inheritance_platform_callback

Boolean

参数解释

是否继承直播平台回调配置,默认true

约束限制

不涉及。

取值范围

true:继承直播平台callback配置

false:不继承直播平台callback配置

默认取值

false

默认取值:

false

表30 RTCLiveEventCallBackConfig

参数

是否必选

参数类型

描述

rtc_callback_event_type

Array of strings

RTC回调的直播事件类型列表。

当前仅支持如下取值:

  • LIVE_PROGRESS:直播剧本进度通知。

  • REPLY_COMMAND_FINISH:回复播放完成通知。

回调事件结构体定义:

  • message_type:消息类型。

  • data:消息描述。

    • LIVE_PROGRESS事件回调定义如下:

      {
          "message_type": "live_progress_notify",
          "data": {
              "script_name": "场景一",
              "shoot_script_sequence_no": 2,
              "shoot_script_title": "引导语",
              "offset": "247",
              "reply_id": "e87104f76d7546ce8a46ac6b04c49c3c"
          }
      }
    • REPLY_COMMAND_FINISH回调定义如下:

      {
        "message_type": "reply_command_finish_notify",
        "data":"{
          "reply_id":"e87104f76d7546ce8a46ac6b04c49c3c"
        }"
      }
表31 ReviewConfig

参数

是否必选

参数类型

描述

no_need_review

Boolean

免审核。 目前仅白名单用户可使用此参数,非白名单用户跟随系统策略审核。

表32 SharedConfig

参数

是否必选

参数类型

描述

shared_type

String

参数解释

共享类型。

约束限制

该配置仅用于模板

取值范围

  • PRIVATE:私有,仅本租户可访问。

  • PUBLIC:公开,所有租户可访问。当前仅提供系统资产可公开访问。

  • SHARED:共享,指定租户可访问。拥有者指定租户可访问。

默认取值

不涉及。

shared_state

String

参数解释

共享状态。

约束限制

该配置仅用于shared_type为SHARED的模板。

取值范围

  • PUBLISHED:发布。模板可用。

  • DRAFT:草稿。编辑态,仅拥有者可访问。

  • REVIEW:审核态。不可编辑,仅拥有者/审核人员可查看。

默认取值

不涉及。

expire_time

String

参数解释

共享过期时间。空表示永久不过期。

约束限制

该配置仅用于shared_type为SHARED的模板。

格式遵循:RFC 3339,示例“20210110T08:43:17Z”。

取值范围

字符长度0-20位

默认取值

不涉及。

allowed_project_ids

Array of strings

参数解释

允许访问本资产的租户列表。

约束限制

该配置仅用于shared_type为SHARED的模板。

取值范围

最大支持100个租户,重复的记录会被忽略。

租户ID填写project_id,字符长度1-64位。

默认取值

不涉及。

表33 CoStreamerConfig

参数

是否必选

参数类型

描述

voice_config

VoiceConfig object

语音配置参数。

streamer_action

String

参数解释

助播出声时主播行为设置。

约束限制

不涉及

取值范围

  • SILENCE:静默

  • VOLUME_DOWN:音量降低

默认取值

不涉及。

表34 VoiceConfig

参数

是否必选

参数类型

描述

voice_asset_id

String

参数解释

音色资产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

表35 PlatformLiveInfo

参数

是否必选

参数类型

描述

platform_id

String

直播平台ID。

live_id

String

直播ID。如果配置,则段落切换回调中会携带该信息。只能包含英文、数字、-、_。

美团对应liveId

响应参数

状态码: 200

表36 响应Header参数

参数

参数类型

描述

X-Request-Id

String

请求ID。

表37 响应Body参数

参数

参数类型

描述

room_id

String

直播间ID

状态码: 400

表38 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误描述。

状态码: 401

表39 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误描述。

状态码: 500

表40 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误描述。

请求示例

POST https://{endpoint}/v1/70b76xxxxxx34253880af501cdxxxxxx/smart-live-rooms

{
  "room_name" : "大自然的传说",
  "room_description" : "课件",
  "scene_scripts" : [ {
    "script_name" : "大自然的传说 一",
    "model_asset_id" : "a5d295cdb345c11bd9f36bc22ced3a7a",
    "voice_config" : {
      "voice_asset_id" : "a5d295cdb345c11bd9f36bc22ced3a7a"
    },
    "background_config" : [ {
      "background_type" : "IMAGE",
      "background_config" : "978f893e1de4553c183b7a805e6290f5"
    } ],
    "shoot_scripts" : [ {
      "sequence_no" : 1,
      "text_config" : {
        "text" : "大家好,我是云笙"
      }
    } ]
  } ],
  "live_event_callback_config" : {
    "live_event_type_callback_url" : "https://xxx/xxx/xxx?xxx=xxx",
    "auth_type" : "NONE",
    "callback_event_type" : [ "SHOOT_SCRIPT_SWITCH" ]
  }
}

响应示例

状态码: 200

成功。

{
  "room_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"
}

状态码

状态码

描述

200

成功。

400

请求传参异常,包含错误码及对应描述。

401

未鉴权或鉴权失败。

500

内部服务错误。

错误码

请参见错误码