本文介紹了有關視頻翻譯介面 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資料結構
關於計費
計費說明請參見視頻翻譯計費說明