Nozioni di base su Cloud Text-to-Speech

Text-to-Speech consente agli sviluppatori di creare un parlato umano sintetico dal suono naturale come audio riproducibile. Puoi utilizzare i file di dati audio creati con Text-to-Speech per potenziare le tue applicazioni o migliorare i contenuti multimediali come video o registrazioni audio (nel rispetto dei Termini di servizio di Google Cloud Platform, che prevedono anche il rispetto di tutte le leggi vigenti).

La funzionalità Text-to-Speech converte l'input di testo o Speech Synthesis Markup Language (SSML) in dati audio come MP3 o LINEAR16 (la codifica utilizzata nei file WAV).

Questo documento è una guida ai concetti fondamentali sull'utilizzo di Text-to-Speech. Prima di iniziare a utilizzare l'API stessa, consulta le procedure di avvio rapido.

Esempio di base

Text-to-Speech è ideale per qualsiasi applicazione che riproduca agli utenti l'audio di un parlato umano. Ti consente di convertire stringhe, parole e frasi arbitrarie nella voce di una persona che parla delle stesse cose.

Immagina di avere un'app di assistenza vocale che fornisce ai tuoi utenti feedback in linguaggio naturale come file audio riproducibili. La tua app potrebbe eseguire un'azione e poi fornire un feedback vocale all'utente.

Ad esempio, la tua app potrebbe voler segnalare di aver aggiunto correttamente un evento al calendario dell'utente. L'app crea una stringa di risposta per segnalare il successo all'utente, ad esempio "Ho aggiunto l'evento al tuo calendario".

Con Text-to-Speech, puoi convertire la stringa di risposta in un vero e proprio parlato umano da riprodurre all'utente, in modo simile all'esempio fornito di seguito.


Esempio 1. File audio generato da Text-to-Speech

Per creare un file audio come nell'esempio 1, invia una richiesta a Text-to-Speech come lo snippet di codice seguente.

curl -H "Authorization: Bearer "$(gcloud auth print-access-token) -H "x-goog-user-project: <var>PROJECT_ID</var>" -H "Content-Type: application/json; charset=utf-8" --data "{
  'input':{
    'text':'I\'ve added the event to your calendar.'
  },
  'voice':{
    'languageCode':'en-gb',
    'name':'en-GB-Standard-A',
    'ssmlGender':'FEMALE'
  },
  'audioConfig':{
    'audioEncoding':'MP3'
  }
}" "https://texttospeech.googleapis.com/v1/text:synthesize"

Sintesi vocale

Il processo di traduzione dell'input di testo in dati audio è chiamato sintesi e l'output della sintesi è chiamato voce sintetica. Text-to-Speech accetta due tipi di input: testo non elaborato o dati formattati SSML (descritti di seguito). Per creare un nuovo file audio, chiama l'endpoint synthesize dell'API.

Il processo di sintesi vocale genera dati audio non elaborati come stringa con codifica base64. Devi decodificare la stringa codificata in base64 in un file audio prima che un'applicazione possa riprodurla. La maggior parte delle piattaforme e dei sistemi operativi dispone di strumenti per decodificare il testo base64 in file multimediali riproducibili.

Per saperne di più sulla sintesi, consulta i tutorial di avvio rapido o la pagina Creare file audio vocali.

Voci

Text-to-Speech crea dati audio non elaborati di parlato naturale umano. In altre parole, crea audio che sembra una persona che parla. Quando invii una richiesta di sintesi a Text-to-Speech, devi specificare una voce che "parla" le parole.

La funzionalità Text-to-Speech offre un'ampia selezione di voci personalizzate da utilizzare. Le voci differiscono in base alla lingua, al genere e all'accento (per alcune lingue). Ad esempio, puoi creare un audio che simuli la voce di una persona di sesso femminile che parla inglese con accento britannico, come nell'esempio 1 riportato sopra. Puoi anche convertire lo stesso testo in una voce diversa, ad esempio un oratore di lingua inglese maschile con accento australiano.


Esempio 2. File audio generato con lo speaker in inglese australiano

Per visualizzare l'elenco completo delle voci disponibili, consulta Voci supportate.

Voci WaveNet

Oltre ad altre voci sintetiche tradizionali, Text-to-Speech offre anche voci premium generate da WaveNet. Gli utenti trovano le voci generate da WaveNet più calde e simili a quelle umane rispetto ad altre voci sintetiche.

La differenza principale rispetto a una voce WaveNet è il modello WaveNet utilizzato per generare la voce. I modelli WaveNet sono stati addestrati utilizzando sample audio non elaborati di persone che parlano. Di conseguenza, questi modelli generano un parlato sintetico con un'enfasi e un'inflessione più simili a quelle umane su sillabe, fonemi e parole.

Confronta i seguenti due esempi di parlato sintetico.


Esempio 3. File audio generato con una voce standard


Esempio 4. File audio generato con una voce WaveNet

Per scoprire di più sui vantaggi delle voci generate da WaveNet, consulta Tipi di voci.

Altre impostazioni di output audio

Oltre alla voce, puoi anche configurare altri aspetti dell'output dei dati audio creati dalla sintesi vocale. Text-to-Speech supporta la configurazione della velocità di lettura, del tono, del volume e della frequenza di campionatura in hertz.

Per ulteriori informazioni, consulta le Informazioni di riferimento su AudioConfig.

Supporto di Speech Synthesis Markup Language (SSML)

Puoi migliorare l'audio sintetico prodotto da Text-to-Speech evidenziando il testo utilizzando Speech Synthesis Markup Language (SSML). Il linguaggio SSML consente di inserire pause, pronuncia di acronimi o altri dettagli aggiuntivi nei dati audio creati da Text-to-Speech. Text-to-Speech supporta un sottoinsieme degli elementi SSML disponibili.

Ad esempio, puoi assicurarti che il parlato sintetico pronunci correttamente i numeri ordinali fornendo a Text-to-Speech un input SSML che li contrassegni come tali.


Esempio 5. File audio generato da input di testo normale


Esempio 6. File audio generato dall'input SSML

Per scoprire di più su come sintetizzare la voce da SSML, consulta Creare file audio vocali