Text-to-Speech vous permet de convertir des mots et des phrases en données audio de voix humaines naturelles encodées en base64. Vous pouvez ensuite convertir les données audio en un fichier audio lisible, comme un fichier MP3, en décodant les données base64. L'API Text-to-Speech accepte les entrées sous forme de texte brut ou dans le langage de balisage de synthèse vocale (SSML).
Ce document explique comment créer un fichier audio à partir d'une entrée de texte ou SSML à l'aide de Text-to-Speech. Si les concepts tels que la synthèse vocale ou SSML ne vous sont pas familiers, vous pouvez également consulter l'article Concepts de base de Text-to-Speech.
Pour suivre ces exemples, vous devez au préalable avoir installé et initialisé Google Cloud CLI. Pour en savoir plus sur la configuration de gcloud CLI, consultez la page S'authentifier auprès de TTS.
Convertir du texte en contenus audio vocaux synthétiques
Les exemples de code suivants montrent comment convertir une chaîne en données audio.
Vous pouvez configurer la sortie de la synthèse vocale de différentes manières, par exemple en sélectionnant une voix unique ou en modulant la hauteur vocale, le volume, la vitesse d'élocution et le taux d'échantillonnage de la sortie.
Protocole
Reportez-vous au point de terminaison text:synthesize
de l'API pour obtenir des informations complètes.
Pour synthétiser des contenus audio à partir d'un texte, envoyez une requête HTTP POST au point de terminaison text:synthesize
. Dans le corps de la requête POST, spécifiez le type de voix à synthétiser dans la section de configuration voice
, le texte à synthétiser dans le champ text
de la section input
et le type de contenus audio à créer dans la section audioConfig
.
L'extrait de code suivant envoie une requête de synthèse au point de terminaison text:synthesize
, puis enregistre les résultats dans un fichier nommé synthesize-text.txt
. Remplacez PROJECT_ID
par l'ID de votre projet.
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 renvoie l'audio synthétisé sous forme de données encodées en base64 dans la sortie JSON. La sortie JSON du fichier synthesize-text.txt
est semblable à l'extrait de code suivant.
{ "audioContent": "//NExAASCCIIAAhEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.." }
Pour décoder les résultats de l'API Text-to-Speech sous forme de fichier audio MP3, exécutez la commande suivante à partir du répertoire dans lequel se trouve le fichier 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
Pour savoir comment installer et utiliser la bibliothèque cliente pour Text-to-Speech, consultez la page Bibliothèques clientes Text-to-Speech. Pour en savoir plus, consultez la documentation de référence de l'API Text-to-Speech en langage Go.
Pour vous authentifier auprès de Text-to-Speech, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Text-to-Speech, consultez la page Bibliothèques clientes Text-to-Speech. Pour en savoir plus, consultez la documentation de référence de l'API Text-to-Speech en langage Java.
Pour vous authentifier auprès de Text-to-Speech, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Pour savoir comment installer et utiliser la bibliothèque cliente pour Text-to-Speech, consultez la page Bibliothèques clientes Text-to-Speech. Pour en savoir plus, consultez la documentation de référence de l'API Text-to-Speech en langage Node.js.
Pour vous authentifier auprès de Text-to-Speech, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Text-to-Speech, consultez la page Bibliothèques clientes Text-to-Speech. Pour en savoir plus, consultez la documentation de référence de l'API Text-to-Speech en langage Python.
Pour vous authentifier auprès de Text-to-Speech, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Langues supplémentaires
C# : Veuillez suivre les Instructions de configuration de C# sur la page des bibliothèques clientes, puis consultez la page Documentation de référence sur Text-to-Speech pour .NET.
PHP : Veuillez suivre les Instructions de configuration de PHP sur la page des bibliothèques clientes, puis consultez la page Documentation de référence sur Text-to-Speech pour PHP.
Ruby : Veuillez suivre les Instructions de configuration de Ruby sur la page des bibliothèques clientes, puis consultez la page Documentation de référence sur Text-to-Speech pour Ruby.
Convertir des données SSML en contenus audio vocaux synthétiques
L'utilisation du langage SSML dans la requête de synthèse audio peut produire des contenus audio plus proches de la voix humaine naturelle. En particulier, SSML vous permet de contrôler plus précisément la manière dont la sortie audio représente les pauses dans le discours, ou dont le locuteur prononce les dates, les heures, les acronymes et les abréviations.
Pour en savoir plus sur les éléments SSML acceptés par l'API Text-to-Speech, consultez la documentation de référence SSML.
Protocole
Reportez-vous au point de terminaison text:synthesize
de l'API pour obtenir des informations complètes.
Pour synthétiser des contenus audio à partir de données SSML, envoyez une requête HTTP POST au point de terminaison text:synthesize
. Dans le corps de la requête POST, spécifiez le type de voix à synthétiser dans la section de configuration voice
, les données SSML à synthétiser dans le champ ssml
de la section input
et le type de contenus audio à créer dans la section audioConfig
.
L'extrait de code suivant envoie une requête de synthèse au point de terminaison text:synthesize
, puis enregistre les résultats dans un fichier nommé synthesize-ssml.txt
. Remplacez PROJECT_ID
par l'ID de votre projet.
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 renvoie l'audio synthétisé sous forme de données encodées en base64 dans la sortie JSON. La sortie JSON du fichier synthesize-ssml.txt
est semblable à l'extrait de code suivant.
{ "audioContent": "//NExAASCCIIAAhEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.." }
Pour décoder les résultats de l'API Text-to-Speech sous forme de fichier audio MP3, exécutez la commande suivante à partir du répertoire dans lequel se trouve le fichier 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
Pour savoir comment installer et utiliser la bibliothèque cliente pour Text-to-Speech, consultez la page Bibliothèques clientes Text-to-Speech. Pour en savoir plus, consultez la documentation de référence de l'API Text-to-Speech en langage Go.
Pour vous authentifier auprès de Text-to-Speech, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Text-to-Speech, consultez la page Bibliothèques clientes Text-to-Speech. Pour en savoir plus, consultez la documentation de référence de l'API Text-to-Speech en langage Java.
Pour vous authentifier auprès de Text-to-Speech, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Pour savoir comment installer et utiliser la bibliothèque cliente pour Text-to-Speech, consultez la page Bibliothèques clientes Text-to-Speech. Pour en savoir plus, consultez la documentation de référence de l'API Text-to-Speech en langage Node.js.
Pour vous authentifier auprès de Text-to-Speech, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Text-to-Speech, consultez la page Bibliothèques clientes Text-to-Speech. Pour en savoir plus, consultez la documentation de référence de l'API Text-to-Speech en langage Python.
Pour vous authentifier auprès de Text-to-Speech, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Langues supplémentaires
C# : Veuillez suivre les Instructions de configuration de C# sur la page des bibliothèques clientes, puis consultez la page Documentation de référence sur Text-to-Speech pour .NET.
PHP : Veuillez suivre les Instructions de configuration de PHP sur la page des bibliothèques clientes, puis consultez la page Documentation de référence sur Text-to-Speech pour PHP.
Ruby : Veuillez suivre les Instructions de configuration de Ruby sur la page des bibliothèques clientes, puis consultez la page Documentation de référence sur Text-to-Speech pour Ruby.