Crie áudio a partir de texto através da linha de comandos
Este documento explica o processo de fazer um pedido ao serviço de conversão de texto em voz através da linha de comandos. Para saber mais acerca dos conceitos fundamentais da conversão de texto em voz, leia o artigo Noções básicas da conversão de texto em voz.
Antes de começar
Antes de poder enviar um pedido para a API Text-to-Speech, tem de ter concluído as seguintes ações. Consulte a página antes de começar para ver detalhes.
- Ative a conversão de texto em voz num projeto da GCP.
- Certifique-se de que a faturação está ativada para a conversão de texto em voz.
-
Instale a CLI Google Cloud e, em seguida, inicie sessão na CLI gcloud com a sua identidade federada. Depois de iniciar sessão, inicialize a CLI gcloud executando o seguinte comando:
gcloud init
Sintetize áudio a partir de texto
Pode converter texto em áudio fazendo um pedido HTTP POST para o ponto final https://texttospeech.googleapis.com/v1/text:synthesize
. No corpo do comando POST, especifique o tipo de voz a sintetizar na secção de configuração voice
, especifique o texto a sintetizar no campo text
da secção input
e especifique o tipo de áudio a criar na secção audioConfig
.
Execute o pedido REST abaixo na linha de comandos para sintetizar áudio a partir de texto com a API Text-to-Speech. O comando usa o comando
gcloud auth application-default print-access-token
para obter um token de autorização para o pedido.Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT_ID: o ID alfanumérico do seu projeto Google Cloud .
Método HTTP e URL:
POST https://texttospeech.googleapis.com/v1/text:synthesize
Corpo JSON do pedido:
{ "input": { "text": "Android is a mobile operating system developed by Google, based on the Linux kernel and designed primarily for touchscreen mobile devices such as smartphones and tablets." }, "voice": { "languageCode": "en-gb", "name": "en-GB-Standard-A", "ssmlGender": "FEMALE" }, "audioConfig": { "audioEncoding": "MP3" } }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "audioContent": "//NExAASCCIIAAhEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.." }
A saída JSON para o comando REST contém o áudio sintetizado no formato codificado em base64. Copie o conteúdo do campo
audioContent
para um novo ficheiro com o nomesynthesize-output-base64.txt
. O novo ficheiro vai ter um aspeto semelhante ao seguinte://NExAARqoIIAAhEuWAAAGNmBGMY4EBcxvABAXBPmPIAF//yAuh9Tn5CEap3/o ... VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
Descodifique o conteúdo do ficheiro
synthesize-output-base64.txt
num novo ficheiro com o nomesynthesized-audio.mp3
. Para obter informações sobre a descodificação de base64, consulte o artigo Descodificar conteúdo de áudio codificado em base64.Linux
Copie apenas o conteúdo codificado em base-64 para um ficheiro de texto.
Descodifique o ficheiro de texto de origem através da ferramenta de linha de comandos base64 com a flag
-d
:
$ base64 SOURCE_BASE64_TEXT_FILE -d > DESTINATION_AUDIO_FILE
Mac OSX
Copie apenas o conteúdo codificado em base-64 para um ficheiro de texto.
Descodifique o ficheiro de texto de origem através da ferramenta de linha de comandos base64:
$ base64 --decode SOURCE_BASE64_TEXT_FILE > DESTINATION_AUDIO_FILE
Windows
Copie apenas o conteúdo codificado em base-64 para um ficheiro de texto.
Descodifique o ficheiro de texto de origem através do comando
certutil
.
certutil -decode SOURCE_BASE64_TEXT_FILE DESTINATION_AUDIO_FILE
Reproduzir o conteúdo de
synthesized-audio.mp3
numa aplicação de áudio ou num dispositivo de áudio. Também pode abrir osynthesized-audio.mp3
no navegador Chrome para ouvir o áudio. Para tal, navegue para a pasta que contém o ficheiro, por exemplo,file://my_file_path/synthesized-audio.mp3
Limpar
Para evitar cobranças desnecessárias da Google Cloud Platform, use o Google Cloud console para eliminar o seu projeto se não precisar dele.
O que se segue?
- Saiba mais sobre o Cloud Text-to-Speech lendo as noções básicas.
- Reveja a lista de vozes disponíveis que pode usar para a voz sintética.