Generare sottotitoli codificati WebVTT e SRT

Questa pagina descrive come utilizzare l'API Speech-to-Text V2 per generare automaticamente sottotitoli codificati da file audio nei formati SRT e VTT.

Panoramica

Puoi utilizzare la potenza dell'API Speech-to-Text V2 per generare automaticamente sottotitoli codificati accurati in entrambi i formati SubRip (.srt) e WebVTT (.vtt). Questi formati vengono utilizzati per memorizzare le informazioni di testo e temporizzazione dell'audio, in modo da poter visualizzare i sottotitoli sincronizzati con il contenuto multimediale per i sottotitoli e i sottotitoli codificati.

L'attivazione delle uscite dei sottotitoli codificati nella richiesta a Google Speech-to-Text è supportata solo nell'API V2. Nello specifico, puoi utilizzare BatchRecognize solo per trascrivere file audio lunghi. Puoi salvare gli output in un bucket Cloud Storage oppure possono essere restituiti in linea. È possibile specificare contemporaneamente più formati per la configurazione di output di Cloud Storage, che viene scritta nel bucket specificato con estensioni dei file diverse.

Attivare le uscite dei sottotitoli codificati in una richiesta

Per generare output di sottotitoli codificati SRT o VTT per l'audio utilizzando la funzionalità di conversione di Google Speech-to-Text, segui i passaggi successivi per attivare gli output di sottotitoli codificati nella richiesta di trascrizione:

  1. Effettua una richiesta al metodo BatchRecognize dell'API Speech-to-Text V2 con il campo output_format_config compilato. I valori specificati sono:
    • srt, affinché l'output segua il formato SubRip(.srt).
    • vtt, affinché l'output segua il formato WebVTT(.vtt).
    • native, che è il formato di output predefinito se non viene specificato alcun formato come richiesta BatchRecognizeResults serializzata.
  2. Poiché l'operazione è asincrona, esegui il polling della richiesta fino al suo completamento.

È possibile specificare contemporaneamente più formati per la configurazione dell'output di Cloud Storage. Vengono scritti nel bucket specificato con estensioni di file diverse. Sono rispettivamente .json per il formato nativo, .srt per SRT e .vtt per il supporto di WebVTT.

Se vengono specificati più formati per la configurazione dell'output in linea, ogni formato sarà disponibile come campo nel messaggio BatchRecognizeFileResult.inline_result.

Il seguente snippet di codice mostra come attivare le uscite dei sottotitoli codificati in una richiesta di trascrizione a Speech-to-Text utilizzando file locali e remoti:

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": {} }
      }
    }'

Passaggi successivi

  • Scopri come [trascrivere file audio lunghi][riconoscimento in batch].
  • Scopri come scegliere il modello di trascrizione migliore.
  • Trascrivere file audio utilizzando [Chirp][chirp].
  • Per il massimo rendimento, accuratezza e altri suggerimenti, consulta la documentazione relativa alle [best practice][best-practices].