本文介绍了有关视频翻译接口 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;
参数名 | 类型 | 必填项 | 名称 | 描述 |
String | 是 | 输入配置 |
| |
String | 是 | 输出配置 |
| |
String | 是 | 翻译配置 |
| |
Title | String | 否 | 标题 | |
Description | String | 否 | 描述 | |
UserData | String | 否 | 自定义信息,Json 格式,长度限制为 512 字节。 |
InputConfig 参数说明
参数名 | 类型 | 必填项 | 名称 | 描述 |
Type | String | 是 | 输入类型 |
说明
|
Video | String | 否 | 视频媒资 Id 或地址 |
|
Audio | String | 否 | 音频媒资 Id 或地址 |
|
Subtitle | String | 否 | 字幕媒资 Id 或地址 |
|
OutputConfig 参数说明
参数名 | 类型 | 必填项 | 名称 | 描述 |
OutputTarget | String | 否 | 输出类型 | 指定输出为 OSS 还是 VOD
|
MediaURL | String | 是 | 输出地址 |
|
StorageLocation | String | 否 | VOD 存储地址 |
例如:outin-*****c7d2a3811eb83da00163e0*****.oss-cn-shanghai.aliyuncs.com |
FileName | String | 否 | VOD 文件名 |
|
Width | Integer | 否 | 成片宽度,单位px |
|
Height | Integer | 否 | 成片高度,单位px |
|
JSONObject | 否 | {"Crf": 27} | 输出视频流相关配置,Crf、Codec等 |
EditingConfig 参数说明
参数名 | 类型 | 必填项 | 名称 | 描述 |
SourceLanguage | String | 是 | 源语言 |
|
TargetLanguage | String | 是 | 翻译目标语言 |
|
DetextArea | String | 否 | 设置字幕擦除 |
|
SupportEditing | Boolean | 否 | 是否支持二次编辑。如果需要对翻译结果进行二次修正,则需开启该开关。 |
|
BilingualSubtitle | Boolean | 否 | 是否输出双语语种字幕 |
说明 如果您希望翻译结果输出的成片不显示字幕,则需要将SubtitleTrackClip.FontSize的值设置为0 |
String | 否 | 字幕级翻译配置 |
| |
NeedSpeechTranslate | Boolean | 否 | 是否需要语音级翻译 |
|
String | 否 | 语音级翻译配置 |
| |
NeedFaceTranslate | Boolean | 否 | 是否需要面容级翻译 |
|
String | 否 | 面容级翻译配置 |
| |
TextSource | String | 否 | 指定字幕来源的方式 |
|
CustomParameter | String | 否 | 视频翻译自定义参数 |
|
HotwordLibraryIdList | String | 否 | 热词库ID列表 |
说明 热词库的功能说明:
|
FECanvas | JSON | 否 | 前端预览画布的宽高配置 |
说明 FECanvas使用说明:若配置FECanvas为{"Width": 1080,"Height": 1920},FontSize为100,实际视频成片宽高为720*1280,则最终渲染的字幕FontSize为FontSize * Math.min(outputWidth/feWidth, outputHeight/feHeight) = 100 * Math.min(720/1080, 1280/1920) = 67. |
SourceLanguage 取值范围
字幕级翻译 | 语音级翻译 | 面容级翻译 | ||
当字幕来源为OCR识别(即TextSource=OCR或OCR_ASR时) | 当字幕来源为ASR识别(即TextSource=ASR时) | 当字幕来源为srt字幕文件(即传入InputConfig.Subtitle时) | ||
|
|
|
|
|
TargetLanguage 取值范围
字幕级翻译 | 语音级翻译 | 面容级翻译 |
|
|
|
SubtitleTranslate 参数说明
名称 | 类型 | 必填项 | 名称 | 描述 |
OcrArea | String | 否 | OCR 识别区域 |
|
SubtitleConfig | String | 否 | 字幕合成配置 |
|
SpeechTranslate 参数说明
名称 | 类型 | 必填项 | 名称 | 描述 |
OcrArea | String | 否 | OCR 识别区域 |
|
CustomSrtType | String | 否 | 自定义输入srt文件类型 |
示例:例如进行中文->英文的翻译
|
SubtitleTimeForce | Boolean | 否 | 是否仅翻译字幕的时间范围 |
|
SubtitleConfig | String | 否 | 字幕合成配置 |
|
OriginalJobId | String | 否 | 原任务 Id |
|
SkipSong | Integer | 否 | 跳过清唱 |
|
FaceTranslate 参数说明
名称 | 类型 | 必填项 | 名称 | 描述 |
OcrArea | String | 否 | OCR 识别区域 |
|
CustomSrtType | String | 否 | 自定义输入srt文件类型 |
示例:例如进行中文->英文的翻译
|
SubtitleTimeForce | Boolean | 否 | 是否仅翻译字幕的时间范围 |
|
SubtitleConfig | String | 否 | 字幕合成配置 |
|
SpeechDurationThres | Float | 否 | 面容翻译时长阈值 | 如果一句话的时长低于该阈值,则将不再进行口型对齐。默认值设定为1秒。建议将其设置为大于或等于1秒。 时长上限不得超过输入视频的总时长。 |
FacialClarity | Float | 否 | 面容清晰度设置 | 0-1,默认为1,值越高面容越清晰,若源素材视频清晰度较低,则建议该值调低。 |
CustomParameter 参数示例说明
声音/面容翻译的常用参数值示例 | 用法含义 |
--add -dl |
|
参数示例
字幕级翻译
源文件=字幕文件
纯srt字幕翻译按文本翻译计费,详见文本翻译计费
{
"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"
}
}
源文件=视频文件+字幕文件
{
"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,
"SubtitleTimeForce": false
}
},
"Title": "have a test",
"OutputConfig": {
"MediaURL": "https://******.oss-cn-shanghai.aliyuncs.com/ice-generated/4e1021a0720f71eeb755f6f7d6496302/snapshots/sprite/1735798757385.mp4"
}
}
GetSmartHandleJob参数说明
AiResult返回参数说明
单目标语言
当TargetLanguage只设置一种语言时,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 |
返回参数示例
{
"SpeechTranslatedSubtitleURL": "http://[your-bucket].oss-[your-region-id].aliyuncs.com/test1.srt",
"MediaId": "****9cb015bb71f0b96ff7f6d449****",
"TranslatedAudioMediaId": "****df80e79d71efa44ae7f6c449****",
"SpeechTranslatedSubtitleURLForFix": "http://[your-bucket].oss-[your-region-id].aliyuncs.com/test2.srt",
"EditingProjectId": "****febec2bf4377b923cf5b1742****",
"DetextVideoURL": "http://[your-bucket].oss-[your-region-id].aliyuncs.com/test3.mp4",
"FaceTranslationMediaId": "****138015bb71f0b96ff7f6d449****",
"SpeechTranslationJobId": "****0c827a664b4f88b33d8d46e3****"
}
多目标语言
当TargetLanguage设置了多个目标语言时,AiResult返回参数如下:
参数名 | 类型 | 参数说明 |
DetextVideoURL | String | 经过字幕擦除后的视频文件URL地址 |
DetextVideoMediaId | String | 经过字幕擦除后的视频媒资Id |
VideoTranslationAiResultMap | JSON |
VideoTranslationAiResultMap的value值说明
返回参数分类 | 参数名 | 类型 | 名称 |
公共 | MediaURL | String | 单个语种成片媒资URL地址 |
MediaId | 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 |
返回参数示例
{
"VideoTranslationAiResultMap": {
"en": {
"SpeechTranslatedSubtitleURL": "http://[your-bucket].oss-[your-region-id].aliyuncs.com/test1.srt",
"MediaId": "****4d00087171f0bf81f6f7d44b****",
"TranslatedAudioMediaId": "****df80e79d71efa44ae7f6c449****",
"SpeechTranslatedSubtitleURLForFix": "http://[your-bucket].oss-[your-region-id].aliyuncs.com/test2.srt",
"EditingProjectId": "****983759c045c387146888713d****",
"SpeechTranslationJobId": "****33cc65164f13aace55a0f0d3****"
},
"es": {
"SpeechTranslatedSubtitleURL": "http://[your-bucket].oss-[your-region-id].aliyuncs.com/test3.srt",
"MediaId": "****cec0087171f09033f7f6d449****",
"TranslatedAudioMediaId": "****a7f0085671f0bf81f6f7d44b****",
"SpeechTranslatedSubtitleURLForFix": "http://[your-bucket].oss-[your-region-id].aliyuncs.com/test4.srt",
"EditingProjectId": "****d16f4a874c4898d254d4b68e****",
"SpeechTranslationJobId": "****f705193c404e9bec19859a11****"
}
},
"DetextVideoURL": "http://[your-bucket].oss-[your-region-id].aliyuncs.com/test5.mp4"
}
场景示例
语音翻译 - 人工修正
背景说明
如果对语音翻译的结果不满意,可以通过人工修正字幕文件的方式进行二次提交,以便对翻译结果进行修正。
流程描述
如果需要后续支持语音翻译的人工修正,在第一次提交视频翻译任务时,需要将参数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参数中的srt字幕文件,并对字幕文件中的内容进行修改,再次提交语音翻译,本次语音翻译会根据修改后的字幕内容进行重新生成音频。
可在SpeechTranslatedSubtitleURLForFix中的srt文件中设置特殊指令,以干预语音翻译的修正的效果。详见下文语音修正标记参数说明
二次修正时参数示例如下,主要包括原视频、修正后的字幕文件、原音频翻译任务 Id、字幕样式配置:
在提交二次翻译修正任务时,务必确保InputConfig.Subtitle传递的是通过SpeechTranslatedSubtitleURLForFix修正后的双语字幕。
{
"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*****",
"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"
}
}
}
}
语音修正标记参数说明
不允许出现单行字幕内容和修正标记同时为空的情况(包括空格和跳格-Tab键),否则可能导致语音翻译的修正失败。如需使字幕呈现为空行,请通过语音修正标记明确指示声音的处理方式。例如:若需删除整行字幕而不更改声音,则可使用<--onlymodifytext>进行标记。
语音修正标记 | 指令名称 | 说明 |
<--copy> | 使用原声 | 在当前行字幕的时间戳范围内的声音将被替换为视频的原始音频。 |
<--fsttran> | 使用首次翻译结果 | 在当前行字幕的时间戳范围内的声音将被替换为首次翻译结果对应的音频。 |
<--mute> | 发言人静音 | 在当前行字幕的时间戳范围内,将发言人的声音静音处理。 |
<--mute_all> | 全部静音 | 在当前行字幕的时间戳范围内,将所有声音进行静音处理。 |
<--onlymodifytext> | 仅修改字幕 | 在当前行字幕的时间戳范围内,仅修改字幕内容,但不改变声音。 |
以下是一个srt字幕文件示例,语音修正标记的规范使用示例如下所示:
1
00:00:01,000 --> 00:00:03,000
大家好,
<--copy>Hello everyone,
2
00:00:03,500 --> 00:00:06,000
欢迎来到今天的讲座。
<--fsttran>welcome to today's lecture.
3
00:00:07,000 --> 00:00:10,000
我们将讨论未来的技术趋势。
<--mute>We'll discuss the future technology trends.
4
00:00:11,000 --> 00:00:14,000
请大家准备好提问。
<--mute_all>Please get ready to ask questions.
5
00:00:15,000 --> 00:00:18,000
现在让我们开始吧。
<--onlymodifytext>Now, let's get started.
自定义热词库的应用
背景说明
可通过配置参数EditingConfig.HotwordLibraryIdList来实现:
指定热词的转译结果;
提升特定语音识别场景下的热词识别率。
OpenAPI交互流程
图中涉及的热词相关API:
创建热词库:CreateHotwordLibrary
查询所有热词库:ListHotwordLibraries
查询指定热词库详情:GetHotwordLibrary
修改指定热词库信息:UpdateHotwordLibrary
删除指定热词库:DeleteHotwordLibrary
热词库关键参数说明:Hotword数据结构
SDK调用示例
相关文档
创建视频翻译任务:SubmitVideoTranslationJob - 提交视频翻译任务
获取视频翻译任务结果:GetSmartHandleJob - 获取视频翻译任务结果
获取视频翻译任务列表:ListSmartJobs - 获取视频翻译任务列表
删除视频翻译任务:DeleteSmartJob - 删除任务
关于视频翻译操作指南请参见视频翻译操作指南
自定义热词库相关API请参见热词管理、Hotword数据结构
关于计费
计费说明请参见视频翻译计费说明