Crear audio a partir de texto mediante la línea de comandos

En este documento se explica cómo hacer una solicitud a Text-to-Speech mediante la línea de comandos. Para obtener más información sobre los conceptos básicos de Text-to-Speech, consulta el artículo Conceptos básicos de Text-to-Speech.

Antes de empezar

Antes de enviar una solicitud a la API Text-to-Speech, debes haber completado las siguientes acciones. Consulta la página Antes de empezar para obtener más información.

Sintetizar audio a partir de texto

Puedes convertir texto en audio haciendo una solicitud HTTP POST al endpoint https://texttospeech.googleapis.com/v1/text:synthesize. En el cuerpo del comando POST, especifica el tipo de voz que se va a sintetizar en la sección voice de configuración, el texto que se va a sintetizar en el campo text de la sección input y el tipo de audio que se va a crear en la sección audioConfig.

  1. Ejecuta la solicitud REST que aparece a continuación en la línea de comandos para sintetizar audio a partir de texto con Text-to-Speech. El comando usa el comando gcloud auth application-default print-access-token para recuperar un token de autorización para la solicitud.

    Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

    • PROJECT_ID: el ID alfanumérico de tu proyecto de Google Cloud .

    Método HTTP y URL:

    POST https://texttospeech.googleapis.com/v1/text:synthesize

    Cuerpo JSON de la solicitud:

    {
      "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 tu solicitud, despliega una de estas opciones:

    Deberías recibir una respuesta JSON similar a la siguiente:

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

  2. La salida JSON del comando REST contiene el audio sintetizado en formato codificado en base64. Copia el contenido del campo audioContent en un archivo nuevo llamado synthesize-output-base64.txt. El nuevo archivo tendrá un aspecto similar al siguiente:

    //NExAARqoIIAAhEuWAAAGNmBGMY4EBcxvABAXBPmPIAF//yAuh9Tn5CEap3/o
    ...
    VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
    
  3. Decodifica el contenido del archivo synthesize-output-base64.txt en un archivo nuevo llamado synthesized-audio.mp3. Para obtener información sobre cómo decodificar Base64, consulta Decodificar contenido de audio codificado en Base64.

    Linux

    1. Copia solo el contenido codificado en Base64 en un archivo de texto.

    2. Decodifica el archivo de texto de origen con la herramienta de línea de comandos base64 mediante la marca -d:

        $ base64 SOURCE_BASE64_TEXT_FILE -d > DESTINATION_AUDIO_FILE

    Mac OSX

    1. Copia solo el contenido codificado en Base64 en un archivo de texto.

    2. Decodifica el archivo de texto de origen con la herramienta de línea de comandos base64:

        $ base64 --decode SOURCE_BASE64_TEXT_FILE > DESTINATION_AUDIO_FILE

    Windows

    1. Copia solo el contenido codificado en Base64 en un archivo de texto.

    2. Decodifica el archivo de texto de origen con el comando certutil.

       certutil -decode SOURCE_BASE64_TEXT_FILE DESTINATION_AUDIO_FILE
  4. Reproduce el contenido de synthesized-audio.mp3 en una aplicación de audio o en un dispositivo de audio. También puedes abrir el synthesized-audio.mp3 en el navegador Chrome para reproducir el audio. Para ello, ve a la carpeta que contiene el archivo (por ejemplo, file://my_file_path/synthesized-audio.mp3).

Limpieza

Para evitar cargos innecesarios de Google Cloud Platform, usa el Google Cloud console para eliminar tu proyecto si no lo necesitas.

Siguientes pasos