このトピックでは、SubmitVideoTranslationJob API 操作のパラメーターについて説明し、例を示します。また、GetSmartHandleJob を使用して動画翻訳の結果を取得するためのパラメーターについても説明します。
このサービスは、次のリージョンで利用できます:
字幕レベルの翻訳: 中国 (上海)、中国 (北京)、中国 (深圳)、中国 (杭州)、アジア太平洋 SE 1 (シンガポール)、米国 (米国西部)
音声レベルの翻訳: 中国 (上海)、中国 (北京)、中国 (深圳)、中国 (杭州)、アジア太平洋 SE 1 (シンガポール)、米国 (米国西部)
顔レベルの翻訳: 中国 (上海)、アジア太平洋 SE 1 (シンガポール)。その他のリージョンはサポートされていません。
SubmitVideoTranslationJob パラメーター
次のパラメーターを使用して、字幕レベル、音声レベル、顔レベルの翻訳を区別できます:
字幕レベルの翻訳: NeedSpeechTranslate と NeedFaceTranslate パラメーターの両方を false に設定します。対応する構成パラメーターは SubtitleTranslate です。
音声レベルの翻訳: NeedSpeechTranslate パラメーターを true に、NeedFaceTranslate パラメーターを false に設定します。対応する構成パラメーターは SpeechTranslate です。
顔レベルの翻訳: NeedFaceTranslate パラメーターを true に、NeedSpeechTranslate パラメーターを false に設定します。対応する構成パラメーターは FaceTranslate です。
パラメーター | タイプ | 必須 | 名前 | 説明 |
文字列 | はい | 入力構成 |
| |
文字列 | はい | 出力構成 |
| |
文字列 | はい | 翻訳構成 |
| |
タイトル | 文字列 | いいえ | タイトル | |
説明 | 文字列 | いいえ | 説明 | |
UserData | 文字列 | いいえ | 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 | いいえ | 出力動画の幅 (ピクセル) |
|
Height | Integer | いいえ | 出力動画の高さ (ピクセル) |
|
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 | 出力動画で表示に使用される字幕ファイルの URL。 | |
SpeechTranslatedSubtitleURLSigned | String | 出力動画で表示に使用される字幕ファイルの署名付き URL。 | |
SpeechTranslatedSubtitleMediaIdForFix | String | 二次翻訳修正用の字幕ファイルのメディアアセット ID。 | |
SpeechTranslatedSubtitleURLForFix | String | 二次翻訳修正用の字幕ファイルの署名付き URL。 | |
SpeechBilingualSubtitleMediaId | String | バイリンガル音声翻訳結果ファイルのメディアアセット ID。 | |
SpeechBilingualSubtitleURL | String | バイリンガル音声翻訳結果ファイルの URL。 | |
SpeechTranslationJobId | String | 音声翻訳のジョブ ID (音声の二次修正に使用)。 | |
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 | 出力動画で表示に使用される字幕ファイルの URL。 | |
SpeechTranslatedSubtitleURLSigned | String | 出力動画で表示に使用される字幕ファイルの署名付き URL。 | |
SpeechTranslatedSubtitleMediaIdForFix | String | 二次翻訳修正用の字幕ファイルのメディアアセット ID。 | |
SpeechTranslatedSubtitleURLForFix | String | 二次翻訳修正用の字幕ファイルの署名付き URL。 | |
SpeechBilingualSubtitleMediaId | String | バイリンガル音声翻訳結果ファイルのメディアアセット ID。 | |
SpeechBilingualSubtitleURL | String | バイリンガル音声翻訳結果ファイルの URL。 | |
SpeechTranslationJobId | String | 音声翻訳のジョブ ID (音声の二次修正に使用)。 | |
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: 音声翻訳からの字幕ファイルの URL。このファイルは出力動画での表示に使用されます。
SpeechTranslatedSubtitleURLSigned: 音声翻訳からの字幕ファイルの署名付き URL。このファイルは出力動画での表示に使用されます。
SpeechTranslatedSubtitleURLForFix: 二次翻訳修正用の字幕ファイルの署名付き URL。
SpeechTranslationJobId: 音声翻訳のジョブ ID。この値は、手動修正を実行する際に OriginalJobId パラメーターに必要です。
翻訳結果に満足できない場合は、SpeechTranslatedSubtitleURLForFix パラメーターで提供される URL から 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"
}
}
}
}音声修正マーカーパラメーター
字幕ファイルの行には、空のコンテンツと空の修正マーカーの両方を含めることはできません (スペースやタブを含む)。これにより、音声修正が失敗する可能性があります。字幕行を空にする必要がある場合は、音声修正マーカーを使用して音声の処理方法を指定する必要があります。たとえば、音声を変えずに字幕の行全体を削除するには、<--onlymodifytext> マーカーを使用します。
音声修正マーカー | 命令名 | 説明 |
<--copy> | 元の音声を使用 | 現在の字幕行のタイムスタンプ範囲内の音声は、動画の元の音声に置き換えられます。 |
<--fsttran> | 最初の翻訳結果を使用 | 現在の字幕行のタイムスタンプ範囲内の音声は、最初の翻訳結果の音声に置き換えられます。 |
<--mute> | 話者をミュート | 現在の字幕行のタイムスタンプ範囲内で話者の声がミュートされます。 |
<--mute_all> | すべてミュート | 現在の字幕行のタイムスタンプ範囲内ですべての音がミュートされます。 |
<--onlymodifytext> | テキストのみ修正 | 現在の字幕行のタイムスタンプ範囲内で字幕の内容のみが修正されます。音声は変更されません。 |
次の例は、音声修正マーカーの標準的な使用法を示す SRT 字幕ファイルです:
1
00:00:01,000 --> 00:00:03,000
Hello everyone,
<--copy>Hello everyone,
2
00:00:03,500 --> 00:00:06,000
Welcome to today's lecture.
<--fsttran>welcome to today's lecture.
3
00:00:07,000 --> 00:00:10,000
We'll discuss future technology trends.
<--mute>We'll discuss the future technology trends.
4
00:00:11,000 --> 00:00:14,000
Please get ready to ask questions.
<--mute_all>Please get ready to ask questions.
5
00:00:15,000 --> 00:00:18,000
Now, let's get started.
<--onlymodifytext>Now, let's get started.カスタムホットワードライブラリの使用
バックグラウンド
EditingConfig.HotwordLibraryIdList パラメーターを構成して、次の操作を実行できます:
ホットワードの転置結果を指定します。
特定の音声認識シナリオにおけるホットワードの認識率を向上させます。
OpenAPI インタラクションフロー
図には、次のホットワード関連の API 操作が示されています:
ホットワードライブラリの作成: CreateHotwordLibrary
すべてのホットワードライブラリの照会: ListHotwordLibraries
特定のホットワードライブラリの詳細の照会: GetHotwordLibrary
特定のホットワードライブラリの情報の変更: UpdateHotwordLibrary
特定のホットワードライブラリの削除: DeleteHotwordLibrary
ホットワードライブラリの主要パラメーターの説明: ホットワードデータ構造
SDK 呼び出しの例
リファレンス
動画翻訳ジョブの作成: SubmitVideoTranslationJob
動画翻訳ジョブの結果の取得: GetSmartHandleJob
動画翻訳ジョブの一覧表示: ListSmartJobs
動画翻訳ジョブの削除: DeleteSmartJob
詳細については、「動画翻訳ユーザーガイド」をご参照ください。
カスタムホットワードライブラリの API 操作の詳細については、「ホットワード管理」および「ホットワードデータ構造」をご参照ください。
課金
課金の詳細については、「動画翻訳の課金情報」をご参照ください。