Este tutorial mostra como transcrever a faixa de áudio de um ficheiro de vídeo com o Cloud Speech-to-Text.
Os ficheiros de áudio podem ser provenientes de muitas origens diferentes. Os dados de áudio podem ser provenientes de um telemóvel (como o correio de voz) ou da banda sonora incluída num ficheiro de vídeo.
O STT na nuvem pode usar um de vários modelos de aprendizagem automática para transcrever o seu ficheiro de áudio, de modo a corresponder melhor à fonte original do áudio. Pode obter melhores resultados da transcrição de voz especificando a origem do áudio original. Isto permite que o STT na nuvem processe os seus ficheiros de áudio através de um modelo de aprendizagem automática preparado para dados semelhantes aos do seu ficheiro de áudio.
Objetivos
- Envie um pedido de transcrição de áudio para um ficheiro de vídeo para o Cloud STT.
Custos
Neste documento, usa os seguintes componentes faturáveis do Google Cloud:
- Cloud Speech-to-Text
Para gerar uma estimativa de custos com base na sua utilização prevista,
use a calculadora de preços.
Antes de começar
Este tutorial tem vários pré-requisitos:
- Configurou um projeto do Cloud Speech-to-Text na Google Cloud consola.
- Configurou o seu ambiente através das credenciais padrão da aplicação na Google Cloud consola.
- Configurou o ambiente de programação para a linguagem de programação escolhida.
- Instalou a biblioteca cliente do Google Cloud para a linguagem de programação escolhida.
Prepare os dados de áudio
Antes de transcrever o áudio de um vídeo, tem de extrair os dados do ficheiro de vídeo. Depois de extrair os dados de áudio, tem de armazená-los num contentor do Cloud Storage ou convertê-los em codificação base64.
Extraia os dados de áudio
Pode usar qualquer ferramenta de conversão de ficheiros que processe ficheiros de áudio e vídeo, como o FFmpeg.
Use o fragmento de código abaixo para converter um ficheiro de vídeo num ficheiro de áudio
usando ffmpeg.
ffmpeg -i video-input-file audio-output-file
Armazenar ou converter os dados de áudio
Pode transcrever um ficheiro de áudio armazenado no seu computador local ou num contentor do Cloud Storage.
Use o seguinte comando para carregar o ficheiro de áudio para um contentor do Cloud Storage existente através da CLI do Google Cloud.
gcloud storage cp audio-output-file storage-bucket-uri
Se usar um ficheiro local e planear enviar um pedido através da ferramenta curl
a partir da linha de comandos, tem de converter primeiro o ficheiro de áudio em dados codificados em base64.
Use o seguinte comando para converter um ficheiro de áudio num ficheiro de texto.
base64 audio-output-file -w 0 > audio-data-text
Envie um pedido de transcrição
Use o seguinte código para enviar um pedido de transcrição para o Cloud STT.
Pedido de ficheiro local
Protocolo
Consulte o ponto final da API speech:recognize para ver os detalhes completos.
Para realizar o reconhecimento de voz síncrono, faça um pedido POST e forneça o corpo do pedido adequado. O exemplo seguinte mostra um pedido POST com curl. O exemplo usa a Google Cloud CLI para gerar um token de acesso. Para ver instruções sobre a instalação da CLI gcloud,
consulte o 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 obter mais informações sobre a configuração do corpo do pedido.
Se o pedido for bem-sucedido, o servidor devolve um código de estado 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 cliente do Cloud STT, consulte as bibliotecas cliente do Cloud STT. Para mais informações, consulte a documentação de referência da API GoCloud STT.
Para se autenticar no Cloud STT, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca cliente do Cloud STT, consulte as bibliotecas cliente do Cloud STT. Para mais informações, consulte a documentação de referência da API JavaCloud STT.
Para se autenticar no Cloud STT, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca cliente do Cloud STT, consulte as bibliotecas cliente do Cloud STT. Para mais informações, consulte a documentação de referência da API Node.jsCloud STT.
Para se autenticar no Cloud STT, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca cliente do Cloud STT, consulte as bibliotecas cliente do Cloud STT. Para mais informações, consulte a documentação de referência da API PythonCloud STT.
Para se autenticar no Cloud STT, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Idiomas adicionais
C#: Siga as instruções de configuração do C# na página das bibliotecas de cliente e, em seguida, visite a documentação de referência do Cloud STT para .NET.
PHP: Siga as instruções de configuração do PHP na página das bibliotecas cliente e, em seguida, visite a documentação de referência do STT do Google Cloud para PHP.
Ruby: Siga as instruções de configuração do Ruby na página das bibliotecas cliente e, em seguida, visite a documentação de referência do Cloud STT para Ruby.
Pedido de ficheiro remoto
Go
Para saber como instalar e usar a biblioteca cliente do Cloud STT, consulte as bibliotecas cliente do Cloud STT. Para mais informações, consulte a documentação de referência da API GoCloud STT.
Para se autenticar no Cloud STT, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca cliente do Cloud STT, consulte as bibliotecas cliente do Cloud STT. Para mais informações, consulte a documentação de referência da API JavaCloud STT.
Para se autenticar no Cloud STT, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca cliente do Cloud STT, consulte as bibliotecas cliente do Cloud STT. Para mais informações, consulte a documentação de referência da API Node.jsCloud STT.
Para se autenticar no Cloud STT, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca cliente do Cloud STT, consulte as bibliotecas cliente do Cloud STT. Para mais informações, consulte a documentação de referência da API PythonCloud STT.
Para se autenticar no Cloud STT, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Idiomas adicionais
C#: Siga as instruções de configuração do C# na página das bibliotecas de cliente e, em seguida, visite a documentação de referência do Cloud STT para .NET.
PHP: Siga as instruções de configuração do PHP na página das bibliotecas cliente e, em seguida, visite a documentação de referência do STT do Google Cloud para PHP.
Ruby: Siga as instruções de configuração do Ruby na página das bibliotecas cliente e, em seguida, visite a documentação de referência do Cloud STT para Ruby.
Limpar
Para evitar incorrer em custos na sua conta do Google Cloud pelos recursos usados neste tutorial, elimine o projeto que contém os recursos ou mantenha o projeto e elimine os recursos individuais.
Elimine o projeto
A forma mais fácil de eliminar a faturação é eliminar o projeto que criou para o tutorial.
Para eliminar 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.
Elimine instâncias
Para eliminar 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.
Elimine as regras de firewall da rede predefinida
Para eliminar 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.
O que se segue?
- Saiba como obter indicações de tempo para áudio.
- Identificar diferentes oradores num ficheiro de áudio.
Experimente
Se está a usar o Google Cloud pela primeira vez, crie uma conta para avaliar o desempenho do STT do Google Cloud em cenários reais. Os novos clientes também recebem 300 USD em créditos gratuitos para executar, testar e implementar cargas de trabalho.
Experimente o STT na nuvem gratuitamente