# 平台能力

平台针对企业账户提供各项算法能力,包括:视频合成能力、人物形象模型生成能力、TTS个人音色模型生成能力、人物形象模型更新能力、视频人物换脸能力等。

# 功能介绍

# 视频合成

2D数字人视频合成服务为您提供输入选择2D数字人形象模型,添加文本或音频合成为2D虚拟数字人mp4/webm格式的视频,并且通过返回的视频链接下载视频内容。

  • 形象配置
    • 支持通过参数指定本次视频合成需要使用的2D数字人形象,系统提供若干个默认的2D数字人形象模型,供用户选择。具体可联系运营开通账号后查看。
  • 音色配置
    • 系统支持两种形式的音色配置
      • 上传录音文件,支持在线录音上传或者选择对应的音频文件上传,音频将会经过降噪处理后将原声用于最终合成的视频内容。
      • 上传文本+选择音色,支持通过参数指定本次视频合成需要使用的发音人音色,以及声音的语速、音调、音量调节,系统提供若干个默认的TTS个人音色模型,供用户选择,将使用指定的音色朗读对应的文本内容,最终将此音频用于视频合成。
  • 数字人驱动
    • 支持数字人表情、口型驱动。
  • 视频编码信息
    • 编码格式: H264
    • 帧率: 25FPS
  • 视频格式
    • 目前仅支持MP4视频格式,视频时长由合成视频的时候选择的内容决定。
  • 视频分辨率
    • 支持创建视频合成任务的时候指定产出视频的分辨率,建议选择范围为:480p、720p、1080p
  • 字幕
    • 支持根据用户输入的文字或语音内容生成与之相匹配的字幕文件
  • 自定义前景/背景/标题文字
    • 支持通过URL指定视频背景图,图片格式支持jpg、png两种格式
    • 支持通过URL指定视频前景图,图片格式支持jpg、png两种格式
    • 支持通过参数指定视频中标题文字内容的字体,字号,以及出现的位置
  • 自定义人物美颜效果
    • 支持通过参数调节人物美颜效果,包括:美白/磨皮/脸型调整/眼形调整/发际线调整/苹果肌调整/鼻子调整/下巴调整/嘴巴调整/人中调整/缩头/对比度/饱和度/清晰度/锐化程度调整等十余项参数调整功能,具体请参考参数说明 (opens new window),了解使用规则
  • 最大存储时间
    • PaaS平台支持7天在线存储,需要及时转存,7天后生成内容将无法下载。

# 视频合成时序图

Video Composite Process

# TTS个人音色模型生成

TTS个人音色模型生成服务可根据用户上传的真人采集或录制的语音素材文件通过算法训练产出发音效果与声音素材提供者一致的数字人TTS音色模型。为保证训练效果,训练音频时长不得短于5分钟,请在采集时遵照商汤数字人音色复制采集制作规范,内容包括环境要求、设备要求、发音要求、授权要求、朗读脚本,具体参考:采集规范 (opens new window)。PaaS平台支持7天在线存储,需要及时转存,7天后生成内容将无法下载。

# 人物形象模型生成

人物形象模型生成服务可根据用户上传的真人采集或录制的视频通过算法训练产出AI驱动效果与真人几乎无异的数字人人物形象模型。为了完美克隆人物形象,请在拍摄时遵照商汤数字人采集制作规范,内容包括视频、语音,用于 2D 数字人的训练和测试,具体参考:采集规范 (opens new window)。PaaS平台支持7天在线存储,需要及时转存,7天后生成内容将无法下载。

# 人物形象模型生成时序图

Human Model Process

# 人物形象模型更新

2D数字人人物形象模型更新服务可针对已经生成完成的人物形象模型进行更新,支持修改数字人训练动作片段。PaaS平台支持7天在线存储,需要及时转存,7天后生成内容将无法下载。

# 视频人物换脸(暂不支持)

视频人物换脸任务可以根据用户上传的视频内容和模板图片调用算法能力进行视频人物换脸处理,最终返回处理后的视频文件和缩略图供用户下载。PaaS平台支持7天在线存储,需要及时转存,7天后生成内容将无法下载。

# API 说明

用户调用平台全部API服务,皆需要访问服务接入点:aigc.softsugar.com,并在请求头中加上token信息。

# 创建视频合成任务

# 接口描述

根据用户上传的指定内容调用算法能力进行视频合成,最终返回mp4/webm格式的视频文件供用户下载。PaaS平台支持7天在线存储,需要及时转存,7天后生成内容将无法下载。

# 请求地址

POST /api/2dvh/v1/material/video/create

# 请求头

Content-Type: application/json

# 请求参数

字段 类型 必填 描述
param String True 创建视频合成任务需要传入正确的param信息,其中包括各类视频合成参数(该参数为json转义后的字符串),请参考下面的参数说明和 json 示例 (opens new window)示例效果 (opens new window)
videoName String True 视频名称
thumbnailUrl String False 缩略图url

# 请求样例

{

  "videoName": "xxx",

  "param": "{\"version\":\"0.0.4\",\"resolution\":[1080,1920],\"bit_rate\":16,\"frame_rate\":25,\"watermark\":{\"show\":true,\"content\":\"示例视频\"},\"digital_role\":{\"id\":3964,\"face_feature_id\":\"0401_chenying_s1\",\"name\":\"0401_chenying_s1\",\"url\":\"https://dwg-aigc-paas.oss-cn-hangzhou.aliyuncs.com/materials/77/0401_chenying_s1_20230427133135306.zip\",\"position\":{\"x\":0,\"y\":0},\"scale\":1.0},\"tts_config\":{\"id\":\"nina\",\"name\":\"Nina\",\"vendor_id\":3,\"language\":\"zh-CN\",\"pitch_offset\":0.0,\"speed_ratio\":1,\"volume\":100},\"tts_query\":{\"content\":\"丝绸之路是一条连接东西方的古老商路,在这条路上,东西方通过贸易和文化交流,促进了不同文明的不断融合。 历史上张骞出使西域,开启了最早的丝绸之路,从此丝绸之路上的商人一次次穿越沙漠和山脉进行通商往来。 中国的丝绸、瓷器、茶叶,以及印度的佛教、希腊的哲学等都在这条路上得到充分地传承和发展。\",\"ssml\":false},\"backgrounds\":[{\"type\":0,\"name\":\"背景\",\"url\":\"http://dwg-aigc-paas.oss-cn-hangzhou.aliyuncs.com/test/background.png\",\"rect\":[0,0,1080,1920],\"cycle\":false,\"start\":0,\"duration\":-1}],\"foregrounds\":[{\"type\":0,\"name\":\"前景\",\"url\":\"http://dwg-aigc-paas.oss-cn-hangzhou.aliyuncs.com/test/frontgroud.png\",\"rect\":[0,1359,1092,561],\"cycle\":false,\"start\":0,\"duration\":-1}],\"foreground-texts\":[{\"text\":\"丝绸之路介绍\",\"font_size\":20,\"font_family\":\"Noto Sans S Chinese Black\",\"position\":{\"x\":100,\"y\":200},\"rgba\":[100,200,100,100]}]}"

}

# 响应元素

字段 类型 必填 描述
code Integer True 0 - 成功, 其他 - 异常
message String True 异常详细信息
data Object False 任务id

# 响应样例

{

    "code": 0,

    "message": "success",

    "data": 1

}
# json参数说明
名称 类型 取值示例 必填 说明
version String "0.0.14" 视频合成json配置文件最新版本号
video_format String "mp4" 视频输出格式,取值为MP4或WEBM,如果没有该字段,默认为MP4
resolution Int Array [1080,1920] 视频分辨率,建议选择[480,854],[720,1280],[1080,1920]三种竖屏格式,人物模型分辨率为2K(1080 * 1920)和 4K(2160 * 3840),选择不同分辨率需要调整数字人形象比例以达到较好的效果,例如选择[1080,1920]分辨率,则建议 4K数字人形象scale 参数调整为0.5左右
bit_rate Float 8 视频码率(Mbps),最大值16,最小值1
frame_rate Integer 25 视频帧率,目前只支持25fps
watermark Object 视频水印
 show Boolean True 是否显示视频水印
 content String "测试 Test " 视频水印内容
invisible-watermark Object 视频隐藏水印,仅支持 mp4
 show Boolean True 是否开启视频隐藏水印
 content String "1234567890123456 " 隐藏水印文字 ,不可以用中文!仅限英文+数字,一共16个字符,如果不足16字符,后面会自动补0,如果超过16,会截取前16字符
digital role Object 包含内容如下
 id Integer 1 数字人id
 face_feature_id String "1" 数字人face feature id
 name String "小李" 数字人名称
 url String "https://xxx/role.zip" 数字人形象zip包
 position Object 包含内容如下 数字人形象图片的起始像素位置,以1080*1920分辨率大小画布的左上角为原点,向右为x方向,向下为y方向
  x Integer 0 x方向坐标值
  y Integer 0 y方向坐标值
 scale Float 1.0 数字人形象比例
 rotation Float 0.0 旋转角度,取值[0.0,360.0],画布坐标系Y轴的反方向为0度,顺时针方向的夹角为旋转角,旋转时以图片中心点为锚点
 volume Integer 0 数字人播报音量,大小取值范围0~100。注:最低版本要求:0.0.13。
 z_position Integer 0 图层顺序,各个 zposition 不可重复,数字越大显示越靠前。 注:最低版本要求:0.0.6(必须字段)。
 start_frame_index Integer 0 合成视频起始帧,取值范围为[1, N],如果输入参数范围不在范围内,直接返回错误。注:最低版本要求:0.0.14。精品数字人不建议设置该参数
tts_config Object 包含内容如下 tts配置。tts_query和audios必须存在其一,tts_query和audios都存在时,tts_query优先
 qid String 8wfZav:AEA_Z10Mqp9GCwDGMrz8xIzi3VScxNzUtLCh 填写此字段会覆盖 voiceid, languagevendor_id字段。
 id String "zh-CN-XiaoxuanNeural" 发音人id , 同 voiceID
 name String "晓萱" 发音人名称
 vendor_id Integer 4 供应商id ,即 vendor_id ,需要与使用的TTS音色模型信息保持一致
 language String "zh-CN" 语言码
 pitch_offset Float 0.0 音调,数值越大越尖锐,越低越低沉,支持范围 [-60, 60]
 speed_ratio Float 1 语速,数值越大语速越慢,支持范围 [0.5, 2]
 volume Integer 100 音量,数值越大声音越大,支持范围 [1, 400]
tts_query Object 包含内容如下 tts语音合成。tts_query和audios必须存在其一,tts_query和audios都存在时,tts_query优先
 content String "尊敬的观众朋友们,大家好!非常荣幸能够在这个美好的时刻与大家相聚,欢迎收看今天的节目。" 待合成语音的文本内容,字数不得少于10个字,所有语言的发音人都可以合成英文query;所有语言的发音人都可以合成自己语言的query;粤语、沪语等中文方言发音人可以合成中文query
 ssml Boolean false 是否使用ssml,开启后query可以使用USSML和SSML ,推荐使用USSML
audios Object Array 包含内容如下 音频驱动。tts_query和audios必须存在其一,tts_query和audios都存在时,tts_query优先
 url Object {"url":"https://xxx/audio.mp3"} 数组,支持多条mp3格式的驱动音频文件
subtitle Object 包含内容如下 字幕
 url String "https://xxx/subtitle.srt" 字幕文件列表。0.0.13及之前版本只解析此字段
 urls String Array ["https://xxx/subtitle.srt","https://xxx/subtitle.srt"] 0.0.14及之后版本优先解析此字段,如果此字段不存在,则解析url字段。
特殊情况说明:如果版本号大于等于0.0.14,audios中存在多个音频,此时仍然解析url字段,只显示一个字幕,这是正常case。
 scale Float 1.0 文字缩放比例,取值范围0~+∞,默认为1,原始参考尺寸为font_size。
 position Object 包含内容如下 字幕起始位置,以1080*1920分辨率大小画布的左上角为原点,向右为x方向,向下为y方向,默认位置为视频的下方,字幕效果呈现为居中对齐。注:最低版本要求:0.0.13。
  x Integer 0 x方向坐标值
  y Integer 0 y方向坐标值
 rgba Int Array [100,100,100,100] 字幕颜色,按照rgba形式传入,取值范围 0~255 【a通道暂不支持】
 font_size Integer 20 字幕字体大小设置
 font_family String "Noto Sans S Chinese Black" 字体名称,支持的字体见json支持字体列表
 stroke_width Float 2 描边宽度,取值范围0~+∞,默认为0,表示描边宽度。注:最低版本要求:0.0.10。
 stroke_rgba Int Array [100,100,100,100] 字幕描边颜色,按照rgba形式传入,取值范围 0~255 【a通道暂不支持】注:最低版本要求:0.0.10。
 background_rgba Int Array [100,100,100,100] 字幕背景(字体底色)颜色, 取值范围0~255。a通道为0时表示全透明。注:最低版本要求:0.0.10。
 opacity Float 0.5 字幕图层透明度, 取值范围0~1。0表示全透明,1表示不透明。注:最低版本要求:0.0.10。
 subtitle_max_len Integer 10 字幕最大切分长度,默认为 0,即不限长度,若未设置最大切分字数,设定字幕占用最大长度为画布宽度的80%,超出则自动折行。注:最低版本要求:0.0.10。
 subtitle_cut_by_punc Boolean True 是否按标点符号切分。注:最低版本要求:0.0.10。
 scale Float 1.0 字幕文字缩放比例,取值范围0~+∞,默认为1,原始参考尺寸为font_size
 rotation Float 0.0 旋转角度,取值[0.0,360.0],画布坐标系Y轴的反方向为0度,顺时针方向的夹角为旋转角,旋转时以图片中心点为锚点。注:最低版本要求:0.0.14。
backgrounds Object Array 包含内容如下 背景
 type Integer 0 0:图片,支持jpg、png格式;1:视频,支持mp4格式,帧率要求 25 以上,分辨率暂无要求,不同分辨率的视频按照短边撑满,视频等比例缩放形式处理
 name String "背景" 背景名称
 url String "https://xxx/bg.png" 背景文件url,如没设置背景图或视频,Webm格式展示黑色背景;Mp4格式展示灰色默认的frame的背景效果
 rect Int Array [0,0,1080,1920] 【暂不支持】 背景起始位置和大小,以1080*1920分辨率画布为参考,左上角为(0,0),当前不支持自定义,默认短边撑满,长边等比例缩放形式显示
 cycle Boolean false 针对视频有效,false:单次播放,true:循环播放
 start Integer 0 背景开始时间,以ms为单位
 duration Integer -1 背景持续时间,以ms为单位,-1为默认值,表示随视频一直存在
 volume Integer 0 背景视频音量,数值越大声音越大,支持范围 [0, 100],标准音量。注:最低版本要求:0.0.13。
background-musics Object Array 包含内容如下 背景音乐
 url String "https://xxx/bgm.mp3" 背景音乐url
 volume Integer 100 音量,数值越大声音越大,支持范围 [0, 100],标准音量100
 cycle Boolean True false:单次播放,true:循环播放
foregrounds Object Array 包含内容如下
 type Integer 0 0:图片,支持jpg、png格式;1:视频,支持mp4格式
 name String "前景"
 url String "https://xxx/fg.png" 前景文件url,图片支持png或jpg ,视频支持mp4格式
 rect Int Array [0,0,1080,1920] 起始位置和大小,以1080*1920分辨率画布为参考
 rotation Float 0.0 旋转角度,取值[0.0,360.0],画布坐标系Y轴的反方向为0度,顺时针方向的夹角为旋转角,旋转时以图片中心点为锚点
 cycle Boolean False 针对视频有效,false:单次播放,true:循环播放,前景视频单次播放完成后,如未达到指定持续时间节点,前景视频停留在最后一帧
 z_position Integer 2 图层顺序,各个 zposition 不可重复,数字越大显示越靠前。注:最低版本要求:0.0.6(必须字段)。
 start Integer 0 前景开始时间,以ms为单位
 duration Integer -1 前景持续时间,以ms为单位,-1为默认值,表示随视频一直存在
 volume Integer 0 前景视频音量,数值越大声音越大,支持范围 [0, 100],标准音量。注:最低版本要求:0.0.13。
foreground-texts Object Array 包含内容如下 前景文字
 text String "前景文字" 前景文字内容
 scale Float 1.0 文字缩放比例,取值范围0~+∞,默认为1,原始参考尺寸为font_size。
 position Object 包含内容如下 前景文字起始位置,以1080*1920分辨率大小画布的左上角为原点,向右为x方向,向下为y方向
  x Integer 0 x方向坐标值
  y Integer 0 y方向坐标值
 rgba Int Array [100,100,100,100] 前景文字颜色,按照rgba形式传入,取值范围 0~255 【a通道暂不支持】
 font_size Integer 20 前景文字字体大小设置
 font_family String "Noto Sans S Chinese Black" 字体名称,支持的字体见json支持字体列表
 stroke_width Float 2 描边宽度,取值范围0~+∞,默认为0,表示描边宽度
 stroke_rgba Int Array [100,100,100,100] 前景文字描边颜色,按照rgba形式传入,取值范围 0~255 【a通道暂不支持】
 background_rgba Int Array [100,100,100,100] 前景文字背景(字体底色)颜色, 取值范围0~255。a通道为0时表示全透明。注:最低版本要求:0.0.10。
 opacity Float 0.5 前景文字图层透明度, 取值范围0~1。0表示全透明,1表示不透明。注:最低版本要求:0.0.10。
 z_position Integer 2 图层顺序,各个 zposition 不可重复,数字越大显示越靠前。注:最低版本要求:0.0.8(必须字段)。
 rotation Float 0.0 旋转角度,取值[0.0,360.0],画布坐标系Y轴的反方向为0度,顺时针方向的夹角为旋转角,旋转时以图片中心点为锚点。注:最低版本要求:0.0.14。
title Object Array 包含内容如下 标题文字 ,其图层在数字人,背景,前景文字的上层。注:最低版本要求:0.0.10。
 text String "标题文字" 标题文字内容
 scale Float 1.0 文字缩放比例,取值范围0~+∞,默认为1,原始参考尺寸为font_size。
 position Object 包含内容如下 标题文字起始位置,以1080*1920分辨率大小画布的左上角为原点,向右为x方向,向下为y方向
  x Integer 0 x方向坐标值
  y Integer 0 y方向坐标值
 rgba Int Array [100,100,100,100] 标题文字颜色,按照rgba形式传入,取值范围 0~255 【a通道暂不支持】
 font_size Integer 20 标题文字字体大小设置。单位为px。
 font_family String "Noto Sans S Chinese Black" 字体名称,支持的字体见json支持字体列表
 stroke_rgba Int Array [100,100,100,100] 标题文字描边颜色,按照rgba形式传入,取值范围 0~255 【a通道暂不支持】
 stroke_width Float 2 描边宽度,取值范围0~+∞,默认为0,表示描边宽度
 background_rgba Int Array [100,100,100,100] 标题文字背景(字体底色)颜色, 取值范围0~255。a通道为0时表示全透明。【a通道暂不支持】
 opacity Float 0.5 标题文字图层透明度, 取值范围0~1。0表示全透明,1表示不透明
 rotation Float 0.0 旋转角度,取值[0.0,360.0],画布坐标系Y轴的反方向为0度,顺时针方向的夹角为旋转角,旋转时以图片中心点为锚点。注:最低版本要求:0.0.14。
effects Object 包含内容如下
 version String "1.0" 特效引擎版本
 beautify Object 包含内容如下 美颜
  whitenStrength Float 0.3 [0,1.0] 美白, 默认值 0.30, 0.0 不做美白
  whiten_mode Integer 0 美白模式:0(偏粉白), 1(自然白), 2(只有皮肤区域自然白)
  reddenStrength Float 0.36 [0,1.0]红润, 默认值 0.36, 0.0 不做红润
  smoothStrength Float 0.74 [0,1.0]磨皮, 默认值 0.74, 0.0 不做磨皮
  smooth_mode Integer 0 磨皮模式:0(脸部区域磨皮), 1(全图磨皮), 2(脸部区域精细磨皮)
  shrinkRatio Float 0.11 [0,1.0]瘦脸, 默认值 0.11, 0.0 不做瘦脸效果
  enlargeRatio Float 0.13 [0,1.0]大眼, 默认值 0.13, 0.0 不做大眼效果
  smallRatio Float 0.10 [0,1.0]小脸, 默认值 0.10, 0.0 不做小脸效果
  narrowFace Float 0.0 [0,1.0] 窄脸, 默认值 0.0, 0.0 不做窄脸
  roundEyesRatio Float 0.0 [0,1.0] 圆眼, 默认值 0.0, 0.0不做圆眼
  thinFaceShapeRatio Float 0.0 [0,1.0]瘦脸型, 默认值 0.0, 0.0 不做瘦脸型效果
  chinLength Float 0.0 [-1, 1]下巴长短, 默认值为 0.0,[-1, 0]为短下巴,[0, 1]为长下巴
  hairlineHeightRatio Float 0.0 [-1, 1]发际线, 默认值为 0.0,[-1, 0] 为低发际线,[0, 1]为高发际线
  appleMusle Float 0.0 [0, 1.0]苹果肌,默认值为 0.0,0.0 不做苹果肌
  narrowNoseRatio Float 0.0 [0, 1.0]瘦鼻,瘦鼻翼,默认值为 0.0,0.0 不做瘦鼻
  noseLengthRatio Float 0.0 [-1, 1]长鼻, 默认值为 0.0, [-1, 0]为短 鼻,[0, 1]为长鼻
  profileRhinoplasty Float 0.0 [0, 1.0]侧脸隆鼻,默认值为 0.0,0.0 不做侧脸隆鼻效果
  mouthSize Float 0.0 [-1, 1]嘴巴大小,默认值为 0.0,[-1, 0]为放大嘴巴,[0, 1]为缩小嘴巴
  philtrumLengthRatio Float 0.0 [-1, 1]人中长短, 默认值为 0.0,[-1, 0]为长人中,[0, 1]为短人中
  eyeDistanceRatio Float 0.0 [-1, 1]调整眼距,默认值为 0.0,[-1, 0]为减小眼距,[0, 1]为增加眼距
  eyeAngleRatio Float 0.0 [-1, 1]眼睛角度,默认值为 0.0,[-1, 0]为左眼逆时针旋转,[0, 1]为 左眼顺时针旋转,右眼与左眼相对
  openCanthus Float 0.0 [0, 1.0]开眼角,默认值为 0.0, 0.0 不做开眼角
  shrinkJawbone Float 0.0 [0, 1.0]瘦下颔骨比例,默认值 0.0, 0.0 不做瘦颧骨
  shrinkRoundFace Float 0.0 [0, 1.0]圆脸瘦脸,默认值 0.0, 0.0 不做瘦脸
  shrinkLongFace Float 0.0 [0, 1.0]长脸瘦脸,默认值 0.0, 0.0 不做瘦脸
  shrinkGoddessFace Float 0.0 [0, 1.0]女神瘦脸,默认值 0.0, 0.0 不做瘦脸
  shrinkNaturalFace Float 0.0 [0, 1.0]自然瘦脸,默认值 0.0, 0.0 不做瘦脸
  shrinkWholeHead Float 0.0 [0, 1.0]整体缩放小头,默认值 0.0, 0.0 不做整体缩放小头效果
  contrastStrength Float 0.05 [0,1.0]对比度, 默认值 0.05, 0.0 不做对比度处理
  saturationStrength Float 0.1 [0,1.0]饱和度, 默认值 0.10, 0.0 不做饱和度处理
  sharpen Float 0.0 [0, 1.0]锐化, 默认值 0.0, 0.0 不做锐化
  clear Float 0.0 [0, 1.0]清晰强度,默认值 0.0,0.0 不做清晰
  bokehStrength Float 0.0 [0, 1.0]背景虚化强度, 默认值 0.0, 0.0 不做背景虚化
  eyeHeight Float 0.0 [-1, 1]眼睛位置比例, 默认值 0.0, [-1, 0]为向下移动眼睛,[0, 1]为向上移动眼睛
  mouthCorner Float 0.0 [0, 1.0]嘴角上移比例, 默认值 0.0, 0.0 不做嘴角调整
  hairline Float 0.0 [-1, 1]新发际线高低比例, 默认值 0.0, [-1, 0]为低发际线,[0, 1]为高发际线
 packages Object Array 包含内容如下 美妆参数
  url String "https://xxx/res.zip" 美妆资源url,美妆资源包请联系客服
  strength Float 0.3 美妆强度
 filter Object 包含内容如下 滤镜参数
  onlyFigure Boolean false 滤镜效果是否只作用于数字人,true只对数字人滤镜,false为全局滤镜
  url String "https://xxx/res.zip" 滤镜资源url,美妆资源包请联系客服
  strength Float 0.3 滤镜强度
# json支持字体列表
语言 字体名称
中文 Noto Sans S Chinese Black
中文 Noto Sans S Chinese Bold
中文 Noto Sans S Chinese DemiLight
中文 Noto Sans S Chinese Light
中文 Noto Sans S Chinese Medium
中文 Noto Sans S Chinese Regular
中文 Noto Sans S Chinese Thin
中文 仓耳渔阳体 W03
中文 站酷酷黑
中文 站酷快乐体2016修订版
中文 站酷庆科黄油体
中文 站酷文艺体
中文 站酷小薇LOGO体
中文 得意黑
中文 钉钉进步体
中文 阿里妈妈东方大楷
中文 阿里妈妈数黑体
中文 字魂扁桃体
中文 包图小白体
中文 庞门正道粗书体
中文 杨任东竹石体-Bold
中文 优设标题黑
中文 Gen Jyuu Gothic Normal
中文 字制区喜脉体
中文 文道潮黑
中文 Alibaba-PuHuiTi-Bold
中文 Alibaba-PuHuiTi-Heavy
中文 Alibaba-PuHuiTi-Light
中文 Alibaba-PuHuiTi-Medium
中文 Alibaba-PuHuiTi-Regular
阿拉伯语 mastollehregular-2oaxk
韩语 HANDotumLVT
韩语 HANDotumLVT-bold
日语 SourceHanSansJP-Bold
日语 SourceHanSansJP-ExtraLight
日语 SourceHanSansJP-Heavy
日语 SourceHanSansJP-Light
日语 SourceHanSansJP-Medium
日语 SourceHanSansJP-Normal
日语 SourceHanSansJP-Regular
# json示例
{
	"version": "0.0.13",
	"video_format": "MP4",
	"resolution": [1080, 1920],
	"bit_rate": 8,
	"frame_rate": 25,
	"watermark": {
		"show": true,
		"content": "内部测试"
	},
	"digital_role": {
		"id": 4051,
		"face_feature_id": "0325_nina_s3_beauty",
		"name": "Nina",
		"url": "https://dwg-aigc-paas.oss-cn-hangzhou.aliyuncs.com/materials/77/0325_nina_s3_beauty_20230523213912566.zip",
		"position": {
			"x": 0,
			"y": 0
		},
		"scale": 1.0,
		"z_position": 1,
		"rotation": 0.0
	},
	"tts_config": {
		"id": "xiaoyue",
		"name": "晓月",
		"vendor_id": 3,
		"language": "zh-CN",
		"pitch_offset": 0.0,
		"speed_ratio": 1,
		"volume": 100
	},
	"tts_query": {
		"content": "您好,尊贵的客户",
		"ssml": false
	},
	"audios": [{
		"url": "https://dhpoc.softsugar.com/adapter/static/9b158cc9-8e42-4d09-b928-49dd9941d922.mp3"
	}, {
		"url": "https://dhpoc.softsugar.com/adapter/static/9b158cc9-8e42-4d09-b928-49dd9941d922.mp3"
	}],
	"subtitle": {
		"url": "https://aigc.blob.core.chinacloudapi.cn/audio/tts-srt/823v6j88s1k7aobpe7wmqm83q_de347214-96f2-4246-b283-17f40fe6abba.srt",
		"position": {
			"x": 100,
			"y": 300
		},
		"rgba": [100, 200, 100, 100],
		"font_size": 20,
    "stroke_width": 5.0,
		"stroke_rgba": [255, 0, 0, 0],
		"opacity": 0.5,
		"background_rgba": [0, 255, 0, 200],
		"subtitle_max_len": 8,
		"subtitle_cut_by_punc": "True",
		"font_family": "Noto Sans S Chinese Black"
	},
	"backgrounds": [{
		"type": 0,
		"name": "背景",
		"url": "https://dwg-aigc-paas.oss-cn-hangzhou.aliyuncs.com/test/background.png",
		"rect": [0, 0, 1080, 1920],
		"cycle": false,
		"start": 0,
		"duration": -1
	}],
	"background-musics": [{
		"url": "https://dwg-aigc-paas.oss-cn-hangzhou.aliyuncs.com/mayahui/%E7%BE%A4%E6%98%9F%20-%20%E5%96%9C%E6%B4%8B%E6%B4%8B.mp3",
		"volume": 100,
		"cycle": false
	}],
	"foregrounds": [{
		"type": 0,
		"name": "前景",
		"url": "http://dwg-aigc-paas.oss-cn-hangzhou.aliyuncs.com/test/frontgroud.png",
		"rect": [0, 0, 1080, 1920],
		"rotation": 0.0,
		"z_position": 0,
		"cycle": false,
		"start": 0,
		"duration": -1
	}],
	"foreground-texts": [{
		"text": "前景",
		"font_size": 20,
		"font_family": "Noto Sans S Chinese Black",
    "z_position": 10,
    "stroke_width": 5.0,
		"stroke_rgba": [255, 0, 0, 0],
    "opacity": 0.5,
		"position": {
			"x": 0,
			"y": 0
		},
    "background_rgba": [0, 255, 0, 200],
		"rgba": [100, 200, 100, 100]
	}],
  "title": {
		"text": "这是标题",
		"rgba": [100, 255, 255, 255],
		"position": {
			"x": 540,
			"y": 200
		},
		"font_size": 50,
		"font_family": "Noto Sans S Chinese Black",
		"stroke_width": 5.0,
		"stroke_rgba": [255, 0, 0, 0],
		"scale": 1.0,
		"opacity": 0.5,
		"background_rgba": [0, 255, 0, 200]
	},
	"effects": {
		"version": "1.0",
		"beautify": {
			"whitenStrength": 0.30,
			"whiten_mode": 0,
			"reddenStrength": 0.36,
			"smoothStrength": 0.74,
			"smooth_mode": 0,
			"shrinkRatio": 0.11,
			"enlargeRatio": 0.13,
			"smallRatio": 0.10,
			"narrowFace": 0.0,
			"roundEyesRatio": 0.0,
			"thinFaceShapeRatio": 0.0,
			"chinLength": 0.0,
			"hairlineHeightRatio": 0.0,
			"appleMusle": 0.0,
			"narrowNoseRatio": 0.0,
			"noseLengthRatio": 0.0,
			"profileRhinoplasty": 0.0,
			"mouthSize": 0.0,
			"philtrumLengthRatio": 0.0,
			"eyeDistanceRatio": 0.0,
			"eyeAngleRatio": 0.0,
			"openCanthus": 0.0,
			"brightEyeStrength": 0.0,
			"removeDarkCircleStrength": 0.0,
			"removeNasolabialFoldsStrength": 0.0,
			"whiteTeeth": 0.0,
			"shrinkCheekbone": 0.0,
			"thinnerHead": 0.0,
			"openExternalCanthus": 0.0,
			"shrinkJawbone": 0.0,
			"shrinkRoundFace": 0.0,
			"shrinkLongFace": 0.0,
			"shrinkGoddessFace": 0.0,
			"shrinkNaturalFace": 0.0,
			"shrinkWholeHead": 0.0,
			"contrastStrength": 0.05,
			"saturationStrength": 0.10,
			"sharpen": 0.0,
			"clear": 0.0,
      "eyeHeight": 0.0,
			"mouthCorner": 0.05,
			"hairline": 0.10,
			"bokehStrength": 0.0
		},
		"packages": [{
			"url": "https://xxx/xxx.zip",
			"strength": 0.3
		}, {
			"url": "https://xxx/xxx.model",
			"strength": 0.5
		}],
		"filter": {
			"onlyFigure": false,
			"url": "https://xxx/xxx.model",
			"strength": 0.5
		}
	}
}

# 批量创建视频合成任务

# 接口描述

根据用户上传的指定内容调用算法能力进行批量视频合成,最终返回mp4格式的视频文件列表供用户下载。PaaS平台支持7天在线存储,需要及时转存,7天后生成内容将无法下载。

# 请求地址

POST /api/2dvh/v1/material/video/batchCreate

# 请求头

Content-Type: application/json

# 请求参数

JSON数组格式,数组中对象的字段定义如下:

字段 类型 必填 描述
param String True 视频生成参数(该参数为json转义后的字符串)
videoRequestId String True 视频合成id,需唯一
videoName String True 视频名称
thumbnailUrl String False 缩略图Url

# 请求样例

[
  {
    "param": "video config",
    "videoName": "name",
    "videoRequestId": "aaa"
  },
  {
    "param": "video config",
    "videoName": "name",
    "videoRequestId": "bbb"
  }
]

# 响应元素

字段 类型 必填 描述
code Integer True 0 - 成功, 其他 - 异常
message String True 异常详细信息
data Object False data object ,异常时通常为空
  - videoRequestId String True 视频合成id,需唯一
  - taskId Long True 任务id
  - description String True 任务派发结果描述

# 响应样例

{
  "code": 0,
  "message": "success",
  "data": [
    {
      "videoRequestId": "aaa",
      "taskId": 26,
      "description": "队列等待中"
    },
    {
      "videoRequestId": "bbb",
      "taskId": 27,
      "description": "队列等待中"
    }
  ]
}

# 创建TTS个人音色模型生成任务

# 接口描述

TTS个人音色模型生成服务可根据用户上传的真人采集或录制的语音素材文件通过算法训练产出发音效果与声音素材提供者一致的数字人TTS音色模型。为保证训练效果,训练音频时长不得短于5分钟,请在采集时遵照商汤数字人音色复制采集制作规范,内容包括环境要求、设备要求、发音要求、授权要求、朗读脚本,具体参考:采集规范 (opens new window),PaaS平台支持7天在线存储,需要及时转存,7天后生成内容将无法下载。

# 请求地址

POST /api/2dvh/v1/material/voice/clone/create

# 请求头

Content-Type: application/json

# 请求参数

字段 类型 必填 描述
url String True 训练音频文件URL,时长不得短于5分钟
voice Object True 语音参数
  - name String True 发音人名称
  - gender Integer True 发音人性别(1: Male,2 :Female)
  - language String True 发音人语言(当前仅支持zh-CN:中文普通话)
musicSep Boolean False 是否进行音频背景音消除
sampleAudioMsg String False 示例音频内容文字。默认不生成示例音频。不超过500字。
trainMode String False 训练模式,common: 常规训练模式,默认为 common模式;backend_only: 极速训练模式,大幅度压缩模型训练时长,效果也会有影响。

# 请求样例

{
  "url": "http://oss.com/abc/object.zip",
  "voice": {
    "name": "xiaotang0",
    "gender": 2,
    "language": "zh-CN"
  },
  "sampleAudioMsg": "我是商汤数字人!",
  "musicSep": true,
  "trainMode": "common"
}

# 响应元素

字段 类型 必填 描述
code Integer True 0 - 成功, 其他 - 异常
message String True 异常详细信息
data Object False 任务id

# 响应样例

{
    "code": 0,
    "message": "success",
    "data": 11890
}

# 创建人物形象模型生成任务

# 接口描述

根据用户上传的一个或多个视频及指定内容调用算法能力进行人物形象模型生成,支持一次训练产出一个或多个模型文件,算法最终返回人物形象模型的压缩包和缩略图文件供用户下载。上传视频内容请参考采集规范 (opens new window)。PaaS平台支持7天在线存储,需要及时转存,7天后生成内容将无法下载。 若人物模型生成的效果不佳,请参考文档上述的case 应对方案进行训练参数调整。

支持普通数字人训练,支持精品数字人训练。

# 请求地址

POST /api/2dvh/v1/material/2davatar/model/multi/create

# 请求头

Content-Type: application/json

# 请求参数

字段 类型 必填 描述
materialName String True 人物模型素材名称,一次训练任务仅支持同一命名
videoUrl String True 基础base视频素材下载地址 ,基础视频时长要求必须在6min以上
param String True 创建多视频人物模型生成任务需要传入正确的param信息,其中包括各类参数(该参数为json转义后的字符串),请参考下面的参数说明和 json 示例

# param参数说明

字段 类型 必填 描述
personal String True 基础视频参数,可被辅助视频覆盖。如果辅助视频未填写,将使用基础视频参数进行处理。
  - segmentStyle Integer True 背景分割方式:0:不分割,1:绿幕分割,2:普通分割,3:sdk做绿幕分割后处理(视频合成时gpu后处理)
  - segmentGreenQuality Integer False 当segmentStyle=1时,设置有效,绿幕分割质量:0:low,1:high。默认为0
  - removeGreenEdge Boolean False 当segmentStyle=2时,设置有效,默认为false,去除人物边缘绿边功能
  - greenParamsRefinethHBgr Integer False 当segmentStyle=1或 3时,设置有效, 默认 160,范围0-255; refine alpha 高阈值 (对于背景为红绿蓝),用于调整背景保留程度,值越大背景保留程度越大
  - greenParamsRefinethLBgr Integer False 当segmentStyle=1 或 3时,设置有效, 默认 40, 范围0-255; refine alpha 低阈值 (对于背景为红绿蓝),用于调整人体/物体边缘保留宽度,值越大保留越多
  - greenParamsBlurKs Integer False 当segmentStyle=1或 3时,设置有效, 默认 3,平滑度; 去噪点的blur系数,大于等于0,平滑度越大越平滑,对边缘有影响,若边缘出现黑边异色可以将该值升高,若边缘出现内蚀可以该值适当降低
  - greenParamsColorbalance Integer False 当segmentStyle=1 或 3时, 设置有效,默认100, 去绿程度,范围0-100,取值越大,去绿程度越高
  - greenParamsSpillByalpha Double False 当segmentStyle=1和3时,设置有效, 默认 0.5,去绿色彩平衡,范围[-1.0 ~ 1.0],0 ~ 1 是减少偏色,-1 ~ 0 是增强色彩,小于0.5黄色会偏色,大于0.5青蓝色会偏色,若使用蓝幕分割,则默认值需要改为 0.0
  - greenParamsSamplePointBgr int[] False 当segmentStyle=1 或 3时,设置有效,采样颜色,由三个数值组成,各自取值范围0-255,例如[0, 255, 0] ,若使用蓝幕分割,则默认值需要改为 [255, 0, 0]
  - assetStart Float False 裁剪视频素材起始时间(秒)(精品数字人该参数无效)
  - assetEnd Float False 裁剪视频素材终止时间(秒)(精品数字人该参数无效)
  - assetScale Float False 视频素材缩放比例(默认1.0)
  - actionChange Object False 精品数字人相关参数
  -   - support Boolean True 是否支持精品数字人,true为精品数字人。
  -   - staticRangeStart Float True 静态素材开始时间(秒)(仅支持精品数字人)
  -   - staticRangeEnd Float True 静态素材结束时间(秒)(仅支持精品数字人)
  -   - dynamicRangeStart Float True 动态素材开始时间(秒)(仅支持精品数字人)
  -   - dynamicRangeEnd Float True 动态素材结束时间(秒)(仅支持精品数字人)
  -   - gap Integer False 切出点最大间隔帧数(默认75)
persistent Object False 模型全局参数,不可被辅助视频参数覆盖
  - videoCrfQuality Integer False 视频编码质量的参数crf, 参数越小质量越好但文件越大,默认23,允许范围0-51,建议14-28
  - stage1Config Array False 人物模型口型训练配置,默认为0表示生成原始口型模型 ; 1 表示生成通用口型模型 ,后续用户可根据实际效果选择手动切换两种口型模型
  - dev Object False 视频素材模型训练配置
  -   - stage2 Object False 视频素材模型训练配置
  -   -   - config Integer False 视频素材模型训练配置,模型尺寸,默认为0,表示2k精度模型;1表示4k精度模型
override Array False 辅助视频信息。(精品数字人该组参数无效)
  - videoUrl String True 辅助视频地址,如果辅助视频未配置则personal中参数
  - segmentStyle Integer False 背景分割方式:0:不分割,1:绿幕分割,2:普通分割,3:sdk做绿幕分割后处理(视频合成时gpu后处理)
  - segmentGreenQuality Integer False 当segmentStyle=1时,设置有效,绿幕分割质量:0:low,1:high。默认为0
  - removeGreenEdge Boolean False 当segmentStyle=2时,设置有效,默认为false,去除人物边缘绿边功能
  - greenParamsRefinethHBgr Integer False 当segmentStyle=1或 3时,设置有效, 默认 160,范围0-255; refine alpha 高阈值 (对于背景为红绿蓝),用于调整背景保留程度,值越大背景保留程度越大
  - greenParamsRefinethLBgr Integer False 当segmentStyle=1 或 3时,设置有效, 默认 40, 范围0-255; refine alpha 低阈值 (对于背景为红绿蓝),用于调整人体/物体边缘保留宽度,值越大保留越多
  - greenParamsBlurKs Integer False 当segmentStyle=1或 3时,设置有效, 默认 3,平滑度; 去噪点的blur系数,大于等于0,平滑度越大越平滑,对边缘有影响,若边缘出现黑边异色可以将该值升高,若边缘出现内蚀可以该值适当降低
  - greenParamsColorbalance Integer False 当segmentStyle=1 或 3时, 设置有效,默认100, 去绿程度,范围0-100,取值越大,去绿程度越高
  - greenParamsSpillByalpha Double False 当segmentStyle=1和3时,设置有效, 默认 0.5,去绿色彩平衡,范围[-1.0 ~ 1.0],0 ~ 1 是减少偏色,-1 ~ 0 是增强色彩,小于0.5黄色会偏色,大于0.5青蓝色会偏色,若使用蓝幕分割,则默认值需要改为 0.0
  - greenParamsSamplePointBgr int[] False 当segmentStyle=1 或 3时,设置有效,采样颜色,由三个数值组成,各自取值范围0-255,例如[0, 255, 0] ,若使用蓝幕分割,则默认值需要改为 [255, 0, 0]
  - assetStart Float False 裁剪视频素材起始时间(秒)
  - assetEnd Float False 裁剪视频素材终止时间(秒)
  - assetScale Float False 视频素材缩放比例(默认1.0)

# 请求样例

{
  "materialName": "534",
  "videoUrl": "https://xxx/materials/33/demo_20230228104258028_20230720185601860.mp4",
  "param": "{\"personal\":{\"segmentStyle\":1,\"segmentGreenQuality\":0,\"removeGreenEdge\":false,\"greenParamsRefinethHBgr\":180,\"greenParamsRefinethLBgr\":50,\"greenParamsBlurKs\":3,\"greenParamsColorbalance\":90,\"greenParamsSpillByalpha\":0.4,\"greenParamsSamplePointBgr\":[0,255,0],\"assetStart\":0.1,\"assetEnd\":0.6,\"assetScale\":1},\"persistent\":{\"videoCrfQuality\":23,\"stage1Config\":[0,1],\"dev\":{\"stage2\":{\"config\":1}}},\"override\":[{\"videoUrl\":\"https://aigc-video-saas.oss-cn-hangzhou.aliyuncs.com/AIGC/online/vendor/24/customization/1700120490581/package_1700120490581.mp4\",\"segmentStyle\":1,\"segmentGreenQuality\":0,\"removeGreenEdge\":false,\"greenParamsRefinethHBgr\":180,\"greenParamsRefinethLBgr\":50,\"greenParamsBlurKs\":3,\"greenParamsColorbalance\":90,\"greenParamsSpillByalpha\":0.4,\"greenParamsSamplePointBgr\":[0,255,0],\"assetStart\":0.1,\"assetEnd\":0.6,\"assetScale\":1},{\"videoUrl\":\"https://dwg-aigc-paas.oss-cn-hangzhou.aliyuncs.com/demo.mp4\",\"segmentStyle\":1,\"segmentGreenQuality\":0,\"removeGreenEdge\":false,\"greenParamsRefinethHBgr\":180,\"greenParamsRefinethLBgr\":50,\"greenParamsBlurKs\":3,\"greenParamsColorbalance\":90,\"greenParamsSpillByalpha\":0.4,\"greenParamsSamplePointBgr\":[0,255,0],\"assetStart\":0.1,\"assetEnd\":0.6,\"assetScale\":1}]}"
}

# 响应元素

字段 类型 必填 描述
code Integer True 0 - 成功, 其他 - 异常
message String True 异常详细信息
data Object False 任务id

# 响应样例

{
    "code": 0,
    "message": "success",
    "data": 1
}

#

# 创建人物形象模型生成任务(旧接口)

# 接口描述

注意:该接口仅支持普通数字人模型生成任务,该接口不进行新内容更新。建议使用创建人物形象模型生成接口。

根据用户上传的指定内容调用算法能力进行人物形象模型生成,最终返回人物形象模型的压缩包和缩略图文件供用户下载。上传内容请参考采集规范 (opens new window)。PaaS平台支持7天在线存储,需要及时转存,7天后生成内容将无法下载。

# 请求地址

POST /api/2dvh/v1/material/2davatar/model/create

# 请求头

Content-Type: application/json

# 请求参数

字段 类型 必填 描述
materialName String True 人物模型素材名称
videoUrl String True 视频素材下载地址
segmentStyle Integer True 背景分割方式:0:不分割,1:绿幕分割,2:普通分割,3:sdk做绿幕分割后处理(视频合成时gpu后处理)
segmentGreenQuality Integer False 当segmentStyle=1时,设置有效,绿幕分割质量:0:low,1:high。默认为0
removeGreenEdge Boolean False 当segmentStyle=2时,设置有效,默认为false,去除人物边缘绿边功能
greenParamsRefinethHBgr Integer False 当segmentStyle=1或 3时,设置有效, 默认 160,范围0-255; refine alpha 高阈值 (对于背景为红绿蓝),用于调整背景保留程度,值越大背景保留程度越大
greenParamsRefinethLBgr Integer False 当segmentStyle=1 或 3时,设置有效, 默认 40, 范围0-255; refine alpha 低阈值 (对于背景为红绿蓝),用于调整人体/物体边缘保留宽度,值越大保留越多
greenParamsBlurKs Integer False 当segmentStyle=1或 3时,设置有效, 默认 3,平滑度; 去噪点的blur系数,大于等于0,平滑度越大越平滑,对边缘有影响,若边缘出现黑边异色可以将该值升高,若边缘出现内蚀可以该值适当降低
greenParamsColorbalance Integer False 当segmentStyle=1 或 3时, 设置有效,默认100, 去绿程度,范围0-100,取值越大,去绿程度越高
greenParamsSpillByalpha Double False 当segmentStyle=1和3时,设置有效, 默认 0.5,去绿色彩平衡,范围[-1.0 ~ 1.0],0 ~ 1 是减少偏色,-1 ~ 0 是增强色彩,小于0.5黄色会偏色,大于0.5青蓝色会偏色,若使用蓝幕分割,则默认值需要改为 0.0
greenParamsSamplePointBgr int[] False 当segmentStyle=1 或 3时,设置有效,采样颜色,由三个数值组成,各自取值范围0-255,例如[0, 255, 0] ,若使用蓝幕分割,则默认值需要改为 [255, 0, 0]
videoCrfQuality Integer False 视频编码质量的参数crf, 参数越小质量越好但文件越大,默认23,允许范围0-51,建议14-28
assetStart Float False 裁剪视频素材起始时间(秒)
assetEnd Float False 裁剪视频素材终止时间(秒)
assetScale Float False 视频素材缩放比例(默认1.0)
devStage2Config Integer False 视频素材模型训练配置,模型尺寸,默认为0,表示2k精度模型;1表示4k精度模型
stage1Template Integer False 人物模型口型训练配置,默认为0表示生成原始口型模型 ; 1 表示生成通用口型模型 ,后续用户可根据实际效果选择手动切换两种口型模型

# 请求样例

当segmentStyle=0的示例

{
  "materialName": "534",
  "segmentStyle": 1,
  "segmentGreenQuality": 0,
  "assetScale": 1,
  "videoCrfQuality": 21,
  "stage1Template": 0,
  "devStage2Config": 0,
  "videoUrl": "https://xxx/materials/33/demo_20230228104258028_20230720185601860.mp4"
}

当segmentStyle=1的示例

{
  "materialName": "534",
  "segmentStyle": 1,
  "segmentGreenQuality": 0,
  "assetScale": 1,
  "devStage2Config": 0,
  "greenParamsRefinethHBgr": 167,
  "greenParamsRefinethLBgr": 17,
  "greenParamsBlurKs": 7,
  "greenParamsColorbalance": 97,
  "greenParamsSpillByalpha": 0.3,
  "greenParamsSamplePointBgr": [
    7,
    275,
    7
  ],
  "videoCrfQuality": 21,
  "stage1Template": 0,
  "videoUrl": "https://xxx/materials/33/demo_20230228104258028_20230720185601860.mp4"
}

当segmentStyle=2的示例,仅greenParamsSpillByalpha可变更取值,其他参数将按照默认值传入

{
  "materialName": "534",
  "segmentStyle": 2,
  "devStage2Config": 0,
  "stage1Template": 0,
  "removeGreenEdge" : true,
  "segmentGreenQuality": 0,
  "assetScale": 1,
  "greenParamsSpillByalpha": 0.3,
  "videoCrfQuality": 21,
  "videoUrl": "https://xxx/materials/33/demo_20230228104258028_20230720185601860.mp4"
}

当segmentStyle=3的示例

{
  "materialName": "534",
  "segmentStyle": 3,
  "segmentGreenQuality": 0,
  "assetScale": 1,
  "devStage2Config": 0,
  "stage1Template": 0,
  "greenParamsRefinethHBgr": 167,
  "greenParamsRefinethLBgr": 17,
  "greenParamsBlurKs": 7,
  "greenParamsColorbalance": 97,
  "greenParamsSpillByalpha": 0.3,
  "greenParamsSamplePointBgr": [
    7,
    275,
    7
  ],
  "videoCrfQuality": 21,
  "videoUrl": "https://xxx/materials/33/demo_20230228104258028_20230720185601860.mp4"
}

# 参数说明

通常情况下,默认参数即可适配大部分场景,但因场景表现不同出现效果问题时,参数也需要针对调整,下面就一些典型场景提供对应的参数建议。

1)通用场景参数(默认)

此场景为适配大多数场景参数,即上述提供的默认参数取值,有需要建议绿幕分割质量(segmentGreenQuality)选择【高】,其他参数如无问题可不修改。

2)数字人画面不清晰调整参数

方法1:将视频编码质量参数(videoCrfQuality)调小,当设置值为14时,数字人素材与原始人物素材清晰度对齐,此方法可能会轻微增大素材大小;

方法2:合成视频或创建直播的输入请求中适当添加锐化sharp值,具体可参考 json 定义说明中 beautify 对象下的 sharpen 取值调大;

方法3:选择4k版本训练数字人

3)人物边缘出现锯齿调整参数

需要确认绿幕分割质量(segmentGreenQuality)取值是否为 high,通常高精分割质量即可保证边缘清晰平滑。

4)人物边缘出现黑边且有轻微反绿调整参数(出现频率高,尤其是白衣服场景易出现

请参考下面的参数进行人物模型更新(rebuilding),同时调低背景保留程度与人物边缘保留宽度,此方法主要适配绿幕分割场景。参考取值如下:

{
  "materialName": "534",
  "segmentStyle": 1,
  "removeGreenEdge": false ,
  "segmentGreenQuality": 1,
  "assetScale": 1,
  "devStage2Config":0,
  "stage1Template": 0,
  "greenParamsRefinethHBgr": 90,
  "greenParamsRefinethLBgr": 10,
  "greenParamsBlurKs": 3,
  "greenParamsColorbalance": 100,
  "greenParamsSpillByalpha": -0.3,
  "greenParamsSamplePointBgr": [
    0,
    275,
    0
  ],
  "videoCrfQuality": 21,
  "videoUrl": "https://xxx/materials/33/demo_20230228104258028_20230720185601860.mp4"
}

5)人物边缘有绿边或整体泛绿调整参数

可以调小去绿平衡参数,参数越小去绿力度越高,也更容易偏色,例如将柠檬黄色抠除绿元素而变成橙色,建议最小设为-0.3。此方法可增强色彩,适合画面中没有黄色时,同时支持绿幕分割与普通分割。参考取值如下:

{
  "materialName": "534",
  "segmentStyle": 2,
  "removeGreenEdge": true ,
  "devStage2Config": 0,
  "stage1Template": 0,
  "greenParamsSpillByalpha": -0.3,
  "videoCrfQuality": 21,
  "videoUrl": "https://xxx/materials/33/demo_20230228104258028_20230720185601860.mp4"
}

6)人物说话脸颊幅度大且在脸颊或脖子位置出现灰边调整参数

此种情况发生原因为初始素材分割结果与驱动后的数字人脸颊边缘不匹配,需要选择绿幕分割后处理(segmentStyle=3)方式训练,主要适合绿幕分割处理的数字人。

# 响应元素

字段 类型 必填 描述
code Integer True 0 - 成功, 其他 - 异常
message String True 异常详细信息
data Object False 任务id

# 响应样例

{
    "code": 0,
    "message": "success",
    "data": 1
}

# 创建人物形象模型更新任务

# 接口描述

2D数字人展示的动作片段是从训练视频中抽取的,默认情况下是从说话的第一秒到3分半的时长。如果对2D数字人的动作片段不满意,可以通过此接口进行动作片段修改,调整展示的动作时长和内容。需要注意的是使用人物形象模型更新功能时,建议背景分割方式与原模型文件生成时选择的背景分割方式一致,变更分割方式可能会引起效果异常问题。 PaaS平台支持7天在线存储,需要及时转存,7天后生成内容将无法下载。

# 请求地址

POST /api/2dvh/v1/material/2davatar/model/rebuilding/video

# 请求头

Content-Type: application/json

# 请求参数

字段 类型 必填 描述
materialName String True 人物模型素材名称
videoUrl String True 视频素材下载地址
modelUrl String True 已生成的原模型文件下载地址
segmentStyle Integer True 背景分割方式:0:不分割,1:绿幕分割,2:普通分割,3:sdk做绿幕分割后处理(视频合成时gpu后处理)
segmentGreenQuality Integer False 当segmentStyle=1时,设置有效,绿幕分割质量:0:low,1:high。默认为0
removeGreenEdge Boolean False 当segmentStyle=2时,设置有效,默认为false,去除人物边缘绿边功能
greenParamsRefinethHBgr Integer False 当segmentStyle=1或 3时,设置有效, 默认 160,范围0-255; refine alpha 高阈值 (对于背景为红绿蓝),用于调整背景保留程度,值越大背景保留程度越大
greenParamsRefinethLBgr Integer False 当segmentStyle=1 或 3时,设置有效, 默认 40, 范围0-255; refine alpha 低阈值 (对于背景为红绿蓝),用于调整人体/物体边缘保留宽度,值越大保留越多
greenParamsBlurKs Integer False 当segmentStyle=1或 3时,设置有效, 默认 3,平滑度; 去噪点的blur系数,大于等于0,平滑度越大越平滑,对边缘有影响,若边缘出现黑边异色可以将该值升高,若边缘出现内蚀可以该值适当降低
greenParamsColorbalance Integer False 当segmentStyle=1 或 3时, 设置有效,默认100, 去绿程度,范围0-100,取值越大,去绿程度越高
greenParamsSpillByalpha Double False 当segmentStyle=1和3时,设置有效, 默认 0.5,去绿色彩平衡,范围[-1.0 ~ 1.0],0 ~ 1 是减少偏色,-1 ~ 0 是增强色彩,小于0.5黄色会偏色,大于0.5青蓝色会偏色,若使用蓝幕分割,则默认值需要改为 0.0
greenParamsSamplePointBgr int[] False 当segmentStyle=1 或 3时,设置有效,采样颜色,由三个数值组成,各自取值范围0-255,例如[0, 255, 0] ,若使用蓝幕分割,则默认值需要改为 [255, 0, 0]
videoCrfQuality Integer False 视频编码质量的参数crf, 参数越小质量越好但文件越大,默认23,允许范围0-51,建议14-28
assetStart Float False 裁剪视频素材起始时间(秒)
assetEnd Float False 裁剪视频素材终止时间(秒)
assetScale Float False 视频素材缩放比例(默认1.0)
actionChange Object False 动静切换参数
  - support Boolean True 是否支持素材动作切换
  - staticRangeStart Float True 静态素材开始时间(秒)
  - staticRangeEnd Float True 静态素材结束时间(秒)
  - dynamicRangeStart Float True 动态素材开始时间(秒)
  - dynamicRangeEnd Float True 动态素材结束时间(秒)
  - gap Integer False 切出点最大间隔帧数(默认75)

# 请求样例

{
  "materialName": "2d任务A",
  "videoUrl": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.mp4",
  "modelUrl": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/model1.zip",
  "assetStart": 0.0,
  "assetEnd": 120.0,
  "assetScale": 1.0,
  "segmentStyle": 1,
  "devStage2Config": 0,
  "stage1Template": 0,
  "segmentGreenQuality": 0,
  "greenParamsRefinethHBgr": 167,
  "greenParamsRefinethLBgr": 17,
  "greenParamsBlurKs": 7,
  "segmentGreenUseGpu":false,
  "greenParamsColorbalance": 97,
  "greenParamsSpillByalpha": 0.3,
  "greenParamsSamplePointBgr": [
    7,
    275,
    7
  ],
  "videoCrfQuality": 21
}

# 参数说明

通常情况下,默认参数即可适配大部分场景,但因场景表现不同出现效果问题时,参数也需要针对调整,下面就一些典型场景提供对应的参数建议。

1)通用场景参数(默认)

此场景为适配大多数场景参数,即上述提供的默认参数取值,有需要建议绿幕分割质量(segmentGreenQuality)选择【高】,其他参数如无问题可不修改。

2)数字人画面不清晰调整参数

方法1:将视频编码质量参数(videoCrfQuality)调小,当设置值为14时,数字人素材与原始人物素材清晰度对齐,此方法可能会轻微增大素材大小;

方法2:合成视频或创建直播的输入请求中适当添加锐化sharp值,具体可参考 json 定义说明中 beautify 对象下的 sharpen 取值调大;

方法3:选择4k版本训练数字人,但更新时不支持修改分辨率

3)人物边缘出现锯齿调整参数

需要确认绿幕分割质量(segmentGreenQuality)取值是否为 high,通常高精分割质量即可保证边缘清晰平滑。

4)人物边缘出现黑边且有轻微反绿调整参数(出现频率高,尤其是白衣服场景易出现

请参考下面的参数进行人物模型更新(rebuilding),同时调低背景保留程度与人物边缘保留宽度,此方法主要适配绿幕分割场景。参考取值如下:

{
  "materialName": "534",
  "segmentStyle": 1,
  "removeGreenEdge": false ,
  "segmentGreenQuality": 1,
  "assetScale": 1,
  "greenParamsRefinethHBgr": 90,
  "greenParamsRefinethLBgr": 10,
  "greenParamsBlurKs": 3,
  "greenParamsColorbalance": 100,
  "greenParamsSpillByalpha": -0.3,
  "greenParamsSamplePointBgr": [
    0,
    275,
    0
  ],
  "videoCrfQuality": 21,
  "videoUrl": "https://xxx/materials/33/demo_20230228104258028_20230720185601860.mp4"
}

5)人物边缘有绿边或整体泛绿调整参数

可以调小去绿平衡参数,参数越小去绿力度越高,也更容易偏色,例如将柠檬黄色抠除绿元素而变成橙色,建议最小设为-0.3。此方法可增强色彩,适合画面中没有黄色时,同时支持绿幕分割与普通分割。参考取值如下:

{
  "materialName": "534",
  "segmentStyle": 2,
  "removeGreenEdge": true ,
  "greenParamsSpillByalpha": -0.3,
  "videoCrfQuality": 21,
  "videoUrl": "https://xxx/materials/33/demo_20230228104258028_20230720185601860.mp4"
}

6)人物说话脸颊幅度大且在脸颊或脖子位置出现灰边调整参数

此种情况发生原因为初始素材分割结果与驱动后的数字人脸颊边缘不匹配,需要选择绿幕分割后处理(segmentStyle=3)方式训练,主要适合绿幕分割处理的数字人。

# 响应元素

字段 类型 必填 描述
code Integer True 0 - 成功, 其他 - 异常
message String True 异常详细信息
data Object False 任务id

# 响应样例

{
    "code": 0,
    "message": "success",
    "data": 1
}

# 创建视频人物换脸任务(内部测试)

# 接口描述

根据用户上传的视频内容和模板图片调用算法能力进行视频人物换脸处理,最终返回处理后的视频文件和缩略图供用户下载。

# 请求地址

POST /api/2dvh/v1/material/face/swap/create

# 请求头

Content-Type: application/json

# 请求参数

字段 类型 必填 描述
facePhotoUrl String True 换脸使用的模板面部图片
videoUrl String True 换脸使用的原始视频文件
materialName String True 换脸任务名称

# 请求样例

{
  "facePhotoUrl": "facePhotoUrl",
  "videoUrl": "videoUrl",
  "materialName": "materialName"

}

# 响应元素

字段 类型 必填 描述
code Integer True 0 - 成功, 其他 - 异常
message String True 异常详细信息
data Object False 任务id

# 响应样例

{
  "code": 0,
  "message": "success",
  "data": 1
}

# 响应元素

字段 类型 必填 描述
code Integer True 0 - 成功, 其他 - 异常
message String True 异常详细信息
data Object False 任务id

# 响应样例

{
    "code": 0,
    "message": "success",
    "data": 1
}

# 获取指定任务信息

# 接口描述

根据用户传入的任务ID查询任务的对应信息,以及当前的任务所处状态。

# 请求地址

POST /api/2dvh/v1/task/info

# 请求头

Content-Type: application/json

# 请求参数

JSON数组格式,数组中对象的字段定义如下:

字段 类型 必填 描述
ids Long[] True 任务id列表

# 请求样例

{
    "ids": [7,27]
}

# 响应元素

字段 类型 必填 描述
code Integer True 0 - 成功, 其他 - 异常
message String True 异常详细信息
data Object False 任务信息
  - id Long True 任务id
  - materialId Integer True 素材 id
  - materialName String True 素材名称
  - algoType Integer True 任务类型(11:TTS音色模型生成,12:人物形象模型生成,14:视频合成,20:视频人物换脸,18:人物形象模型更新,25:音色转换 )
  - algoSubType1 String True 人物模型:模型规格:2K/4K,视频合成:使用人物模型规格:2K/4K
  - algoSubType2 String False 视频合成:结果物格式:webm/mp4
  - algoSubType3 String False 视频合成:结果物帧率
  - status Integer True 任务状态,0:未开始,1:Dispatcher队列等待中,2:算法正在处理,3:已取消,5:已完成,9:异常
  - extendParam String False 扩展参数
  - productParam String True 任务结果json串,不同任务格式不同。
  - startTime String True 算法开始时间(yyyy-MM-dd HH:mm:ss)
  - endTime String True 算法截止时间(yyyy-MM-dd HH:mm:ss)
# case1: 视频合成
字段 类型 必填 描述
duration Integer True 合成视频时长(单位:毫秒)
lastFrameIndex Integer True 视频结尾帧
algoSubType1 String True 视频合成:使用人物模型规格:2K/4K
algoSubType2 String True 视频合成:结果物格式:webm/mp4
algoSubType3 String True 视频合成:结果物帧率
thumbPath String True 缩略图下载地址(7天有效)
videoPath String True 视频下载地址(7天有效)
# case2: 人物形象模型生成
字段 类型 必填 描述
thumbPath String True 基础视频生成人物模型缩略图下载地址(7天有效)
pkgPath String True 人物形象下载地址 (7天有效),多视频人物模型生成时无此字段返回
# case3: (多视频)人物形象模型生成(/model/multi/create接口结果)
字段 类型 必填 描述
thumbPath String True 基础视频生成人物模型缩略图下载地址(7天有效)
multi Array False 多视频人物模型生结果,内容为数组
  - videoUrl String True 原始视频文件URL
  - orgin Object True 原始口型人物模型对象 (stage1Template参数为0)
  -   - thumbPath String True 人物模型缩略图下载地址(7天有效)
  -   - pkgPath String True 人物模型下载地址 (7天有效)
  -   - faceFeatureId String True Face Feature Id
  - common Object True 通用口型人物模型对象 (stage1Template参数为1 )
  -   - thumbPath String True 人物模型缩略图下载地址(7天有效)
  -   - pkgPath String True 人物模型下载地址 (7天有效)
  -   - faceFeatureId String True Face Feature Id
# case4: 人物形象模型更新
字段 类型 必填 描述
thumbPath String True 人物模型缩略图下载地址(7天有效)
pkgPath String True 人物模型下载地址 (7天有效)
modelInfo String True 人物模型:模型规格:2K/4K
# case5: TTS音色模型生成
字段 类型 必填 描述
sampleAudioUrl String True 示例音频的地址 (7天有效)
duration_ms Integer True 示例音频的时长,单位为ms
voice Object True 声音信息
  - id String True 声音ID
  - name String True 发音人名称
  - gender Integer True 发音人性别。0 = Not known。1 = Male。2 = Female。9 = Not applicable
  - language String True 发音人语言。zh-CN中文普通话,en-US美式英文
  - vendor_id Integer True 声音供应商ID
  - musicSeq Boolean True 是否进行背景音消除
  - humanLabel Boolean True 是否进行人工标注
  - sampleAudioMsg String True 用户填写的需要生成的示例音频文案,未填写则为空。
  - callbackUrl String True 回调地址
  - tenant String True 任务所属租户
  - status Integer True 任务状态。1 = 排队中。2 = 任务进行中。3 = 已取消。5 = 已完成。 9 = 异常。
  - msg String True 任务状态描述信息。
  - stage String True 任务子步骤。preprocess:数据预处理。label:数据标注。training:模型训练。deployment:部署阶段。
  - stageStatus Integer True 阶段状态。1 = 排队中。2 = 任务进行中。5 = 已完成。 9 = 异常。
  - modelUrl String True 任务成功时返回模型下载地址,仅内网可用。暂不对外提供
  - priority Integer True 任务优先级
  - createdTime String True 任务创建时间
  - updatedTime String True 任务信息更新时间
# case6: 视频人物换脸
字段 类型 必填 描述
thumbPath String True 缩略图下载地址 (7天有效)
pkgPath String True 人物形象下载地址 (7天有效)
# case7: 声音转换
字段 类型 必填 描述
msg String True Face Feature Id
voice Object True 声音信息
  - id String True 声音ID
  - name String True 发音人名称
  - gender Integer True 发音人性别。0 = Not known。1 = Male。2 = Female。9 = Not applicable
  - language String True 发音人语言。zh-CN中文普通话,en-US美式英文
  - vendor_id Integer True 声音供应商ID
tenant String True 租户ID
stage String True Face Feature Id
stageStatus String True 阶段状态。1 = 排队中。2 = 任务进行中。5 = 已完成。 9 = 异常。
sampleAudioUrl String False 任务完成且创建任务时设置了 sample_audio_msg 时会填写此字段,为示例音频的地址。

extendParam中人物形象模型参数信息

字段 类型 必填 描述
faceFeatureId String True Face Feature Id

# 响应样例1

{
    "code": 0,
    "message": "success",
    "data": [{
      "id": 27,
      "productParam": "\"{\\\"duration\\\":1234,\\\"thumbPath\\\":\\\"https://oss-cn-hangzhou.aliyuncs.com/dwg-aigc-paas/materials/a8610d001aaa412ab2e0433fc848b48f/thumb.jpg\\\",\\\"videoPath\\\":\\\"https://oss-cn-hangzhou.aliyuncs.com/dwg-aigc-paas/materials/a8610d001aaa412ab2e0433fc848b48f/output.mp4\\\"}\"",
      "startTime": "2023-02-17 16:53:26",
      "endTime": "2023-02-18 10:03:21",
      "status": 5
    },
      {
        "id": 7,
        "productParam": "{}",
        "startTime": "2023-02-17 16:56:26",
        "endTime": "2023-02-17 17:43:19",
        "status": 9
      }]
}

# 响应样例2

{
    "code": 0,
    "msg": "success",
    "task": {
        "id": "c0a5355a-026a-4865-95aa-8acea4f98b48",
        "config": {
            "url": "http://oss.com/abc/object.zip",
            "voice": {
							"id": "bababababa",
			    		"name": "xiaotang",
							"gender": 1,
						  "language": "zh-CN",
							"vendor_id": 3
            },
            "musicSep": false,
						"humanLabel": true,
            "sampleAudioMsg": "哈哈"
        },
        "callbackUrl": "http://example-callback-address/ahaha/ahaha",
        "tenant": "yore",
        "status": 2,
        "msg": "yahaha",
        "stage": "abcdefg",
				"stageStatus": 1,
        "sampleAudioUrl": "http://abc.com/def",
        "modelUrl": "http://10.1.2.3/abc.zip",
        "priority": 0,
        "created_time": "2023-06-15T10:02:34.406449Z",
        "updated_time": "2023-06-15T11:07:53.307669Z"
    }
}

# 获取账户任务信息

# 接口描述

根据用户的账户ID查询其账户下某算法类型下全部任务的对应信息,以及当前的任务所处状态,任务列表支持分页。

# 请求地址

POST /api/2dvh/v1/task/listByAccount

# 请求头

Content-Type: application/json

# 请求参数

字段 类型 必填 描述
algoType Integer True 任务类型(11:TTS音色模型生成,12:人物形象模型生成,14:视频合成,20:视频人物换脸,18:人物形象模型更新,25:音色转换 )
pageNo int False 当前页码 (默认 1)
pageSize int False 每页条数 (默认 10)
sortName String False 排序字段名
sortValue String False 排序顺序: asc, desc

# 请求样例

{
  "algoType": 12,
  "pageSize": 10,
  "pageNo": 1
}

# 响应元素

字段 类型 必填 描述
code Number True 0 - 成功, 其他- 异常
message String True 异常详细信息
data Object False data object ,异常时通常为空
  - pagination Pagination True 分页信息(参照通用数据结构说明)
  - result Object True 任务列表(参照下面说明)

任务列表

字段 类型 必填 描述
id Long True 任务id
algoType Integer True 任务类型(11:TTS音色模型生成,12:人物形象模型生成,14:视频合成,20: 视频人物换脸,18:人物形象模型更新,25:音色转换 )
algoSubType1 String True 人物模型:模型规格:2K/4K,视频合成:使用人物模型规格:2K/4K
algoSubType2 String False 视频合成:结果物格式:webm/mp4
algoSubType3 String False 视频合成:结果物帧率
status Integer True 任务状态 0:未开始,1:Dispatcher队列等待中,2:算法正在处理,3:已取消,5:已完成,9:异常
productParam String True 任务结果json串,包含视频地址videoPath,视频时长duration,截图地址thumbPath
startTime String True 算法开始时间(yyyy-MM-dd HH:mm:ss)
endTime String True 算法截止时间(yyyy-MM-dd HH:mm:ss)

# 响应样例

{
  "code": 0,
  "message": "success",
  "data": {
    "pagination": {
      "pageNo": 1,
      "numberPages": 1,
      "numberRecords": 2,
      "pageSize": 2,
      "startIndex": 0
    },
    "result": [
      {
        "id": 27,
        "algoType": 12,
        "algoSubType1": "4K",
        "algoSubType2": null,
        "algoSubType3": null,
        "productParam": "\"{\\\"duration\\\":1234,\\\"thumbPath\\\":\\\"https://oss-cn-hangzhou.aliyuncs.com/dwg-aigc-paas/materials/a8610d001aaa412ab2e0433fc848b48f/thumb.jpg\\\",\\\"videoPath\\\":\\\"https://oss-cn-hangzhou.aliyuncs.com/dwg-aigc-paas/materials/a8610d001aaa412ab2e0433fc848b48f/output.mp4\\\"}\"",
        "startTime": "2023-02-17 16:53:26",
        "endTime": "2023-02-18 10:03:21",
        "status": 5
      },
      {
        "id": 7,
        "algoType": 12,
        "algoSubType1": "4K",
        "algoSubType2": null,
        "algoSubType3": null,
        "productParam": "{}",
        "startTime": "2023-02-17 16:56:26",
        "endTime": "2023-02-17 17:43:19",
        "status": 9
      }
    ]
  }
}

# 获取账户任务信息详情

# 接口描述

查询账户下某算法类型下全部任务的对应信息,以及当前的任务所处状态,原始输入内容,返回结果物等信息详情,任务列表支持分页。

# 请求地址

POST /api/2dvh/v1/task/listWithQueue

# 请求头

Content-Type: application/json

# 请求参数

字段 类型 必填 描述
userId Long False 用户id,默认为当前登录账户id
algoType Integer True 任务类型(11:TTS音色模型生成,12:人物形象模型生成,14:视频合成,20: 视频人物换脸,18:人物形象模型更新,25:音色转换 )
status Integer True 任务状态 (0:未开始,1:Dispatcher队列等待中,2:算法正在处理,3:已取消,5:已完成,9:异常, -1: 全部 )
key String False 任务ID/角色名称查询(精确匹配)
pageNo int False 当前页码 (默认 1)
pageSize int False 每页条数 (默认 10)
sortName String False 排序字段名
sortValue String False 排序顺序: asc, desc

# 请求样例

{
  "algoType": 12,
  "pageSize": 10,
  "pageNo": 1
}

# 响应元素

字段 类型 必填 描述
code Number True 0 - 成功, 其他- 异常
message String True 异常详细信息
data Object False data object ,异常时通常为空
  - pagination Pagination True 分页信息(参照通用数据结构说明)
  - result Object True 任务列表(参照下面说明)

任务列表

字段 类型 必填 描述
id Long True 任务id
algoType Integer True 任务类型(11:TTS音色模型生成,12:人物形象模型生成,14:视频合成,20: 视频人物换脸,18:人物形象模型更新,25:音色转换
materialId Long True 模型id
materialName String True 素材名称
queueInfo String False 排队信息
status Integer True 任务状态 0:未开始,1:Dispatcher队列等待中,2:算法正在处理,3:已取消,5:已完成,9:异常
productParam String True 任务结果json串,包含视频地址videoPath,视频时长duration,截图地址thumbPath
extendParam String False 扩展参数,人物形象模型生成时包含faceFeatureId
algoSubType1 String True 人物模型:模型规格:2K/4K,视频合成: 使用人物模型规格:2K/4K
algoSubType2 String False 视频合成:结果物格式:webm/mp4
algoSubType3 String False 视频合成:结果物帧率
taskInfo String True 任务初始参数及原始文件
algoId String True 算法任务id
message String False 错误信息
submitTime String True 算法提交时间(yyyy-MM-dd HH:mm:ss)
startTime String False 算法开始时间(yyyy-MM-dd HH:mm:ss)
endTime String False 算法截止时间(yyyy-MM-dd HH:mm:ss)
owner Long True 任务所属账户
ownerPhone String True 账户手机号码

# 响应样例

{
  "code": 0,
  "message": "success",
  "data": {
    "pagination": {
      "pageNo": 1,
      "numberPages": 1,
      "numberRecords": 2,
      "pageSize": 2,
      "startIndex": 0
    },
    "result": [
      {
        "id": 8833,
        "materialId": 8122,
        "materialName": "Mario_4_talk.mp4_sensetime-segment_type_绿幕分割",
        "productParam": "{\"pkgPath\": \"https://dwg-aigc-paas-test.oss-cn-hangzhou.aliyuncs.com/download/8/b6ecebc8233b47809dedd6731c052d15_s1/b6ecebc8233b47809dedd6731c052d15_s1_result.zip\", \"thumbPath\": \"https://dwg-aigc-paas-test.oss-cn-hangzhou.aliyuncs.com/download/8/b6ecebc8233b47809dedd6731c052d15_s1/b6ecebc8233b47809dedd6731c052d15_s1_result.png\", \"faceFeaturePath\": \"https://dwg-aigc-paas-test.oss-cn-hangzhou.aliyuncs.com/download/8/b6ecebc8233b47809dedd6731c052d15_s1/b6ecebc8233b47809dedd6731c052d15_s1_face_feature.zip\"}",
        "extendParam": "{\"faceFeatureId\": \"b6ecebc8233b47809dedd6731c052d15_s1\"}",
        "startTime": "2023-06-07 23:31:50",
        "endTime": "2023-06-08 05:19:29",
        "status": 5,
        "message": "{}",
        "algoType": 12,
        "algoId": "b6ecebc8233b47809dedd6731c052d15_s1",
        "algoSubType1": "4K",
        "algoSubType2": null,
        "algoSubType3": null,
        "submitTime": "2023-06-07 17:34:40",
        "ownerPhone": "18311096857",
        "owner": 8,
        "queueInfo": null,
        "taskInfo": "{\"create2DAvatarModel\": {\"videoUrl\": \"https://ailab-storage-eus.oss-us-west-1.aliyuncs.com/31_trim_result/Mario_4_talk.mp4?OSSAccessKeyId=LTAI5tE2Hq2BAqr8EBzxmSrR&Expires=37686060051&Signature=C1L%2FxpHD%2FW155s%2BuhTocyVvsUfo%3D\", \"accountId\": 8, \"assetScale\": 1.0, \"existTaskId\": 0, \"firstCreate\": true, \"materialName\": \"Mario_4_talk.mp4_sensetime-segment_type_绿幕分割\", \"segmentStyle\": 1, \"segmentGreenQuality\": 1}}"
      },
      {
        "id": 9093,
        "materialId": 8258,
        "materialName": "wu0609_sensetime-segment_type_绿幕分割",
        "productParam": null,
        "extendParam": null,
        "startTime": "2023-06-09 10:56:38",
        "endTime": null,
        "status": 2,
        "message": "{}",
        "algoType": 12,
        "algoId": "5f6006acb891496f93bfeeff601201fe_s1",
        "algoSubType1": "4K",
        "algoSubType2": null,
        "algoSubType3": null,
        "submitTime": "2023-06-09 10:56:36",
        "ownerPhone": "18311096857",
        "owner": 8,
        "queueInfo": null,
        "taskInfo": "{\"create2DAvatarModel\": {\"videoUrl\": \"http://dwg-aigc-paas.oss-cn-hangzhou.aliyuncs.com/wanxing_0606/zhuzong.mp4\", \"accountId\": 8, \"assetScale\": 1.0, \"existTaskId\": 0, \"firstCreate\": true, \"materialName\": \"wu0609_sensetime-segment_type_绿幕分割\", \"segmentStyle\": 1, \"segmentGreenQuality\": 1}}"
      },
      {
        "id": 8528,
        "materialId": 7908,
        "materialName": "Claire_3_talk.mp4_sensetime-segment_type_绿幕分割",
        "productParam": "{\"pkgPath\": \"https://dwg-aigc-paas-test.oss-cn-hangzhou.aliyuncs.com/download/8/1907b913f78845168529bad59f36a43f_s1/1907b913f78845168529bad59f36a43f_s1_result.zip\", \"thumbPath\": \"https://dwg-aigc-paas-test.oss-cn-hangzhou.aliyuncs.com/download/8/1907b913f78845168529bad59f36a43f_s1/1907b913f78845168529bad59f36a43f_s1_result.png\", \"faceFeaturePath\": \"https://dwg-aigc-paas-test.oss-cn-hangzhou.aliyuncs.com/download/8/1907b913f78845168529bad59f36a43f_s1/1907b913f78845168529bad59f36a43f_s1_face_feature.zip\"}",
        "extendParam": "{\"faceFeatureId\": \"1907b913f78845168529bad59f36a43f_s1\"}",
        "startTime": "2023-06-06 02:32:13",
        "endTime": "2023-06-06 20:17:19",
        "status": 9,
        "message": "{\"errorMsg\": \"Algorithm heart beat is overtime!!!\"}",
        "algoType": 12,
        "algoId": "1907b913f78845168529bad59f36a43f_s1",
        "algoSubType1": "4K",
        "algoSubType2": null,
        "algoSubType3": null,
        "submitTime": "2023-06-05 20:41:43",
        "ownerPhone": "18311096857",
        "owner": 8,
        "queueInfo": null,
        "taskInfo": "{\"create2DAvatarModel\": {\"videoUrl\": \"https://ailab-storage-eus.oss-us-west-1.aliyuncs.com/online_videos/Claire_3_talk.mp4?OSSAccessKeyId=LTAI5tE2Hq2BAqr8EBzxmSrR&Expires=1689391554&Signature=pMSBmAlawZ7h2sxjUO8Dk%2B1dHRg%3D\", \"accountId\": 8, \"assetScale\": 1.0, \"existTaskId\": 0, \"firstCreate\": true, \"materialName\": \"Claire_3_talk.mp4_sensetime-segment_type_绿幕分割\", \"segmentStyle\": 2, \"segmentGreenQuality\": 1}}"
      },
      {
        "id": 9161,
        "materialId": 8317,
        "materialName": "Eddie_3_talk_trim_sensetime_0_绿幕分割",
        "productParam": null,
        "extendParam": null,
        "startTime": null,
        "endTime": null,
        "status": 1,
        "message": "{}",
        "algoType": 18,
        "algoId": "1667070933254279169",
        "algoSubType1": "4K",
        "algoSubType2": null,
        "algoSubType3": null,
        "submitTime": "2023-06-09 15:28:48",
        "ownerPhone": "18311096857",
        "owner": 8,
        "queueInfo": "8/9",
        "taskInfo": "{\"rebuild2DAvatarModelVideo\": {\"assetEnd\": 120.0, \"modelUrl\": \"https://dwg-aigc-paas-test.oss-cn-hangzhou.aliyuncs.com/download/8/ba80636d8a77423083af66174375a130_s1/ba80636d8a77423083af66174375a130_s1_result.zip\", \"videoUrl\": \"http://dwg-aigc-paas.oss-cn-hangzhou.aliyuncs.com/wanxing_0606/Eddie_3_talk_trim.mp4.mp4\", \"accountId\": 8, \"assetScale\": 1.0, \"assetStart\": 60.0, \"existTaskId\": 0, \"firstCreate\": true, \"materialName\": \"Eddie_3_talk_trim_sensetime_0_绿幕分割\", \"segmentStyle\": 1, \"segmentGreenQuality\": 0}}"
      }
    ]
  }
}

# 取消任务

# 接口描述

支持用户对于进行中的任务进行取消任务的操作,取消成功后任务状态将置为已取消。

# 请求地址

GET /api/2dvh/v1/task/cancel

# 请求头

Content-Type: application/json

# 请求参数

字段 类型 必填 描述
id Long True 任务id

# 请求样例

http://xxx/api/2dvh/v1/task/cancel?id=1

# 响应元素

字段 类型 必填 描述
code Integer True 0 - 成功, 其他 - 异常
message String True 异常详细信息
data Object False 值为空

# 响应样例

{
    "code": 0,
    "message": "success",
    "data": null
}

# 删除任务

# 接口描述

支持用户对于非进行中的任务进行删除任务的操作,删除后任务信息将不再保存。

# 请求地址

DELETE /api/2dvh/v1/task/del

# 请求头

Content-Type: application/json

# 请求参数

字段 类型 必填 描述
id Long True 任务id

# 请求样例

http://xxx/api/2dvh/v1/task/del/id

# 响应元素

字段 类型 必填 描述
code Integer True 0 - 成功, 其他 - 异常
message String True 异常详细信息
data Object False 值为空

# 响应样例

{
    "code": 0,
    "message": "success",
    "data": null
}

# 重启任务

# 接口描述

支持用户对于异常的的任务进行重启任务的操作,重启后任务ID保持不变。

# 请求地址

GET /api/2dvh/v1/task/restart

# 请求头

Content-Type: application/json

# 请求参数

字段 类型 必填 描述
id Long True task id

# 请求样例

http://xxx/api/2dvh/v1/task/restart?id=1

# 响应元素

字段 类型 必填 描述
code Integer True 0 - 成功, 其他 - 异常
message String True 异常详细信息
data Object False 任务id

# 响应样例

{
    "code": 0,
    "message": "success",
    "data": 2
}

# 查询任务各阶段耗时信息

# 接口描述

查询任务各阶段耗时信息,当前仅支持视频合成。

# 请求地址

GET /api/2dvh/v1/task/phase/cost

# 请求头

Content-Type: application/json

# 请求参数

字段 类型 必填 描述
id Long True 任务id

# 请求样例

https://xxx/api/2dvh/v1/task/phase/cost?id=1

# 响应元素

字段 类型 必填 描述
code Integer True 0 - 成功, 其他 - 异常
message String True 异常详细信息
data Array False 值为空
  - phase String True 算法阶段:asset_download:素材下载
parse_json:json解析时间
st_mobile_change_package:加载数字人资源
preprocess:前处理时间,准备各类资源
main_process:音视频处理
postprocess:ffmpeg视频后处理
result_upload:结果上传
  - startTime String True 阶段开始时间(yyyy-MM-dd HH:mm:ss)
  - endTime String True 阶段完成时间(yyyy-MM-dd HH:mm:ss)
  - costTime String True 耗时(毫秒)
  - callCount Integer False 阶段重复次数,该值为空表示阶段无重复

# 响应样例

{
  "code": 0,
  "message": "success",
  "data": [
    {
      "id": 291340,
      "phase": "asset_download",
      "startTime": "2023-11-01 16:41:17",
      "endTime": "2023-11-01 16:41:17",
      "costTime": 0
    },
    {
      "id": 291340,
      "phase": "parse_json",
      "startTime": "2023-11-01 16:41:17",
      "endTime": "2023-11-01 16:41:18",
      "costTime": 124
    },
    {
      "id": 291340,
      "phase": "st_mobile_change_package",
      "startTime": "2023-11-01 16:41:18",
      "endTime": "2023-11-01 16:41:20",
      "costTime": 2242
    },
    {
      "id": 291340,
      "phase": "preprocess",
      "startTime": "2023-11-01 16:41:20",
      "endTime": "2023-11-01 16:41:21",
      "costTime": 1238
    },
    {
      "id": 291340,
      "phase": "main_process",
      "startTime": "2023-11-01 16:41:21",
      "endTime": "2023-11-01 16:41:25",
      "costTime": 3692
    },
    {
      "id": 291340,
      "phase": "result_upload",
      "startTime": "2023-11-01 16:41:25",
      "endTime": "2023-11-01 16:41:25",
      "costTime": 189
    },
    {
      "id": 291340,
      "phase": "postprocess",
      "startTime": "2023-11-01 16:41:25",
      "endTime": "2023-11-01 16:41:25",
      "costTime": 457
    }
  ]
}

# 任务完成回调参数

使用API时,系统将通过填写的接口回调地址,返回任务状态等信息,若需要任务回调功能,则需联系管理员在创建账户时提供接口回调地址。 如果用户配置了AuthKey将返回鉴权信息timestamp和signature,具体参考<HTTP回调事件通知>。

提供的接口实现中HTTP Method为POST,Content-Type应为application/json

字段 类型 必填 描述
taskId Integer True 任务 id
materialId Integer True 素材 id
materialName String True 素材名称
algoType Integer True 任务类型(11:TTS音色模型生成,12:人物形象模型生成,14:视频合成,20: 视频人物换脸,18:人物形象模型更新,25:音色转换
algoSubType1 String True 人物模型:模型规格:2K/4K,视频合成:使用人物模型规格:2K/4K
algoSubType2 String False 视频合成:结果物格式:webm/mp4
algoSubType3 String False 视频合成:结果帧率
status Integer True 状态 3:已取消,5:已完成,9:异常
taskResult String False 报错信息

以上即为平台可以提供的全部算法能力。

最后更新: 2024/4/12 上午11:50:03