Text-to-Speech consente di convertire parole e frasi in codifica Base64 dati audio del linguaggio naturale umano. Puoi quindi convertire i dati audio in un un file audio riproducibile come un MP3 mediante la decodifica dei dati Base64. L'API Text-to-Speech accetta input come testo non elaborato o SSML (Speech Synthesis Markup Language).
Questo documento descrive come creare un file audio da testo o SSML utilizzando Text-to-Speech. Puoi anche consultare Articolo Nozioni di base su Text-to-Speech se non hai familiarità con concetti come la sintesi vocale o SSML.
Questi esempi richiedono che tu abbia installato e inizializzato Google Cloud CLI. Per informazioni sulla configurazione dell'interfaccia a riga di comando gcloud, consulta Eseguire l'autenticazione in TTS.
Converti il testo in audio con voce sintetica
I seguenti esempi di codice mostrano come convertire una stringa in dati audio.
Puoi configurare l'output della sintesi vocale in diversi modi, ad esempio selezionando una voce unica o modulando l'output in altezza, volume, velocità di lettura e frequenza di campionamento.
Protocollo
Per informazioni dettagliate, consulta l'endpoint API di text:synthesize
.
Per sintetizzare l'audio dal testo, invia una richiesta POST HTTP all'endpoint text:synthesize
. Nel corpo della richiesta POST,
specifica il tipo di voce da sintetizzare nella sezione di configurazione voice
,
specificare il testo da sintetizzare nel campo text
della sezione input
e
specificare il tipo di audio da creare nella sezione audioConfig
.
Il seguente snippet di codice invia una richiesta di sintesi all'indirizzo
text:synthesize
e salva i risultati in un file
denominato synthesize-text.txt
. Sostituisci PROJECT_ID
con
l'ID del tuo progetto.
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':'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' } }" "https://texttospeech.googleapis.com/v1/text:synthesize" > synthesize-text.txt
L'API Text-to-Speech restituisce l'audio sintetizzato come dati con codifica Base64 contenuti.
nell'output JSON. L'output JSON nel file synthesize-text.txt
è simile allo snippet di codice riportato di seguito.
{ "audioContent": "//NExAASCCIIAAhEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.." }
Per decodificare i risultati dell'API Text-to-Speech come file audio MP3, esegui il seguente comando dalla stessa directory del file synthesize-text.txt
.
cat synthesize-text.txt | grep 'audioContent' | \ sed 's|audioContent| |' | tr -d '\n ":{},' > tmp.txt && \ base64 tmp.txt --decode > synthesize-text-audio.mp3 && \ rm tmp.txt
Go
Per scoprire come installare e utilizzare la libreria client per Text-to-Speech, consulta Librerie client Text-to-Speech. Per ulteriori informazioni, consulta API Go di Text-to-Speech documentazione di riferimento.
Per autenticarti a Text-to-Speech, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Per scoprire come installare e utilizzare la libreria client per Text-to-Speech, consulta Librerie client Text-to-Speech. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Text-to-Speech Java.
Per autenticarti a Text-to-Speech, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per scoprire come installare e utilizzare la libreria client per Text-to-Speech, consulta Librerie client Text-to-Speech. Per ulteriori informazioni, consulta API Node.js di Text-to-Speech documentazione di riferimento.
Per autenticarti a Text-to-Speech, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare e utilizzare la libreria client per Text-to-Speech, vedi Librerie client di Text-to-Speech. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Text-to-Speech Python.
Per autenticarti a Text-to-Speech, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Linguaggi aggiuntivi
C#: Segui le Istruzioni per la configurazione di C# Nella pagina delle librerie client e poi visita Documentazione di riferimento di Text-to-Speech per .NET.
PHP Segui le Istruzioni per la configurazione dei file PHP Nella pagina delle librerie client e poi visita Documentazione di riferimento di Text-to-Speech per PHP.
Ruby: segui le istruzioni di configurazione di Ruby riportate nella pagina delle librerie client e consulta la documentazione di riferimento di Text-to-Speech per Ruby.
Converti SSML in audio sintetico
L'utilizzo di SSML nella richiesta di sintesi vocale può produrre audio più simile al parlato umano naturale. Nello specifico, SSML ti offre un controllo più granulare su come l'output audio rappresenta le pause nel parlato o su come l'audio pronuncia date, ore, acronimi e abbreviazioni.
Per maggiori dettagli sugli elementi SSML supportati dall'API Text-to-Speech, consulta Riferimento SSML.
Protocollo
Per informazioni dettagliate, consulta l'endpoint API di text:synthesize
.
Per sintetizzare l'audio da SSML, invia una richiesta POST HTTP all'endpoint text:synthesize
. Nel corpo della richiesta POST, specifica il tipo di voce da sintetizzare nella sezione di configurazione voice
, specifica il codice SSML da sintetizzare nel campo ssml
della sezione input
e specifica il tipo di audio da creare nella sezione audioConfig
.
Il seguente snippet di codice invia una richiesta di sintesi all'endpoint
text:synthesize
e salva i risultati in un file
chiamato synthesize-ssml.txt
. Sostituisci PROJECT_ID
con
il tuo ID progetto.
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':{ 'ssml':'<speak>The <say-as interpret-as=\"characters\">SSML</say-as> standard is defined by the <sub alias=\"World Wide Web Consortium\">W3C</sub>.</speak>' }, 'voice':{ 'languageCode':'en-us', 'name':'en-US-Standard-B', 'ssmlGender':'MALE' }, 'audioConfig':{ 'audioEncoding':'MP3' } }" "https://texttospeech.googleapis.com/v1/text:synthesize" > synthesize-ssml.txt
L'API Text-to-Speech restituisce l'audio sintetizzato come dati con codifica Base64 contenuti.
nell'output JSON. L'output JSON nel file synthesize-ssml.txt
viene visualizzato
in modo simile al seguente snippet di codice.
{ "audioContent": "//NExAASCCIIAAhEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.." }
Per decodificare i risultati dell'API Text-to-Speech come file audio MP3, esegui il seguente comando dalla stessa directory del file synthesize-ssml.txt
.
cat synthesize-ssml.txt | grep 'audioContent' | \ sed 's|audioContent| |' | tr -d '\n ":{},' > tmp.txt && \ base64 tmp.txt --decode > synthesize-ssml-audio.mp3 && \ rm tmp.txt
Go
Per scoprire come installare e utilizzare la libreria client per Text-to-Speech, consulta Librerie client Text-to-Speech. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Text-to-Speech Go.
Per autenticarti a Text-to-Speech, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Per scoprire come installare e utilizzare la libreria client per Text-to-Speech, consulta Librerie client Text-to-Speech. Per ulteriori informazioni, consulta API Java di Text-to-Speech documentazione di riferimento.
Per autenticarti a Text-to-Speech, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per scoprire come installare e utilizzare la libreria client per Text-to-Speech, consulta Librerie client Text-to-Speech. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Text-to-Speech Node.js.
Per autenticarti a Text-to-Speech, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare e utilizzare la libreria client per Text-to-Speech, consulta Librerie client Text-to-Speech. Per ulteriori informazioni, consulta API Python di Text-to-Speech documentazione di riferimento.
Per autenticarti a Text-to-Speech, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Linguaggi aggiuntivi
C#: Segui le Istruzioni per la configurazione di C# Nella pagina delle librerie client e poi visita Documentazione di riferimento di Text-to-Speech per .NET.
PHP Segui le Istruzioni per la configurazione dei file PHP Nella pagina delle librerie client e poi visita Documentazione di riferimento di Text-to-Speech per PHP.
Ruby: Segui le Istruzioni per la configurazione di Ruby Nella pagina delle librerie client e poi visita Documentazione di riferimento di Text-to-Speech per Ruby.