Gerar legendas WebVTT e SRT

Esta página descreve como usar a API Speech-to-Text V2 para gerar legendas automaticamente a partir de arquivos de áudio nos formatos SRT e VTT.

Visão geral

Você pode usar a API Speech-to-Text V2 para gerar legendas automáticas precisas nos formatos SubRip (.srt) e WebVTT (.vtt). Esses formatos são usados para armazenar informações de texto e de marcação de tempo do áudio, possibilitando a exibição de legendas em sincronia com a mídia para legendagem e closed caption.

A ativação das saídas de legenda em sua solicitação para a Speech-to-Text do Google só é compatível com a API V2. Especificamente, só é possível usar o BatchRecognize para transcrever arquivos de áudio longos. As saídas podem ser salvas em um bucket do Cloud Storage ou retornadas inline. Vários formatos podem ser especificados ao mesmo tempo para a configuração de saída do Cloud Storage, que é gravada no bucket especificado com diferentes extensões de arquivo.

Ativar saídas de legenda em uma solicitação

Para gerar saídas de legenda SRT ou VTT para seu áudio usando a Speech-to-Text do Google, siga as etapas a seguir para ativar as saídas de legenda na sua solicitação de transcrição:

  1. Faça uma solicitação para o método BatchRecognize da API Speech-to-Text V2 com o campo output_format_config preenchido. Os valores especificados são:
    • srt, para que a saída siga o formato SubRip(.srt).
    • vtt, para que a saída siga o formato WebVTT(.vtt).
    • native, que é o formato de saída padrão se nenhum formato for especificado como uma solicitação BatchRecognizeResults serializada.
  2. Como a operação é assíncrona, pesquise a solicitação até que ela seja concluída.

Vários formatos podem ser especificados ao mesmo tempo para a configuração de saída do Cloud Storage. Elas são gravadas no bucket especificado com diferentes extensões de arquivo. São .json para nativo, .srt para SRT e .vtt para compatibilidade com WebVTT, respectivamente.

Se vários formatos forem especificados para a configuração de saída inline, cada um deles estará disponível como um campo na mensagem BatchRecognitionFileResult.inline_result.

O snippet de código abaixo demonstra como ativar saídas de legenda em uma solicitação de transcrição para a Speech-to-Text usando arquivos locais e 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": {} }
      }
    }'

A seguir

  • Saiba como [transcrever arquivos de áudio longos][batch-recognize].
  • Saiba como escolher o melhor modelo de transcrição.
  • Transcrever arquivos de áudio usando o [Chirp][chirp].
  • Para obter o melhor desempenho, precisão e outras dicas, consulte a documentação de [práticas recomendadas][práticas recomendadas].