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.

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:

    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"

    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 Content

    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.

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