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.
  • Instale a Google Cloud CLI e inicialize-a executando o seguinte comando:

    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.

  1. 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:

    Você receberá uma resposta JSON semelhante a esta:

    {
      "audioContent": "//NExAASCCIIAAhEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.."
    }
    

  2. 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 chamado synthesize-output-base64.txt. O novo arquivo terá uma aparência semelhante à seguinte:

    //NExAARqoIIAAhEuWAAAGNmBGMY4EBcxvABAXBPmPIAF//yAuh9Tn5CEap3/o
    ...
    VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
    
  3. Decodifique o conteúdo do arquivo synthesize-output-base64.txt em um novo arquivo chamado synthesized-audio.mp3. Para informações sobre a decodificação de base64, consulte Como decodificar conteúdo de áudio codificado em Base64.

    Linux

    1. Copie apenas o conteúdo codificado em base64 para um arquivo de texto.

    2. 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
    

    Mac OSX

    1. Copie apenas o conteúdo codificado em base64 para um arquivo de texto.

    2. 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
    

    Windows

    1. Copie apenas o conteúdo codificado em base64 para um arquivo de texto.

    2. Decodifique o arquivo de texto de origem usando o comando certutil.

       certutil -decode SOURCE_BASE64_TEXT_FILE DESTINATION_AUDIO_FILE
    
  4. Reproduza o conteúdo de synthesized-audio.mp3 em um aplicativo de áudio ou em um dispositivo de áudio. Também é possível abrir o synthesized-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