En esta página, se describe cómo usar la API de Cloud Speech-to-Text para generar automáticamente subtítulos a partir de archivos de audio en los formatos SRT y WebVTT. Estos formatos se usan para almacenar la información de texto y sincronización del audio, lo que permite mostrar subtítulos sincronizados con el contenido multimedia.
Habilitar salidas de subtítulos en la solicitud a Cloud Speech-to-Text solo se admite
en la API V2. En particular, solo puedes usar BatchRecognize para transcribir
archivos de audio largos. Las salidas se pueden guardar en un bucket de Cloud Storage o se pueden
mostrar intercaladas. Se pueden especificar varios formatos al mismo tiempo para
configurar la salida de Cloud Storage, que se escribe en el bucket especificado
con diferentes extensiones de archivo.
Habilita las salidas de subtítulos en una solicitud
Para generar salidas de subtítulos en formato SRT o VTT destinadas a tu audio a través de Cloud Speech-to-Text, sigue los pasos que se indican a continuación con el objetivo de habilitar las salidas de subtítulos en la solicitud de transcripción:
- Realiza una solicitud al método
BatchRecognizede la API de Cloud Speech-to-Text con el campooutput_format_configcompletado. Los valores especificados son los que se indican a continuación:srt, para que la salida siga el formato SRT.vtt, para que la salida siga el formato WebVTT.native, que es el formato de salida predeterminado si no se especifica ningún formato como una solicitudBatchRecognizeResultsserializada.
- Debido a que la operación es asíncrona, deberás sondear la solicitud hasta que se complete.
Se pueden especificar varios formatos al mismo tiempo para configurar
la salida de Cloud Storage. Estas se escriben en el bucket especificado con diferentes
extensiones de archivo (ya sea .json, .srt o .vtt).
Si se especifican varios formatos para la configuración de la salida intercalada, cada uno
estará disponible como un campo en el mensaje BatchRecognizeFileResult.inline_result.
En el siguiente fragmento de código, se demuestra cómo habilitar las salidas de subtítulos en una solicitud de transcripción para Cloud Speech-to-Text usando archivos locales y remotos:
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": {} }
}
}'
¿Qué sigue?
- Obtén información para transcribir archivos de audio largos.
- Obtén información para elegir el mejor modelo de transcripción.
- Transcribe archivos de audio con Chirp.
- Para mejorar el rendimiento y la exactitud, además de obtener otras sugerencias, consulta la documentación de las prácticas recomendadas.