Neste tutorial, saiba como transcrever a trilha de áudio de um arquivo de vídeo usando a Cloud Speech-to-Text.
Os arquivos de áudio podem ter várias origens diferentes. Os dados de áudio podem ser provenientes de um telefone (como correio de voz) ou da trilha sonora incluída em um arquivo de vídeo.
A Cloud STT pode usar um dos vários modelos de machine learning para transcrever o arquivo de áudio e conseguir a melhor correspondência com a fonte de áudio original. Especifique a fonte do áudio original para conseguir resultados melhores na transcrição do áudio. Dessa maneira, a Cloud STT processa os arquivos de áudio usando um modelo de machine learning treinado para dados similares aos contidos no arquivo.
Objetivos
- Enviar uma solicitação de transcrição de áudio para um arquivo de vídeo à Cloud STT.
Custos
Neste documento, você vai usar os seguintes componentes faturáveis do Google Cloud:
- Cloud Speech-to-Text
Para gerar uma estimativa de custo baseada na sua projeção de uso, utilize a calculadora de preços.
Antes de começar
Os pré-requisitos para este tutorial são:
- ter configurado um projeto da Cloud Speech-to-Text no console do Google Cloud ;
- ter configurado o ambiente usando o Application Default Credentials no console do Google Cloud ;
- Ter configurado o ambiente de desenvolvimento para a linguagem de programação escolhida;
- Ter instalado a biblioteca de cliente do Google Cloud referente à linguagem de programação escolhida.
Preparar os dados de áudio
Antes de poder transcrever o áudio de um vídeo, é preciso extrair os dados do arquivo de vídeo. Depois de extrair os dados de áudio, armazene-os em um bucket do Cloud Storage ou converta-os em codificação base64.
Extrair os dados de áudio
É possível usar qualquer ferramenta de conversão de arquivos que manipule arquivos de áudio e vídeo, como o FFmpeg.
Use o snippet de código abaixo para converter um arquivo de vídeo em um arquivo de áudio
usando o ffmpeg.
ffmpeg -i video-input-file audio-output-file
Armazenar ou converter os dados de áudio
É possível transcrever um arquivo de áudio armazenado em sua máquina local ou em um bucket do Cloud Storage.
Use o comando a seguir para fazer o upload do seu arquivo de áudio para um bucket do Cloud Storage usando a CLI do Google Cloud.
gcloud storage cp audio-output-file storage-bucket-uri
Se você usa um arquivo local e planeja enviar uma solicitação usando a ferramenta curl
da linha de comando, primeiro converta o arquivo de áudio em
dados codificados em base64.
Use o seguinte comando para converter um arquivo de áudio em um arquivo de texto.
base64 audio-output-file -w 0 > audio-data-text
Enviar uma solicitação de transcrição
Use o código a seguir para enviar uma solicitação de transcrição à Cloud STT.
Solicitação de arquivo local
Protocolo
Consulte o endpoint da API speech:recognize para todos os detalhes.
Para realizar o reconhecimento de fala síncrono, faça uma solicitação POST e forneça o corpo apropriado
a ela. Confira a seguir um exemplo de uma solicitação POST que usa
curl. O exemplo usa a CLI do Google Cloud para gerar um token
de acesso. Para instruções sobre como instalar a gcloud CLI,
consulte o guia de início rápido.
curl -s -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ https://speech.googleapis.com/v2/speech:recognize \ --data '{ "config": { "encoding": "LINEAR16", "sampleRateHertz": 16000, "languageCode": "en-US", "model": "video" }, "audio": { "uri": "gs://cloud-samples-tests/speech/Google_Gnome.wav" } }'
Consulte a documentação de referência RecognitionConfig para mais informações sobre como
configurar o corpo da solicitação.
Quando a solicitação é bem-sucedida, o servidor retorna um código de status HTTP 200 OK
e a resposta no formato JSON:
{
"results": [
{
"alternatives": [
{
"transcript": "OK Google stream stranger things from
Netflix to my TV okay stranger things from
Netflix playing on TV from the people that brought you
Google home comes the next evolution of the smart home
and it's just outside your window me Google know hi
how can I help okay no what's the weather like outside
the weather outside is sunny and 76 degrees he's right
okay no turn on the hose I'm holding sure okay no I'm can
I eat this lemon tree leaf yes what about this Daisy yes
but I wouldn't recommend it but I could eat it okay
Nomad milk to my shopping list I'm sorry that sounds like
an indoor request I keep doing that sorry you do keep
doing that okay no is this compost really we're all
compost if you think about it pretty much everything is
made up of organic matter and will return",
"confidence": 0.9251011
}
]
}
]
}Go
Para saber como instalar e usar a biblioteca de cliente da Cloud STT, consulte Bibliotecas de cliente da Cloud STT. Saiba mais na documentação de referência da API Cloud STT para Go.
Para se autenticar na Cloud STT, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca de cliente da Cloud STT, consulte Bibliotecas de cliente da Cloud STT. Saiba mais na documentação de referência da API Cloud STT para Java.
Para se autenticar na Cloud STT, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca de cliente da Cloud STT, consulte Bibliotecas de cliente da Cloud STT. Saiba mais na documentação de referência da API Cloud STT para Node.js.
Para se autenticar na Cloud STT, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca de cliente da Cloud STT, consulte Bibliotecas de cliente da Cloud STT. Saiba mais na documentação de referência da API Cloud STT para Python.
Para se autenticar na Cloud STT, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Linguagens adicionais
C#: siga as instruções de configuração de C# na página das bibliotecas de cliente e acesse a documentação de referência da Cloud STT para .NET.
PHP: siga as instruções de configuração de PHP na página das bibliotecas de cliente e acesse a documentação de referência da Cloud STT para PHP.
Ruby: siga as instruções de configuração de Ruby na página das bibliotecas de cliente e acesse a documentação de referência da Cloud STT para Ruby.
Solicitação de arquivo remoto
Go
Para saber como instalar e usar a biblioteca de cliente da Cloud STT, consulte Bibliotecas de cliente da Cloud STT. Saiba mais na documentação de referência da API Cloud STT para Go.
Para se autenticar na Cloud STT, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca de cliente da Cloud STT, consulte Bibliotecas de cliente da Cloud STT. Saiba mais na documentação de referência da API Cloud STT para Java.
Para se autenticar na Cloud STT, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca de cliente da Cloud STT, consulte Bibliotecas de cliente da Cloud STT. Saiba mais na documentação de referência da API Cloud STT para Node.js.
Para se autenticar na Cloud STT, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca de cliente da Cloud STT, consulte Bibliotecas de cliente da Cloud STT. Saiba mais na documentação de referência da API Cloud STT para Python.
Para se autenticar na Cloud STT, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Linguagens adicionais
C#: siga as instruções de configuração de C# na página das bibliotecas de cliente e acesse a documentação de referência da Cloud STT para .NET.
PHP: siga as instruções de configuração de PHP na página das bibliotecas de cliente e acesse a documentação de referência da Cloud STT para PHP.
Ruby: siga as instruções de configuração de Ruby na página das bibliotecas de cliente e acesse a documentação de referência da Cloud STT para Ruby.
Limpeza
Para evitar cobranças na sua conta do Google Cloud pelos recursos usados neste tutorial, exclua o projeto que os contém ou mantenha o projeto e exclua os recursos individuais.
Excluir o projeto
O jeito mais fácil de evitar cobranças é excluindo o projeto que você criou para o tutorial.
Para excluir o projeto:
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Excluir instâncias
Para excluir uma instância do Compute Engine:
- In the Google Cloud console, go to the VM instances page.
- Select the checkbox for the instance that you want to delete.
- To delete the instance, click More actions, click Delete, and then follow the instructions.
Excluir as regras de firewall da rede padrão
Para excluir uma regra de firewall:
- In the Google Cloud console, go to the Firewall page.
- Select the checkbox for the firewall rule that you want to delete.
- To delete the firewall rule, click Delete.
A seguir
- Aprenda como receber carimbos de data/hora para áudio.
- Identifique diferentes interlocutores em um arquivo de áudio.
Faça um teste
Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho da Cloud STT em situações reais. Clientes novos também recebem US$ 300 em créditos sem custos financeiros para executar, testar e implantar cargas de trabalho.
Faça uma avaliação sem custos da Cloud STT