Transcrever voz em texto usando a API

Nesta página, você aprende a enviar uma solicitação de reconhecimento de fala para a Speech-to-Text usando a interface REST e o comando curl.

A Speech-to-Text facilita a integração das tecnologias de reconhecimento de fala do Google nos aplicativos do desenvolvedor. Você pode enviar dados de áudio para a API Speech-to-Text e ela retorna uma transcrição em texto do arquivo de áudio. Para saber mais sobre o serviço, consulte Conceitos básicos da Speech-to-Text.

Antes de começar

Antes de enviar uma solicitação para a API Speech-to-Text, é necessário realizar as ações abaixo. Consulte a página Antes de começar para saber mais.

  • Ativar a Speech-to-Text em um projeto do GCP.
    1. Verificar se o faturamento está ativado para a Speech-to-Text.
  • Instale a CLI do Google Cloud. Após a instalação, inicialize a CLI do Google Cloud executando o seguinte comando:

    gcloud init

    Ao usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.

  • (Opcional) Criar um bucket do Google Cloud Storage para armazenar dados de áudio.

Fazer uma solicitação de transcrição de áudio

Use a Speech-to-Text para transcrever um arquivo de áudio para texto. Use o exemplo de código a seguir para enviar uma solicitação REST recognize à API Speech-to-Text.

  1. Crie um arquivo de solicitação JSON com o seguinte texto e salve-o como um arquivo de texto simples sync-request.json:

    {
      "config": {
          "encoding":"FLAC",
          "sampleRateHertz": 16000,
          "languageCode": "en-US",
          "enableWordTimeOffsets": false
      },
      "audio": {
          "uri":"gs://cloud-samples-tests/speech/brooklyn.flac"
      }
    }
      

    Este snippet JSON indica que o arquivo de áudio tem um formato de codificação FLAC, uma taxa de amostragem de 16.000 Hz e está armazenado no Google Cloud Storage no URI fornecido. O arquivo de áudio é de acesso público. Portanto, você não precisará de credenciais de autenticação para acessá-lo.

  2. Use curl para fazer uma solicitação speech:recognize, passando para ela o nome de arquivo da solicitação JSON que você configurou na etapa 1:

    O comando de amostra curl usa o comando gcloud auth print-access-token para receber um token de autenticação.

    curl -s -H "Content-Type: application/json" \
        -H "Authorization: Bearer "$(gcloud auth print-access-token) \
        https://speech.googleapis.com/v1/speech:recognize \
        -d @sync-request.json
      

    Para transmitir um nome de arquivo ao curl, use a opção -d (de dados) e coloque o sinal @ na frente do nome do arquivo. Este arquivo deve estar no mesmo diretório em que você executa o comando curl.

    Uma resposta semelhante a esta será exibida:

    {
      "results": [
        {
          "alternatives": [
            {
              "transcript": "how old is the Brooklyn Bridge",
              "confidence": 0.98267895
            }
          ]
        }
      ]
    }
      

Parabéns! Você enviou sua primeira solicitação para o Speech-to-Text.

Se você receber um erro ou uma resposta vazia da Speech to Text, confira as etapas de solução de problemas e de mitigação de erros.

Limpeza

Para evitar cobranças na conta do Google Cloud pelos recursos usados nesta página, siga as etapas abaixo.

A seguir