Genera subtítulos de WebVTT y SRT

En esta página, se describe cómo usar la API de Speech-to-Text V2 para generar automáticamente subtítulos a partir de archivos de audio, en formatos SRT y VTT.

Descripción general

Puedes usar la potencia de la API de Speech-to-Text V2 para generar automáticamente subtítulos precisos en los formatos SubRip (.srt) y WebVTT (.vtt). Estos formatos se usan para almacenar la información de texto y sincronización del audio, lo que permite mostrar subtítulos en sincronización con el contenido multimedia para subtitularlos.

La habilitación de las salidas de subtítulos en tu solicitud a Voz a texto de Google solo se admite en la API de V2. En particular, solo puedes usar BatchRecognize para transcribir archivos de audio largos. Puedes guardar las salidas en un bucket de Cloud Storage o se pueden mostrar intercalados. Se pueden especificar varios formatos al mismo tiempo para la configuración de salidas 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 de SRT o VTT para tu audio con Google Speech-to-Text, sigue los pasos que se indican a continuación para habilitar las salidas de subtítulos en tu solicitud de transcripción:

  1. Realiza una solicitud al método BatchRecognize de la API de Speech-to-Text V2 con el campo output_format_config completado. Los valores especificados son los siguientes:
    • srt, para que la salida siga el formato SubRip(.srt).
    • vtt, para que la salida siga el formato WebVTT(.vtt).
    • native, que es el formato de salida predeterminado si no se especifica ningún formato como una solicitud BatchRecognizeResults serializada.
  2. Dado que la operación es asíncrona, sondea la solicitud hasta que se complete.

Se pueden especificar varios formatos al mismo tiempo para la configuración de salida de Cloud Storage. Se escriben en el bucket especificado con diferentes extensiones de archivo. Son .json para nativos, .srt para SRT y .vtt para compatibilidad con WebVTT, respectivamente.

Si se especifican varios formatos para la configuración de salida intercalada, cada formato estará disponible como un campo en el mensaje BatchRecognizeFileResult.inline_result.

En el siguiente fragmento de código, se demuestra cómo habilitar la salidas de subtítulos en una solicitud de transcripción para 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 más información sobre cómo [transcribir archivos de audio largos][reconocimiento por lotes].
  • Obtén más información sobre cómo elegir el mejor modelo de transcripción.
  • Transcribe archivos de audio con [pitido][pitido].
  • Para mejorar el rendimiento y la exactitud, así como ver otras sugerencias, consulta la documentación de [prácticas recomendadas][prácticas recomendadas].