本文介绍了有关视频翻译接口 SubmitVideoTranslationJob - 提交视频翻译任务 的参数与示例,以及通过GetSmartHandleJob获取视频翻译任务结果的参数。
目前已开通的区域为:
字幕级翻译:华东2(上海)、华北2(北京)、华南1(深圳)、华东1(杭州)、亚太东南 1(新加坡)、美洲(美国-西部)
语音级翻译:华东2(上海)、华北2(北京)、华南1(深圳)、华东1(杭州)、亚太东南 1(新加坡)、美洲(美国-西部)
面容级翻译:华东 2(上海)、亚太东南 1(新加坡),其他地域暂不支持。
SubmitVideoTranslationJob参数说明
如何通过参数区分字幕级、语音级、面容级翻译?
字幕级翻译:需要将NeedSpeechTranslate和NeedFaceTranslate皆设置为false,对应的配置参数为SubtitleTranslate;
语音级翻译:需要将NeedSpeechTranslate设置为true,NeedFaceTranslate设置为false,对应的配置参数为SpeechTranslate;
面容级翻译:需要将NeedFaceTranslate设置为true,NeedSpeechTranslate设置为false,对应的配置参数为FaceTranslate;
参数名 | 类型 | 必填项 | 名称 | 描述 |
InputConfig | String | 是 | 输入配置 |
|
OutputConfig | String | 是 | 输出配置 |
|
EditingConfig | String | 是 | 翻译配置 |
|
Title | String | 否 | 标题 | |
Description | String | 否 | 描述 | |
UserData | String | 否 | 自定义信息 |
InputConfig 参数说明
参数名 | 类型 | 必填项 | 名称 | 描述 |
Type | String | 是 | 输入类型 |
说明
|
Video | String | 否 | 视频媒资 Id 或地址 |
|
Audio | String | 否 | 音频媒资 Id 或地址 |
|
Subtitle | String | 否 | 字幕媒资 Id 或地址 |
|
OutputConfig 参数说明
参数名 | 类型 | 必填项 | 名称 | 描述 |
MediaURL | String | 是 | 输出地址 |
|
EditingConfig 参数说明
参数名 | 类型 | 必填项 | 名称 | 描述 |
SourceLanguage | String | 是 | 源语言 | 源语言对应的代码,例如zh 取值范围:
语言代码对照实际以语言代码列表为准 |
TargetLanguage | String | 是 | 翻译目标语言 | 目标语言对应的代码,例如en 取值范围:
语言代码对照实际以语言代码列表为准 |
DetextArea | String | 否 | 设置字幕擦除 |
|
SupportEditing | Boolean | 否 | 是否支持二次编辑。如果需要对翻译结果进行二次修正,则需开启该开关。 |
|
BilingualSubtitle | Boolean | 否 | 是否输出双语语种字幕 |
同时支持字幕级、面容级、声音级翻译 |
String | 否 | 字幕级翻译配置 |
| |
NeedSpeechTranslate | Boolean | 否 | 是否需要语音级翻译 |
|
String | 否 | 语音级翻译配置 |
| |
NeedFaceTranslate | Boolean | 否 | 是否需要面容级翻译 |
|
String | 否 | 面容级翻译配置 |
|
SubtitleTranslate 参数说明
名称 | 类型 | 必填项 | 名称 | 描述 |
OcrArea | String | 否 | OCR 识别区域 |
|
SubtitleConfig | String | 否 | 字幕合成配置 |
|
SpeechTranslate 参数说明
名称 | 类型 | 必填项 | 名称 | 描述 |
OcrArea | String | 否 | OCR 识别区域 |
|
CustomSrtType | String | 否 | 自定义输入srt文件类型 |
|
SubtitleTimeForce | Boolean | 否 | 仅翻译字幕的时间范围 | 开启后,语音翻译将严格限制在OCR识别的字幕或指定srt的时间范围内。默认为false。 |
SubtitleConfig | String | 否 | 字幕合成配置 |
|
OriginalJobId | String | 否 | 原任务 Id |
|
FaceTranslate 参数说明
名称 | 类型 | 必填项 | 名称 | 描述 |
OcrArea | String | 否 | OCR 识别区域 |
|
CustomSrtType | String | 否 | 自定义输入srt文件类型 |
|
SubtitleTimeForce | Boolean | 否 | 仅翻译字幕的时间范围 | 开启后,语音翻译将严格限制在OCR识别的字幕或指定srt的时间范围内。默认为false。 |
SubtitleConfig | String | 否 | 字幕合成配置 |
|
SpeechDurationThres | Float | 否 | 面容翻译时长阈值 | 如果一句话的时长小于该阈值,则不再做口型对齐,默认为1s。 |
FacialClarity | Float | 否 | 面容清晰度设置 | 0-1,默认为1,值越高面容越清晰,若源素材视频清晰度较低,则建议该值调低。 |
ReferFaceNum | Integer | 否 | 关联图片数量 | 1-视频帧数,默认为25,值越大,参考图片数量越多,效果越好,合成速度越慢,默认设置为25,如果不追求合成效果,但是需要提速,则可以设置该值小一些。 |
参数示例
字幕级翻译
源文件=字幕文件
{
"InputConfig": {
"Type": "Subtitle",
"Subtitle": "https://******.oss-cn-shanghai.aliyuncs.com/ice-generated/4e1021a0720f71eeb755f6f7d6496302/snapshots/sprite/test.srt"
},
"EditingConfig": {
"SourceLanguage": "zh",
"TargetLanguage": "en"
},
"Title": "1735798516693.srt",
"OutputConfig": {
"MediaURL": "https://****.oss-cn-shanghai.aliyuncs.com/ice-generated/4e1021a0720f71eeb755f6f7d6496302/snapshots/sprite/new.srt"
}
}
源文件=视频文件
{
"InputConfig": {
"Type": "Video",
"Video": "1628ae20c36******f6f7c77a6302"
},
"EditingConfig": {
"SourceLanguage": "zh",
"TargetLanguage": "en",
"DetextArea": [
[0, 0.64, 1, 0.13]],
"BilingualSubtitle": false,
"SubtitleTranslate": {
"OcrArea": [0, 0.64, 1, 0.15],
"SubtitleConfig": {
"Type": "Text",
"FontSize": 95,
"FontColorOpacity": 1,
"Color": "#ffffff",
"X": 0.5,
"Y": 0.686,
"Angle": 0,
"Spacing": 0,
"TextWidth": 0.9,
"Font": "Alibaba PuHuiTi",
"FontColor": "#ffffff",
"FontFace": {
"Bold": false,
"Italic": false,
"Underline": false
},
"SizeRequestType": "RealDim",
"SubtitleEffects": [],
"LineSpacing": 0,
"BorderStyle": 1,
"Outline": 0,
"Alignment": "Center"
}
},
"SupportEditing": true,
"NeedSpeechTranslate": false
},
"Title": "have a test",
"OutputConfig": {
"MediaURL": "https://*****.oss-cn-shanghai.aliyuncs.com/ice-generated/test.mp4"
}
}
源文件=视频文件+字幕文件
Tab 正文
{
"InputConfig": {
"Type": "Video",
"Video": "4e92fa60c995*****6f7c77a6302",
"Subtitle": "https://*****.oss-cn-shanghai.aliyuncs.com/ice-generated/4e1021a072****5f6f7d6496302/snapshots/sprite/test.srt"
},
"EditingConfig": {
"SourceLanguage": "zh",
"TargetLanguage": "en",
"DetextArea": [[0, 0.64, 1, 0.14]],
"BilingualSubtitle": false,
"SubtitleTranslate": {
"OcrArea": "Auto",
"SubtitleConfig": {
"Type": "Text",
"FontSize": 95,
"FontColorOpacity": 1,
"Color": "#ffffff",
"X": 0.5,
"Y": 0.686,
"Angle": 0,
"Spacing": 0,
"TextWidth": 0.9,
"Font": "Alibaba PuHuiTi",
"FontColor": "#ffffff",
"FontFace": {
"Bold": false,
"Italic": false,
"Underline": false
},
"SizeRequestType": "RealDim",
"SubtitleEffects": [],
"LineSpacing": 0,
"BorderStyle": 1,
"Outline": 0,
"Alignment": "Center"
}
},
"SupportEditing": true,
"NeedSpeechTranslate": false
},
"Title": "1735898570421.mp4",
"OutputConfig": {
"MediaURL": "https://****.oss-cn-shanghai.aliyuncs.com/ice-generated/******/snapshots/sprite/1735898570421.mp4"
}
}
语音级翻译
源文件=视频文件
{
"InputConfig": {
"Type": "Video",
"Video": "1628ae20c36******8f6f7c77a6302"
},
"EditingConfig": {
"SourceLanguage": "zh",
"TargetLanguage": "en",
"DetextArea": [[0, 0.64, 1, 0.15]],
"SupportEditing": true,
"BilingualSubtitle": false,
"NeedSpeechTranslate": true,
"SpeechTranslate": {
"SubtitleTimeForce": false,
"SubtitleConfig": {
"Type": "Text",
"FontSize": 95,
"FontColorOpacity": 1,
"Color": "#ffffff",
"X": 0.5,
"Y": 0.686,
"Angle": 0,
"Spacing": 0,
"TextWidth": 0.9,
"Font": "Alibaba PuHuiTi",
"FontColor": "#ffffff",
"FontFace": {
"Bold": false,
"Italic": false,
"Underline": false
},
"SizeRequestType": "RealDim",
"SubtitleEffects": [],
"LineSpacing": 0,
"BorderStyle": 1,
"Outline": 0,
"Alignment": "Center"
}
}
},
"Title": "have a test",
"OutputConfig": {
"MediaURL": "https://******.oss-cn-shanghai.aliyuncs.com/ice-generated/4e1021a0720f71eeb755f6f7d6496302/snapshots/sprite/1735798757385.mp4"
}
}
源文件=视频文件+字幕文件
{
"InputConfig": {
"Type": "Video",
"Video": "738d94a0ce87******af6f7c6696302",
"Subtitle": "https://********.oss-cn-test.aliyuncs.com/test.srt"
},
"EditingConfig": {
"SourceLanguage": "zh",
"TargetLanguage": "en",
"DetextArea": "Auto",
"SupportEditing": true,
"BilingualSubtitle": false,
"NeedSpeechTranslate": true,
"SpeechTranslate": {
"SubtitleTimeForce": false,
"SubtitleConfig": {
"Type": "Text",
"FontSize": 95,
"FontColorOpacity": 1,
"Color": "#ffffff",
"X": 0.5,
"Y": 0.686,
"Angle": 0,
"Spacing": 0,
"TextWidth": 0.9,
"Font": "Alibaba PuHuiTi",
"FontColor": "#ffffff",
"FontFace": {
"Bold": false,
"Italic": false,
"Underline": false
},
"SizeRequestType": "RealDim",
"SubtitleEffects": [],
"LineSpacing": 0,
"BorderStyle": 1,
"Outline": 0,
"Alignment": "Center"
},
"OcrArea": "Auto",
"CustomSrtType": "SourceSrt"
}
},
"Title": "1736485935837.mp4",
"OutputConfig": {
"MediaURL": "https://*****.oss-cn-***.aliyuncs.com/test.mp4"
}
}
源文件=音频文件
{
"InputConfig": {
"Type": "Audio",
"Audio": "2f552010c8d******e7f7f4586303"
},
"EditingConfig": {
"SourceLanguage": "zh",
"TargetLanguage": "en",
"NeedSpeechTranslate": true
},
"Title": "have a test",
"OutputConfig": {
"MediaURL": "https://******.oss-cn-shanghai.aliyuncs.com/ice-generated/4e1021a0720f***f6f7d6496302/snapshots/sprite/test.wav"
}
}
面容级翻译
{
"InputConfig": {
"Type": "Video",
"Video": "1628ae20c36******8f6f7c77a6302"
},
"EditingConfig": {
"SourceLanguage": "zh",
"TargetLanguage": "en",
"DetextArea": [[0, 0.64, 1, 0.15]],
"SupportEditing": true,
"BilingualSubtitle": false,
"NeedFaceTranslate": true,
"FaceTranslate": {
"SubtitleConfig": {
"Type": "Text",
"FontSize": 95,
"FontColorOpacity": 1,
"Color": "#ffffff",
"X": 0.5,
"Y": 0.686,
"Angle": 0,
"Spacing": 0,
"TextWidth": 0.9,
"Font": "Alibaba PuHuiTi",
"FontColor": "#ffffff",
"FontFace": {
"Bold": false,
"Italic": false,
"Underline": false
},
"SizeRequestType": "RealDim",
"SubtitleEffects": [],
"LineSpacing": 0,
"BorderStyle": 1,
"Outline": 0,
"Alignment": "Center"
},
"SpeechDurationThres": 1,
"FacialClarity": 1,
"ReferFaceNum": 25,
"SubtitleTimeForce": false
}
},
"Title": "have a test",
"OutputConfig": {
"MediaURL": "https://******.oss-cn-shanghai.aliyuncs.com/ice-generated/4e1021a0720f71eeb755f6f7d6496302/snapshots/sprite/1735798757385.mp4"
}
}
GetSmartHandleJob参数说明
AiResult返回参数说明
返回参数分类 | 参数名 | 类型 | 名称 |
公共 | EditingProjectId | String | 二次编辑工程Id |
MediaURL | String | 成片媒资URL地址 | |
MediaId | String | 成片媒资Id | |
DetextVideoURL | String | 经过字幕擦除后的视频文件URL地址 | |
DetextVideoMediaId | String | 经过字幕擦除后的视频媒资Id | |
字幕级翻译 | OriginalSubtitleMediaId | String | 源(原始)字幕文件媒资Id |
OriginalSubtitleURL | String | 源(原始)字幕文件媒资URL地址 | |
TranslatedSubtitleMediaId | String | 字幕翻译结果-目标语言字幕文件媒资Id | |
TranslatedSubtitleURL | String | 字幕翻译结果-目标语言字幕文件媒资URL地址 | |
TranslatedText | String | 纯字幕翻译结果文本 | |
TranslatedTextArray | String | 纯字幕翻译结果文本数组(多条字幕输入) | |
声音级翻译 | SpeechTranslatedSubtitleMediaId | String | 语音翻译结果-用于成片展示的字幕文件媒资Id |
SpeechTranslatedSubtitleURL | String | 语音翻译结果-用于成片展示的字幕文件地址 | |
SpeechTranslatedSubtitleURLSigned | String | 语音翻译结果-用于成片展示的字幕文件地址,带鉴权 | |
SpeechTranslatedSubtitleMediaIdForFix | String | 用于二次翻译修正的字幕文件媒资Id; | |
SpeechTranslatedSubtitleURLForFix | String | 用于二次翻译修正的字幕文件地址,带鉴权; | |
SpeechBilingualSubtitleMediaId | String | 声音翻译双语结果文件媒资Id | |
SpeechBilingualSubtitleURL | String | 声音翻译双语结果文件媒资URL | |
SpeechTranslationJobId | String | 声音翻译JobId(用于语音的二次修正) | |
TranslatedAudioMediaId | String | 声音翻译音频文件媒资Id | |
TranslatedAudioMediaURL | String | 声音翻译音频文件媒资URL地址 | |
面容级翻译 | FaceTranslationMediaId | String | 口型对齐视频文件媒资Id |
场景示例
语音翻译 - 人工修正
背景说明
如果对语音翻译的结果不满意,可以通过人工修正字幕文件的方式,二次提交翻译进行修正。
流程描述
进行首次提交语音翻译(注意:如果需要后续支持人工修正,需要设置SupportEditing
为true
),完整参数示例如下:
{
"InputConfig": {
"Type": "Video",
"Video": "*****a0052ff71efbfd4e7e6c66*****"
},
"OutputConfig": {
"MediaURL": "https://your-bucket.oss-cn-shanghai.aliyuncs.com/video.mp4"
},
"EditingConfig": {
"SourceLanguage": "zh",
"TargetLanguage": "en",
"SupportEditing": true,
"NeedSpeechTranslate": true
}
}
首次提交语音翻译结果如下:
{
"MediaId": "*****d306b6d71efbf98f6f7f55*****",
"TranslatedAudioMediaId": "*****d306b6d71efbf98f6f7f5*****",
"SpeechTranslatedSubtitleURL": "http://your-bucket.oss-cn-shanghai.aliyuncs.com/video_subtitle_asr_en.srt",
"SpeechTranslatedSubtitleURLSigned": "http://your-bucket.oss-cn-shanghai.aliyuncs.com/***.srt",
"SpeechTranslatedSubtitleURLForFix": "http://your-bucket.oss-cn-shanghai.aliyuncs.com/***.srt",
"SpeechTranslationJobId": "*****74f329d4c03b63e7f7dac8*****"
}
其中:
MediaId:成片的媒资 Id;
TranslatedAudioMediaId:语音翻译得到的音频媒资 Id;
SpeechTranslatedSubtitleURL:语音翻译得到的用于成片展示的字幕文件地址;
SpeechTranslatedSubtitleURLSigned:语音翻译得到的用于成片展示的字幕文件地址,带鉴权;
SpeechTranslatedSubtitleURLForFix:用于二次翻译修正的字幕文件地址,带鉴权;
SpeechTranslationJobId:语音翻译的 JobId,人工修正时填入的 OriginalJobId 需要依赖此值。
如果对翻译效果不满意,请下载SpeechTranslatedSubtitleURLForFix
中的字幕文件,并对字幕文件中的内容进行修改,再次提交语音翻译,本次语音翻译会根据修改后的字幕内容进行重新生成音频。
二次修正时参数示例如下,主要包括原视频,修正后的字幕文件,原音频翻译任务 Id:
{
"InputConfig": {
"Type": "Video",
"Video": "*****a0052ff71efbfd4e7e6c66*****",
"Subtitle": "https://your-bucket.oss-cn-shanghai.aliyuncs.com/new_subtitle.srt"
},
"OutputConfig": {
"MediaURL": "https://your-bucket.oss-cn-shanghai.aliyuncs.com/video.mp4"
},
"EditingConfig": {
"SourceLanguage": "zh",
"TargetLanguage": "en",
"SupportEditing": true,
"NeedSpeechTranslate": true,
"SpeechTranslate": {
"OriginalJobId": "*****b5d5d604916bb898b3066*****"
}
}
}