Transcreva voz em texto através da API

Esta página mostra como enviar um pedido de reconhecimento de voz para o Speech-to-Text através da interface REST e do comando curl.

A conversão de voz em texto permite a integração fácil das tecnologias de reconhecimento de voz da Google nas aplicações dos programadores. Pode enviar dados de áudio para a API Speech-to-Text, que devolve uma transcrição de texto desse ficheiro de áudio. Para mais informações acerca do serviço, consulte o artigo Noções básicas de conversão de voz em texto.

Antes de começar

Antes de poder enviar um pedido para a API Speech-to-Text, tem de ter concluído as seguintes ações. Consulte a página antes de começar para ver detalhes.

  • Ative o Speech-to-Text num projeto da GCP.
    1. Certifique-se de que a faturação está ativada para o Speech-to-Text.
  • Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:

    gcloud init

    Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.

  • (Opcional) Crie um novo contentor do Google Cloud Storage para armazenar os seus dados de áudio.

Faça um pedido de transcrição de áudio

Agora, pode usar a conversão de voz em texto para transcrever um ficheiro de áudio em texto. Use o seguinte exemplo de código para enviar um pedido REST recognize à API Speech-to-Text.

  1. Crie um ficheiro de pedido JSON com o seguinte texto e guarde-o como um sync-request.json ficheiro de texto simples:

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

    Este fragmento JSON indica que o ficheiro de áudio tem um formato de codificação FLAC, uma taxa de amostragem de 16 000 Hz e que o ficheiro de áudio está armazenado no Google Cloud Storage no URI indicado. O ficheiro de áudio está acessível publicamente, pelo que não precisa de credenciais de autenticação para aceder ao ficheiro.

  2. Use curl para fazer um pedido speech:recognize, transmitindo-lhe o nome do ficheiro do pedido JSON que configurou no passo 1:

    O comando curl de exemplo usa o comando gcloud auth print-access-token para obter 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
      

    Tenha em atenção que, para transmitir um nome de ficheiro para curl, usa a opção -d (para "data") e precede o nome de ficheiro com um sinal @. Este ficheiro deve estar no mesmo diretório em que executa o comando curl.

    Deve ver uma resposta semelhante à seguinte:

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

Parabéns! Enviou o seu primeiro pedido de conversão de voz em texto.

Se receber um erro ou uma resposta vazia do serviço Speech-to-Text, consulte os passos de resolução de problemas e mitigação de erros.

Limpar

Para evitar incorrer em cobranças na sua Google Cloud conta pelos recursos usados nesta página, siga estes passos.

O que se segue?