Crea audio da testo utilizzando la riga di comando

Questo documento descrive la procedura per effettuare una richiesta a Text-to-Speech utilizzando la riga di comando. Per saperne di più sui concetti fondamentali di Text-to-Speech, leggi Nozioni di base di Text-to-Speech.

Prima di iniziare

Prima di poter inviare una richiesta all'API Text-to-Speech, devi aver completato le azioni seguenti. Per informazioni dettagliate, consulta la pagina Prima di iniziare.

  • Abilita Text-to-Speech in un progetto Google Cloud.
  • Assicurati che la fatturazione sia abilitata per Text-to-Speech.
  • Installa Google Cloud CLI. Dopo l'installazione, inizializza Google Cloud CLI eseguendo il comando seguente:

    gcloud init

    Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

Sintetizza audio dal testo

Puoi convertire il testo in audio effettuando una richiesta HTTP POST all'endpoint https://texttospeech.googleapis.com/v1/text:synthesize. Nel corpo del comando POST, specifica il tipo di voce da sintetizzare nella sezione di configurazione voice, il testo da sintetizzare nel campo text della sezione input e il tipo di audio da creare nella sezione audioConfig.

  1. Esegui la richiesta REST di seguito dalla riga di comando per sintetizzare l'audio dal testo utilizzando Text-to-Speech. Il comando utilizza il comando gcloud auth application-default print-access-token per recuperare un token di autorizzazione per la richiesta.

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID alfanumerico del tuo progetto Google Cloud .

    Metodo HTTP e URL:

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

    Corpo JSON della richiesta:

    {
      "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"
      }
    }
    

    Per inviare la richiesta, espandi una di queste opzioni:

    Dovresti ricevere una risposta JSON simile alla seguente:

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

  2. L'output JSON per il comando REST contiene l'audio sintetizzato in formato con codifica in base64. Copia i contenuti del campo audioContent in un nuovo file denominato synthesize-output-base64.txt. Il nuovo file sarà simile al seguente:

    //NExAARqoIIAAhEuWAAAGNmBGMY4EBcxvABAXBPmPIAF//yAuh9Tn5CEap3/o
    ...
    VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
    
  3. Decodifica i contenuti del file synthesize-output-base64.txt in un nuovo file denominato synthesized-audio.mp3. Per informazioni sulla decodifica in base64, vedi Decodifica del contenuto audio con codifica in base64.

    Linux

    1. Copia solo i contenuti con codifica in base64 in un file di testo.

    2. Decodifica il file di testo di origine utilizzando lo strumento a riga di comando in base64 utilizzando il flag -d:

        $ base64 SOURCE_BASE64_TEXT_FILE -d > DESTINATION_AUDIO_FILE

    MacOS X

    1. Copia solo i contenuti con codifica in base64 in un file di testo.

    2. Decodifica il file di testo di origine utilizzando lo strumento a riga di comando in base64:

        $ base64 --decode SOURCE_BASE64_TEXT_FILE > DESTINATION_AUDIO_FILE

    Windows

    1. Copia solo i contenuti con codifica in base64 in un file di testo.

    2. Decodifica il file di testo di origine utilizzando il comando certutil.

       certutil -decode SOURCE_BASE64_TEXT_FILE DESTINATION_AUDIO_FILE
  4. Riproduci i contenuti di synthesized-audio.mp3 in un'applicazione audio o su un dispositivo audio. Puoi anche aprire synthesized-audio.mp3 nel browser Chrome per riprodurre l'audio passando alla cartella che contiene il file, ad esempio file://my_file_path/synthesized-audio.mp3

Esegui la pulizia

Per evitare addebiti non necessari di Google Cloud, utilizzaGoogle Cloud console per eliminare il progetto se non ti serve.

Passaggi successivi