Criar áudio do texto usando a linha de comando
Este documento explica o processo de fazer uma solicitação ao Text-to-Speech usando a linha de comando. Para saber mais sobre os conceitos básicos do Text-to-Speech, leia Princípios básicos do Text-to-Speech.
Antes de começar
Antes de enviar uma solicitação para a API Text-to-Speech, é preciso concluir as ações a seguir. Consulte a página antes de começar para ver os detalhes.
- Ativar o Text-to-Speech em um projeto do GCP.
- Verificar se o faturamento está ativado para o Text-to-Speech.
-
After installing the Google Cloud CLI, configure the gcloud CLI to use your federated identity and then initialize it by running the following command:
gcloud init
Sintetizar áudio a partir de texto
Converta texto em áudio fazendo uma solicitação HTTP POST para o endpoint
https://texttospeech.googleapis.com/v1/text:synthesize
. No
corpo do seu comando POST, especifique o tipo de voz que será sintetizado na
seção de configuração voice
. Especifique também o texto que será sintetizado no
campo text
da seção input
e, por fim, especifique o tipo de áudio que será criado
na seção audioConfig
.
Execute a solicitação REST abaixo na linha de comando para sintetizar o áudio do texto usando o Text-to-Speech. O comando usa o comando
gcloud auth application-default print-access-token
para recuperar um token de autorização da solicitação.Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: o ID alfanumérico do seu projeto do Google Cloud.
Método HTTP e URL:
POST https://texttospeech.googleapis.com/v1/text:synthesize
Corpo JSON da solicitação:
{ "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 a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Salve o corpo da solicitação em um arquivo com o nome
request.json
e execute o comando a seguir:curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project:PROJECT_ID " \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://texttospeech.googleapis.com/v1/text:synthesize"PowerShell (Windows)
Salve o corpo da solicitação em um arquivo com o nome
request.json
e execute o comando a seguir:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID " }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://texttospeech.googleapis.com/v1/text:synthesize" | Select-Object -Expand ContentVocê receberá uma resposta JSON semelhante a esta:
{ "audioContent": "//NExAASCCIIAAhEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.." }
A saída JSON para o comando REST contém o áudio sintetizado no formato de codificação em base64. Copie o conteúdo do campo
audioContent
para um novo arquivo chamadosynthesize-output-base64.txt
. O novo arquivo terá uma aparência semelhante à seguinte://NExAARqoIIAAhEuWAAAGNmBGMY4EBcxvABAXBPmPIAF//yAuh9Tn5CEap3/o ... VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
Decodifique o conteúdo do arquivo
synthesize-output-base64.txt
em um novo arquivo chamadosynthesized-audio.mp3
. Para informações sobre a decodificação de base64, consulte Como decodificar conteúdo de áudio codificado em Base64.Copie apenas o conteúdo codificado em base64 para um arquivo de texto.
Decodifique o arquivo de texto de origem usando a ferramenta de linha de comando base64 usando a sinalização
-d
:
$ base64
SOURCE_BASE64_TEXT_FILE -d >DESTINATION_AUDIO_FILE Copie apenas o conteúdo codificado em base64 para um arquivo de texto.
Decodifique o arquivo de texto de origem usando a ferramenta de linha de comando em base64:
$ base64 --decode
SOURCE_BASE64_TEXT_FILE >DESTINATION_AUDIO_FILE Copie apenas o conteúdo codificado em base64 para um arquivo de texto.
Decodifique o arquivo de texto de origem usando o comando
certutil
.
certutil -decode
SOURCE_BASE64_TEXT_FILE DESTINATION_AUDIO_FILE Reproduza o conteúdo de
synthesized-audio.mp3
em um aplicativo de áudio ou em um dispositivo de áudio. Também é possível abrir osynthesized-audio.mp3
no navegador Chrome para reproduzir o áudio, navegando até a pasta que contém o arquivo, por exemplo,file://my_file_path/synthesized-audio.mp3
Limpar
Para evitar cobranças desnecessárias do Google Cloud Platform, use o console do Google Cloud para excluir o projeto se ele não for mais necessário.
A seguir
- Saiba mais sobre a Cloud Text-to-Speech lendo as noções básicas.
- Verifique a lista de vozes disponíveis que você pode usar para fala sintética.