本頁面說明如何使用 Speech-to-Text V2 API,自動產生 SRT 和 VTT 格式的音訊檔字幕。
總覽
您可以利用 Speech-to-Text V2 API 的強大功能,自動產生 SubRip (.srt) 和 WebVTT (.vtt) 格式的正確字幕。這些格式用於儲存音訊的文字和時間資訊,可讓字幕或輔助字幕與媒體同步顯示。
只有 V2 API 支援在 Google Speech-to-Text 要求中啟用字幕輸出功能。具體來說,您只能使用 BatchRecognize
轉錄長音訊檔案。您可以將輸出內容儲存在 Cloud Storage 值區中,也可以在內文中傳回。您可以同時指定多個格式,用於 Cloud Storage 輸出設定,並將這些格式寫入指定的值區,並附上不同的檔案副檔名。
在要求中啟用字幕輸出功能
如要使用 Google Speech-to-Text 為音訊產生 SRT 或 VTT 字幕輸出內容,請按照下列步驟在轉錄要求中啟用字幕輸出功能:
- 向 Speech-to-Text V2 API
BatchRecognize
方法提出要求,並填入output_format_config
欄位。指定的值如下:srt
,讓輸出內容採用 SubRip(.srt) 格式。vtt
,輸出內容會採用 WebVTT(.vtt) 格式。native
:如果沒有指定格式做為序列化的BatchRecognizeResults
要求,則預設輸出格式為native
。
- 由於這項作業是非同步作業,請對要求進行輪詢,直到完成為止。
您可以同時指定多個格式,用於 Cloud Storage 輸出設定。這些檔案會寫入指定的儲存桶,並使用不同的副檔名。分別是 .json
(原生)、.srt
(SRT) 和 .vtt
(WebVTT)。
如果為內嵌式輸出設定指定多種格式,每種格式都會以欄位的形式顯示在 BatchRecognizeFileResult.inline_result 訊息中。
下列程式碼片段示範如何使用本機和遠端檔案,在語音轉文字的語音轉錄要求中啟用字幕輸出:
API
curl -X POST \
-H "Content-Type: application/json; charset=utf-8" \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
https://speech.googleapis.com/v2/projects/my-project/locations/global/recognizers/_:batchRecognize \
--data '{
"files": [{
"uri": "gs://my-bucket/jfk_and_the_press.wav"
}],
"config": {
"features": { "enableWordTimeOffsets": true },
"autoDecodingConfig": {},
"model": "long",
"languageCodes": ["en-US"]
},
"recognitionOutputConfig": {
"gcsOutputConfig": { "uri": "gs://my-bucket" },
"output_format_config": { "srt": {} }
}
}'
後續步驟
- 瞭解如何轉錄長音訊檔案。
- 瞭解如何選擇最佳語音轉錄模型。
- 使用 Chirp 轉錄音訊檔案。
- 如要獲得最佳效能、準確率與其他提示,請參閱最佳做法說明文件。