Démarrage rapide : Convertir du texte par synthèse vocale
Documentation de référence | Package (NuGet) | Exemples supplémentaires sur GitHub
Avec Azure AI Speech, vous pouvez exécuter une application qui synthétise une voix de type humain pour lire du texte. Vous pouvez modifier la voix, entrer du texte à prononcer et écouter la sortie sur le haut-parleur de votre ordinateur.
Conseil
Vous pouvez essayer la synthèse vocale dans Speech Studio Voice Gallery sans vous inscrire ni écrire de code.
Conseil
Essayez le Kit de ressources Azure AI Speech pour créer et exécuter facilement des exemples sur Visual Studio Code.
Prérequis
- Un abonnement Azure. Vous pouvez en créer un gratuitement.
- Créer une ressource Speech dans le portail Azure.
- Obtenez la clé de ressource et la région Speech. Une fois votre ressource vocale déployée, sélectionnez Accéder à la ressource pour afficher et gérer les clés.
Configurer l’environnement
Le kit de développement logiciel (SDK) Speech est disponible en tant que package NuGet et implémente .NET Standard 2.0. Installez le SDK Speech plus loin dans ce guide à l’aide de la console. Pour obtenir des instructions d’installation, consultez Installer le SDK Speech.
Définir des variables d’environnement
Vous devez authentifier votre application pour accéder à Azure AI services. Cet article vous montre comment utiliser des variables d’environnement pour stocker vos informations d’identification. Vous pouvez ensuite accéder aux variables d’environnement à partir de votre code pour authentifier votre application. Pour la production, utilisez un moyen plus sécurisé pour stocker vos informations d’identification et y accéder.
Important
Nous vous recommandons l’authentification Microsoft Entra ID avec les identités managées pour les ressources Azure pour éviter de stocker des informations d’identification avec vos applications qui s’exécutent dans le cloud.
Si vous utilisez une clé API, stockez-la en toute sécurité dans un autre emplacement, par exemple dans Azure Key Vault. N'incluez pas la clé API directement dans votre code et ne la diffusez jamais publiquement.
Pour plus d’informations sur la sécurité des services IA, consultez Authentifier les demandes auprès d’Azure AI services.
Pour définir les variables d'environnement de votre clé de ressource Speech et de votre région, ouvrez une fenêtre de console et suivez les instructions de votre système d'exploitation et de votre environnement de développement.
- Pour définir la variable d’environnement
SPEECH_KEY
, remplacez your-key par l’une des clés de votre ressource. - Pour définir la variable d’environnement
SPEECH_REGION
, remplacez your-region par l’une des régions de votre ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Remarque
Si vous avez uniquement besoin d’accéder aux variables d’environnement dans la console en cours d’exécution, vous pouvez la définir avec set
au lieu de setx
.
Après avoir ajouté les variables d'environnement, vous devrez éventuellement redémarrer tous les programmes qui ont besoin de lire les variables d'environnement, y compris la fenêtre de console. Par exemple, si vous utilisez Visual Studio comme éditeur, redémarrez Visual Studio avant d’exécuter l’exemple.
Création de l'application
Effectuez ces étapes pour créer une application console et installer le SDK Speech.
Ouvrez une fenêtre d’invite de commandes dans le dossier où vous souhaitez placer le nouveau projet. Exécutez cette commande pour créer une application console avec l’interface CLI .NET.
dotnet new console
La commande crée un fichier Program.cs dans le répertoire du projet.
Installez le kit de développement logiciel (SDK) Speech dans votre nouveau projet avec l’interface CLI .NET.
dotnet add package Microsoft.CognitiveServices.Speech
Remplacez le contenu de Program.cs par le code suivant.
using System; using System.IO; using System.Threading.Tasks; using Microsoft.CognitiveServices.Speech; using Microsoft.CognitiveServices.Speech.Audio; class Program { // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION" static string speechKey = Environment.GetEnvironmentVariable("SPEECH_KEY"); static string speechRegion = Environment.GetEnvironmentVariable("SPEECH_REGION"); static void OutputSpeechSynthesisResult(SpeechSynthesisResult speechSynthesisResult, string text) { switch (speechSynthesisResult.Reason) { case ResultReason.SynthesizingAudioCompleted: Console.WriteLine($"Speech synthesized for text: [{text}]"); break; case ResultReason.Canceled: var cancellation = SpeechSynthesisCancellationDetails.FromResult(speechSynthesisResult); Console.WriteLine($"CANCELED: Reason={cancellation.Reason}"); if (cancellation.Reason == CancellationReason.Error) { Console.WriteLine($"CANCELED: ErrorCode={cancellation.ErrorCode}"); Console.WriteLine($"CANCELED: ErrorDetails=[{cancellation.ErrorDetails}]"); Console.WriteLine($"CANCELED: Did you set the speech resource key and region values?"); } break; default: break; } } async static Task Main(string[] args) { var speechConfig = SpeechConfig.FromSubscription(speechKey, speechRegion); // The neural multilingual voice can speak different languages based on the input text. speechConfig.SpeechSynthesisVoiceName = "en-US-AvaMultilingualNeural"; using (var speechSynthesizer = new SpeechSynthesizer(speechConfig)) { // Get text from the console and synthesize to the default speaker. Console.WriteLine("Enter some text that you want to speak >"); string text = Console.ReadLine(); var speechSynthesisResult = await speechSynthesizer.SpeakTextAsync(text); OutputSpeechSynthesisResult(speechSynthesisResult, text); } Console.WriteLine("Press any key to exit..."); Console.ReadKey(); } }
Pour modifier le langage de synthèse vocale, remplacez
en-US-AvaMultilingualNeural
par une autre voix prise en charge.Toutes les voix neuronales sont multilingues et parlent couramment leur propre langue et l’anglais. Par exemple, si le texte d’entrée en anglais est I'm excited to try text to speech et que vous avez défini
es-ES-ElviraNeural
comme langue, le texte est lu en anglais avec un accent espagnol. Si la voix ne s’exprime pas dans la langue correspondant au texte entré, le service Speech ne génère pas de données audio synthétisées.Exécutez votre nouvelle application console pour démarrer la synthèse vocale avec l’orateur par défaut.
dotnet run
Important
N’oubliez pas de définir les variables d’environnement
SPEECH_KEY
etSPEECH_REGION
. Si vous ne définissez pas ces variables, l’exemple échoue avec un message d’erreur.Entrez le texte à prononcer. Par exemple, tapez J’ai hâte d’essayer la synthèse vocale. Sélectionnez la touche Entrée pour entendre la parole synthétisée.
Enter some text that you want to speak > I'm excited to try text to speech
Notes
Plus d’options de synthèse vocale
Ce guide de démarrage rapide utilise l’opération SpeakTextAsync
pour synthétiser un petit bloc de texte que vous entrez. Vous pouvez également utiliser un texte long à partir d'un fichier et contrôler plus finement les styles de voix, la prosodie et d'autres paramètres.
- Consultez Comment synthétiser le message et Vue d’ensemble SSML (Speech Synthesis Markup Language) pour plus d’informations sur la synthèse du message à partir d’un fichier et un contrôle plus fin sur les styles vocaux, la prosodie et d’autres paramètres.
- Consultez API Synthèse par lots pour la synthèse vocale pour plus d’informations sur la synthétisation de la synthèse vocale de forme longue.
Voix de synthèse vocale OpenAI dans Azure AI Speech
Les voix de synthèse vocale OpenAI sont également prises en charge. Consultez les voix de synthèse vocale OpenAI dans Azure AI Speech et les voix multilingues. Vous pouvez remplacer en-US-AvaMultilingualNeural
par un nom vocal OpenAI pris en charge tel que en-US-FableMultilingualNeural
.
Nettoyer les ressources
Vous pouvez utiliser le portail Azure ou l’interface de ligne de commande (CLI) Azure pour supprimer la ressource Speech que vous avez créée.
Documentation de référence | Package (NuGet) | Exemples supplémentaires sur GitHub
Avec Azure AI Speech, vous pouvez exécuter une application qui synthétise une voix de type humain pour lire du texte. Vous pouvez modifier la voix, entrer du texte à prononcer et écouter la sortie sur le haut-parleur de votre ordinateur.
Conseil
Vous pouvez essayer la synthèse vocale dans Speech Studio Voice Gallery sans vous inscrire ni écrire de code.
Conseil
Essayez le Kit de ressources Azure AI Speech pour créer et exécuter facilement des exemples sur Visual Studio Code.
Prérequis
- Un abonnement Azure. Vous pouvez en créer un gratuitement.
- Créer une ressource Speech dans le portail Azure.
- Obtenez la clé de ressource et la région Speech. Une fois votre ressource vocale déployée, sélectionnez Accéder à la ressource pour afficher et gérer les clés.
Configurer l’environnement
Le kit de développement logiciel (SDK) Speech est disponible en tant que package NuGet et implémente .NET Standard 2.0. Installez le kit de développement logiciel (SDK) Speech plus loin dans ce guide. Pour obtenir des instructions d’installation, consultez Installer le SDK Speech.
Définir des variables d’environnement
Vous devez authentifier votre application pour accéder à Azure AI services. Cet article vous montre comment utiliser des variables d’environnement pour stocker vos informations d’identification. Vous pouvez ensuite accéder aux variables d’environnement à partir de votre code pour authentifier votre application. Pour la production, utilisez un moyen plus sécurisé pour stocker vos informations d’identification et y accéder.
Important
Nous vous recommandons l’authentification Microsoft Entra ID avec les identités managées pour les ressources Azure pour éviter de stocker des informations d’identification avec vos applications qui s’exécutent dans le cloud.
Si vous utilisez une clé API, stockez-la en toute sécurité dans un autre emplacement, par exemple dans Azure Key Vault. N'incluez pas la clé API directement dans votre code et ne la diffusez jamais publiquement.
Pour plus d’informations sur la sécurité des services IA, consultez Authentifier les demandes auprès d’Azure AI services.
Pour définir les variables d'environnement de votre clé de ressource Speech et de votre région, ouvrez une fenêtre de console et suivez les instructions de votre système d'exploitation et de votre environnement de développement.
- Pour définir la variable d’environnement
SPEECH_KEY
, remplacez your-key par l’une des clés de votre ressource. - Pour définir la variable d’environnement
SPEECH_REGION
, remplacez your-region par l’une des régions de votre ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Remarque
Si vous avez uniquement besoin d’accéder aux variables d’environnement dans la console en cours d’exécution, vous pouvez la définir avec set
au lieu de setx
.
Après avoir ajouté les variables d'environnement, vous devrez éventuellement redémarrer tous les programmes qui ont besoin de lire les variables d'environnement, y compris la fenêtre de console. Par exemple, si vous utilisez Visual Studio comme éditeur, redémarrez Visual Studio avant d’exécuter l’exemple.
Création de l'application
Effectuez ces étapes pour créer une application console et installer le SDK Speech.
Créez un projet console en C++ dans Visual Studio Community nommé
SpeechSynthesis
.Remplacez le contenu du fichier SpeechSynthesis.cpp par le code suivant :
#include <iostream> #include <stdlib.h> #include <speechapi_cxx.h> using namespace Microsoft::CognitiveServices::Speech; using namespace Microsoft::CognitiveServices::Speech::Audio; std::string GetEnvironmentVariable(const char* name); int main() { // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION" auto speechKey = GetEnvironmentVariable("SPEECH_KEY"); auto speechRegion = GetEnvironmentVariable("SPEECH_REGION"); if ((size(speechKey) == 0) || (size(speechRegion) == 0)) { std::cout << "Please set both SPEECH_KEY and SPEECH_REGION environment variables." << std::endl; return -1; } auto speechConfig = SpeechConfig::FromSubscription(speechKey, speechRegion); // The neural multilingual voice can speak different languages based on the input text. speechConfig->SetSpeechSynthesisVoiceName("en-US-AvaMultilingualNeural"); auto speechSynthesizer = SpeechSynthesizer::FromConfig(speechConfig); // Get text from the console and synthesize to the default speaker. std::cout << "Enter some text that you want to speak >" << std::endl; std::string text; getline(std::cin, text); auto result = speechSynthesizer->SpeakTextAsync(text).get(); // Checks result. if (result->Reason == ResultReason::SynthesizingAudioCompleted) { std::cout << "Speech synthesized to speaker for text [" << text << "]" << std::endl; } else if (result->Reason == ResultReason::Canceled) { auto cancellation = SpeechSynthesisCancellationDetails::FromResult(result); std::cout << "CANCELED: Reason=" << (int)cancellation->Reason << std::endl; if (cancellation->Reason == CancellationReason::Error) { std::cout << "CANCELED: ErrorCode=" << (int)cancellation->ErrorCode << std::endl; std::cout << "CANCELED: ErrorDetails=[" << cancellation->ErrorDetails << "]" << std::endl; std::cout << "CANCELED: Did you set the speech resource key and region values?" << std::endl; } } std::cout << "Press enter to exit..." << std::endl; std::cin.get(); } std::string GetEnvironmentVariable(const char* name) { #if defined(_MSC_VER) size_t requiredSize = 0; (void)getenv_s(&requiredSize, nullptr, 0, name); if (requiredSize == 0) { return ""; } auto buffer = std::make_unique<char[]>(requiredSize); (void)getenv_s(&requiredSize, buffer.get(), requiredSize, name); return buffer.get(); #else auto value = getenv(name); return value ? value : ""; #endif }
Sélectionnez Outils>Gestionnaire de package NuGet>Console du Gestionnaire de package. Dans la Console du Gestionnaire de package, exécutez cette commande :
Install-Package Microsoft.CognitiveServices.Speech
Pour modifier le langage de synthèse vocale, remplacez
en-US-AvaMultilingualNeural
par une autre voix prise en charge.Toutes les voix neuronales sont multilingues et parlent couramment leur propre langue et l’anglais. Par exemple, si le texte d’entrée en anglais est I'm excited to try text to speech et que vous avez défini
es-ES-ElviraNeural
, le texte est lu en anglais avec un accent espagnol. Si la voix ne s’exprime pas dans la langue correspondant au texte entré, le service Speech ne génère pas de données audio synthétisées.Générez et exécutez votre nouvelle application console pour démarrer la synthèse vocale vers le haut-parleur par défaut.
Important
N’oubliez pas de définir les variables d’environnement
SPEECH_KEY
etSPEECH_REGION
. Si vous ne définissez pas ces variables, l’exemple échoue avec un message d’erreur.Entrez le texte à prononcer. Par exemple, tapez J’ai hâte d’essayer la synthèse vocale. Sélectionnez la touche Entrée pour entendre la parole synthétisée.
Enter some text that you want to speak > I'm excited to try text to speech
Notes
Plus d’options de synthèse vocale
Ce guide de démarrage rapide utilise l’opération SpeakTextAsync
pour synthétiser un petit bloc de texte que vous entrez. Vous pouvez également utiliser un texte long à partir d'un fichier et contrôler plus finement les styles de voix, la prosodie et d'autres paramètres.
- Consultez Comment synthétiser le message et Vue d’ensemble SSML (Speech Synthesis Markup Language) pour plus d’informations sur la synthèse du message à partir d’un fichier et un contrôle plus fin sur les styles vocaux, la prosodie et d’autres paramètres.
- Consultez API Synthèse par lots pour la synthèse vocale pour plus d’informations sur la synthétisation de la synthèse vocale de forme longue.
Voix de synthèse vocale OpenAI dans Azure AI Speech
Les voix de synthèse vocale OpenAI sont également prises en charge. Consultez les voix de synthèse vocale OpenAI dans Azure AI Speech et les voix multilingues. Vous pouvez remplacer en-US-AvaMultilingualNeural
par un nom vocal OpenAI pris en charge tel que en-US-FableMultilingualNeural
.
Nettoyer les ressources
Vous pouvez utiliser le portail Azure ou l’interface de ligne de commande (CLI) Azure pour supprimer la ressource Speech que vous avez créée.
Documentation de référence | Package (Go) | Exemples supplémentaires sur GitHub
Avec Azure AI Speech, vous pouvez exécuter une application qui synthétise une voix de type humain pour lire du texte. Vous pouvez modifier la voix, entrer du texte à prononcer et écouter la sortie sur le haut-parleur de votre ordinateur.
Conseil
Vous pouvez essayer la synthèse vocale dans Speech Studio Voice Gallery sans vous inscrire ni écrire de code.
Conseil
Essayez le Kit de ressources Azure AI Speech pour créer et exécuter facilement des exemples sur Visual Studio Code.
Prérequis
- Un abonnement Azure. Vous pouvez en créer un gratuitement.
- Créer une ressource Speech dans le portail Azure.
- Obtenez la clé de ressource et la région Speech. Une fois votre ressource vocale déployée, sélectionnez Accéder à la ressource pour afficher et gérer les clés.
Configurer l’environnement
Installez le SDK Speech pour le langage Go. Pour obtenir des instructions d’installation, consultez Installer le SDK Speech.
Définir des variables d’environnement
Vous devez authentifier votre application pour accéder à Azure AI services. Cet article vous montre comment utiliser des variables d’environnement pour stocker vos informations d’identification. Vous pouvez ensuite accéder aux variables d’environnement à partir de votre code pour authentifier votre application. Pour la production, utilisez un moyen plus sécurisé pour stocker vos informations d’identification et y accéder.
Important
Nous vous recommandons l’authentification Microsoft Entra ID avec les identités managées pour les ressources Azure pour éviter de stocker des informations d’identification avec vos applications qui s’exécutent dans le cloud.
Si vous utilisez une clé API, stockez-la en toute sécurité dans un autre emplacement, par exemple dans Azure Key Vault. N'incluez pas la clé API directement dans votre code et ne la diffusez jamais publiquement.
Pour plus d’informations sur la sécurité des services IA, consultez Authentifier les demandes auprès d’Azure AI services.
Pour définir les variables d'environnement de votre clé de ressource Speech et de votre région, ouvrez une fenêtre de console et suivez les instructions de votre système d'exploitation et de votre environnement de développement.
- Pour définir la variable d’environnement
SPEECH_KEY
, remplacez your-key par l’une des clés de votre ressource. - Pour définir la variable d’environnement
SPEECH_REGION
, remplacez your-region par l’une des régions de votre ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Remarque
Si vous avez uniquement besoin d’accéder aux variables d’environnement dans la console en cours d’exécution, vous pouvez la définir avec set
au lieu de setx
.
Après avoir ajouté les variables d'environnement, vous devrez éventuellement redémarrer tous les programmes qui ont besoin de lire les variables d'environnement, y compris la fenêtre de console. Par exemple, si vous utilisez Visual Studio comme éditeur, redémarrez Visual Studio avant d’exécuter l’exemple.
Création de l'application
Suivez ces étapes pour créer un module Go.
Ouvrez une fenêtre d’invite de commandes dans le dossier où vous souhaitez placer le nouveau projet. Créez un fichier nommé speech-synthesis.go.
Copiez le code suivant dans le fichier speech-synthesis.go :
package main import ( "bufio" "fmt" "os" "strings" "time" "github.com/Microsoft/cognitive-services-speech-sdk-go/audio" "github.com/Microsoft/cognitive-services-speech-sdk-go/common" "github.com/Microsoft/cognitive-services-speech-sdk-go/speech" ) func synthesizeStartedHandler(event speech.SpeechSynthesisEventArgs) { defer event.Close() fmt.Println("Synthesis started.") } func synthesizingHandler(event speech.SpeechSynthesisEventArgs) { defer event.Close() fmt.Printf("Synthesizing, audio chunk size %d.\n", len(event.Result.AudioData)) } func synthesizedHandler(event speech.SpeechSynthesisEventArgs) { defer event.Close() fmt.Printf("Synthesized, audio length %d.\n", len(event.Result.AudioData)) } func cancelledHandler(event speech.SpeechSynthesisEventArgs) { defer event.Close() fmt.Println("Received a cancellation.") } func main() { // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION" speechKey := os.Getenv("SPEECH_KEY") speechRegion := os.Getenv("SPEECH_REGION") audioConfig, err := audio.NewAudioConfigFromDefaultSpeakerOutput() if err != nil { fmt.Println("Got an error: ", err) return } defer audioConfig.Close() speechConfig, err := speech.NewSpeechConfigFromSubscription(speechKey, speechRegion) if err != nil { fmt.Println("Got an error: ", err) return } defer speechConfig.Close() speechConfig.SetSpeechSynthesisVoiceName("en-US-AvaMultilingualNeural") speechSynthesizer, err := speech.NewSpeechSynthesizerFromConfig(speechConfig, audioConfig) if err != nil { fmt.Println("Got an error: ", err) return } defer speechSynthesizer.Close() speechSynthesizer.SynthesisStarted(synthesizeStartedHandler) speechSynthesizer.Synthesizing(synthesizingHandler) speechSynthesizer.SynthesisCompleted(synthesizedHandler) speechSynthesizer.SynthesisCanceled(cancelledHandler) for { fmt.Printf("Enter some text that you want to speak, or enter empty text to exit.\n> ") text, _ := bufio.NewReader(os.Stdin).ReadString('\n') text = strings.TrimSuffix(text, "\n") if len(text) == 0 { break } task := speechSynthesizer.SpeakTextAsync(text) var outcome speech.SpeechSynthesisOutcome select { case outcome = <-task: case <-time.After(60 * time.Second): fmt.Println("Timed out") return } defer outcome.Close() if outcome.Error != nil { fmt.Println("Got an error: ", outcome.Error) return } if outcome.Result.Reason == common.SynthesizingAudioCompleted { fmt.Printf("Speech synthesized to speaker for text [%s].\n", text) } else { cancellation, _ := speech.NewCancellationDetailsFromSpeechSynthesisResult(outcome.Result) fmt.Printf("CANCELED: Reason=%d.\n", cancellation.Reason) if cancellation.Reason == common.Error { fmt.Printf("CANCELED: ErrorCode=%d\nCANCELED: ErrorDetails=[%s]\nCANCELED: Did you set the speech resource key and region values?\n", cancellation.ErrorCode, cancellation.ErrorDetails) } } } }
Pour modifier le langage de synthèse vocale, remplacez
en-US-AvaMultilingualNeural
par une autre voix prise en charge.Toutes les voix neuronales sont multilingues et parlent couramment leur propre langue et l’anglais. Par exemple, si le texte d’entrée en anglais est I'm excited to try text to speech et que vous avez défini
es-ES-ElviraNeural
, le texte est lu en anglais avec un accent espagnol. Si la voix ne s’exprime pas dans la langue correspondant au texte entré, le service Speech ne génère pas de données audio synthétisées.Exécutez les commandes suivantes pour créer un fichier go.mod lié aux composants hébergés sur GitHub :
go mod init speech-synthesis go get github.com/Microsoft/cognitive-services-speech-sdk-go
Important
N’oubliez pas de définir les variables d’environnement
SPEECH_KEY
etSPEECH_REGION
. Si vous ne définissez pas ces variables, l’exemple échoue avec un message d’erreur.Maintenant, générez et exécutez le code :
go build go run speech-synthesis
Notes
Voix de synthèse vocale OpenAI dans Azure AI Speech
Les voix de synthèse vocale OpenAI sont également prises en charge. Consultez les voix de synthèse vocale OpenAI dans Azure AI Speech et les voix multilingues. Vous pouvez remplacer en-US-AvaMultilingualNeural
par un nom vocal OpenAI pris en charge tel que en-US-FableMultilingualNeural
.
Nettoyer les ressources
Vous pouvez utiliser le portail Azure ou l’interface de ligne de commande (CLI) Azure pour supprimer la ressource Speech que vous avez créée.
Documentation de référence | Exemples supplémentaires sur GitHub
Avec Azure AI Speech, vous pouvez exécuter une application qui synthétise une voix de type humain pour lire du texte. Vous pouvez modifier la voix, entrer du texte à prononcer et écouter la sortie sur le haut-parleur de votre ordinateur.
Conseil
Vous pouvez essayer la synthèse vocale dans Speech Studio Voice Gallery sans vous inscrire ni écrire de code.
Conseil
Essayez le Kit de ressources Azure AI Speech pour créer et exécuter facilement des exemples sur Visual Studio Code.
Prérequis
- Un abonnement Azure. Vous pouvez en créer un gratuitement.
- Créer une ressource Speech dans le portail Azure.
- Obtenez la clé de ressource et la région Speech. Une fois votre ressource vocale déployée, sélectionnez Accéder à la ressource pour afficher et gérer les clés.
Configurer l’environnement
Pour configurer votre environnement, installez le SDK Speech. L’exemple de ce guide de démarrage rapide fonctionne avec le runtime Java.
Installez Apache Maven. Exécutez ensuite
mvn -v
pour confirmer la réussite de l’installation.Créez un fichier pom.xml à la racine de votre projet, puis copiez-y le code suivant :
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.microsoft.cognitiveservices.speech.samples</groupId> <artifactId>quickstart-eclipse</artifactId> <version>1.0.0-SNAPSHOT</version> <build> <sourceDirectory>src</sourceDirectory> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.7.0</version> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build> <dependencies> <dependency> <groupId>com.microsoft.cognitiveservices.speech</groupId> <artifactId>client-sdk</artifactId> <version>1.40.0</version> </dependency> </dependencies> </project>
Installez le SDK Speech et les dépendances.
mvn clean dependency:copy-dependencies
Définir des variables d’environnement
Vous devez authentifier votre application pour accéder à Azure AI services. Cet article vous montre comment utiliser des variables d’environnement pour stocker vos informations d’identification. Vous pouvez ensuite accéder aux variables d’environnement à partir de votre code pour authentifier votre application. Pour la production, utilisez un moyen plus sécurisé pour stocker vos informations d’identification et y accéder.
Important
Nous vous recommandons l’authentification Microsoft Entra ID avec les identités managées pour les ressources Azure pour éviter de stocker des informations d’identification avec vos applications qui s’exécutent dans le cloud.
Si vous utilisez une clé API, stockez-la en toute sécurité dans un autre emplacement, par exemple dans Azure Key Vault. N'incluez pas la clé API directement dans votre code et ne la diffusez jamais publiquement.
Pour plus d’informations sur la sécurité des services IA, consultez Authentifier les demandes auprès d’Azure AI services.
Pour définir les variables d'environnement de votre clé de ressource Speech et de votre région, ouvrez une fenêtre de console et suivez les instructions de votre système d'exploitation et de votre environnement de développement.
- Pour définir la variable d’environnement
SPEECH_KEY
, remplacez your-key par l’une des clés de votre ressource. - Pour définir la variable d’environnement
SPEECH_REGION
, remplacez your-region par l’une des régions de votre ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Remarque
Si vous avez uniquement besoin d’accéder aux variables d’environnement dans la console en cours d’exécution, vous pouvez la définir avec set
au lieu de setx
.
Après avoir ajouté les variables d'environnement, vous devrez éventuellement redémarrer tous les programmes qui ont besoin de lire les variables d'environnement, y compris la fenêtre de console. Par exemple, si vous utilisez Visual Studio comme éditeur, redémarrez Visual Studio avant d’exécuter l’exemple.
Création de l'application
Suivez ces étapes pour créer une application console pour la reconnaissance vocale.
Créez un fichier nommé SpeechSynthesis.java dans le même répertoire racine du projet.
Copiez le code suivant dans SpeechSynthesis.java :
import com.microsoft.cognitiveservices.speech.*; import com.microsoft.cognitiveservices.speech.audio.*; import java.util.Scanner; import java.util.concurrent.ExecutionException; public class SpeechSynthesis { // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION" private static String speechKey = System.getenv("SPEECH_KEY"); private static String speechRegion = System.getenv("SPEECH_REGION"); public static void main(String[] args) throws InterruptedException, ExecutionException { SpeechConfig speechConfig = SpeechConfig.fromSubscription(speechKey, speechRegion); speechConfig.setSpeechSynthesisVoiceName("en-US-AvaMultilingualNeural"); SpeechSynthesizer speechSynthesizer = new SpeechSynthesizer(speechConfig); // Get text from the console and synthesize to the default speaker. System.out.println("Enter some text that you want to speak >"); String text = new Scanner(System.in).nextLine(); if (text.isEmpty()) { return; } SpeechSynthesisResult speechSynthesisResult = speechSynthesizer.SpeakTextAsync(text).get(); if (speechSynthesisResult.getReason() == ResultReason.SynthesizingAudioCompleted) { System.out.println("Speech synthesized to speaker for text [" + text + "]"); } else if (speechSynthesisResult.getReason() == ResultReason.Canceled) { SpeechSynthesisCancellationDetails cancellation = SpeechSynthesisCancellationDetails.fromResult(speechSynthesisResult); System.out.println("CANCELED: Reason=" + cancellation.getReason()); if (cancellation.getReason() == CancellationReason.Error) { System.out.println("CANCELED: ErrorCode=" + cancellation.getErrorCode()); System.out.println("CANCELED: ErrorDetails=" + cancellation.getErrorDetails()); System.out.println("CANCELED: Did you set the speech resource key and region values?"); } } System.exit(0); } }
Pour modifier le langage de synthèse vocale, remplacez
en-US-AvaMultilingualNeural
par une autre voix prise en charge.Toutes les voix neuronales sont multilingues et parlent couramment leur propre langue et l’anglais. Par exemple, si le texte d’entrée en anglais est I'm excited to try text to speech et que vous avez défini
es-ES-ElviraNeural
, le texte est lu en anglais avec un accent espagnol. Si la voix ne s’exprime pas dans la langue correspondant au texte entré, le service Speech ne génère pas de données audio synthétisées.Exécutez votre application console pour lire la synthèse vocale sur le haut-parleur par défaut.
javac SpeechSynthesis.java -cp ".;target\dependency\*" java -cp ".;target\dependency\*" SpeechSynthesis
Important
N’oubliez pas de définir les variables d’environnement
SPEECH_KEY
etSPEECH_REGION
. Si vous ne définissez pas ces variables, l’exemple échoue avec un message d’erreur.Entrez le texte à prononcer. Par exemple, tapez J’ai hâte d’essayer la synthèse vocale. Sélectionnez la touche Entrée pour entendre la parole synthétisée.
Enter some text that you want to speak > I'm excited to try text to speech
Notes
Plus d’options de synthèse vocale
Ce guide de démarrage rapide utilise l’opération SpeakTextAsync
pour synthétiser un petit bloc de texte que vous entrez. Vous pouvez également utiliser un texte long à partir d'un fichier et contrôler plus finement les styles de voix, la prosodie et d'autres paramètres.
- Consultez Comment synthétiser le message et Vue d’ensemble SSML (Speech Synthesis Markup Language) pour plus d’informations sur la synthèse du message à partir d’un fichier et un contrôle plus fin sur les styles vocaux, la prosodie et d’autres paramètres.
- Consultez API Synthèse par lots pour la synthèse vocale pour plus d’informations sur la synthétisation de la synthèse vocale de forme longue.
Voix de synthèse vocale OpenAI dans Azure AI Speech
Les voix de synthèse vocale OpenAI sont également prises en charge. Consultez les voix de synthèse vocale OpenAI dans Azure AI Speech et les voix multilingues. Vous pouvez remplacer en-US-AvaMultilingualNeural
par un nom vocal OpenAI pris en charge tel que en-US-FableMultilingualNeural
.
Nettoyer les ressources
Vous pouvez utiliser le portail Azure ou l’interface de ligne de commande (CLI) Azure pour supprimer la ressource Speech que vous avez créée.
Documentation de référence | Package (npm) | Exemples supplémentaires sur GitHub | Code source de la bibliothèque
Avec Azure AI Speech, vous pouvez exécuter une application qui synthétise une voix de type humain pour lire du texte. Vous pouvez modifier la voix, entrer du texte à prononcer et écouter la sortie sur le haut-parleur de votre ordinateur.
Conseil
Vous pouvez essayer la synthèse vocale dans Speech Studio Voice Gallery sans vous inscrire ni écrire de code.
Conseil
Essayez le Kit de ressources Azure AI Speech pour créer et exécuter facilement des exemples sur Visual Studio Code.
Prérequis
- Un abonnement Azure. Vous pouvez en créer un gratuitement.
- Créer une ressource Speech dans le portail Azure.
- Obtenez la clé de ressource et la région Speech. Une fois votre ressource vocale déployée, sélectionnez Accéder à la ressource pour afficher et gérer les clés.
Configurer l’environnement
Pour configurer votre environnement, installez le SDK Speech pour JavaScript. Si vous voulez simplement le nom du package pour effectuer l’installation, exécutez npm install microsoft-cognitiveservices-speech-sdk
. Pour obtenir des instructions d’installation, consultez Installer le SDK Speech.
Définir des variables d’environnement
Vous devez authentifier votre application pour accéder à Azure AI services. Cet article vous montre comment utiliser des variables d’environnement pour stocker vos informations d’identification. Vous pouvez ensuite accéder aux variables d’environnement à partir de votre code pour authentifier votre application. Pour la production, utilisez un moyen plus sécurisé pour stocker vos informations d’identification et y accéder.
Important
Nous vous recommandons l’authentification Microsoft Entra ID avec les identités managées pour les ressources Azure pour éviter de stocker des informations d’identification avec vos applications qui s’exécutent dans le cloud.
Si vous utilisez une clé API, stockez-la en toute sécurité dans un autre emplacement, par exemple dans Azure Key Vault. N'incluez pas la clé API directement dans votre code et ne la diffusez jamais publiquement.
Pour plus d’informations sur la sécurité des services IA, consultez Authentifier les demandes auprès d’Azure AI services.
Pour définir les variables d'environnement de votre clé de ressource Speech et de votre région, ouvrez une fenêtre de console et suivez les instructions de votre système d'exploitation et de votre environnement de développement.
- Pour définir la variable d’environnement
SPEECH_KEY
, remplacez your-key par l’une des clés de votre ressource. - Pour définir la variable d’environnement
SPEECH_REGION
, remplacez your-region par l’une des régions de votre ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Remarque
Si vous avez uniquement besoin d’accéder aux variables d’environnement dans la console en cours d’exécution, vous pouvez la définir avec set
au lieu de setx
.
Après avoir ajouté les variables d'environnement, vous devrez éventuellement redémarrer tous les programmes qui ont besoin de lire les variables d'environnement, y compris la fenêtre de console. Par exemple, si vous utilisez Visual Studio comme éditeur, redémarrez Visual Studio avant d’exécuter l’exemple.
Création de l'application
Suivez ces étapes pour créer une application console Node.js à des fins de synthèse vocale.
Ouvrez une fenêtre de console à l'endroit où vous souhaitez créer le projet, puis créez un fichier nommé SpeechSynthesis.js.
Installez le SDK Speech pour JavaScript :
npm install microsoft-cognitiveservices-speech-sdk
Copiez le code suivant dans SpeechSynthesis.js :
(function() { "use strict"; var sdk = require("microsoft-cognitiveservices-speech-sdk"); var readline = require("readline"); var audioFile = "YourAudioFile.wav"; // This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION" const speechConfig = sdk.SpeechConfig.fromSubscription(process.env.SPEECH_KEY, process.env.SPEECH_REGION); const audioConfig = sdk.AudioConfig.fromAudioFileOutput(audioFile); // The language of the voice that speaks. speechConfig.speechSynthesisVoiceName = "en-US-AvaMultilingualNeural"; // Create the speech synthesizer. var synthesizer = new sdk.SpeechSynthesizer(speechConfig, audioConfig); var rl = readline.createInterface({ input: process.stdin, output: process.stdout }); rl.question("Enter some text that you want to speak >\n> ", function (text) { rl.close(); // Start the synthesizer and wait for a result. synthesizer.speakTextAsync(text, function (result) { if (result.reason === sdk.ResultReason.SynthesizingAudioCompleted) { console.log("synthesis finished."); } else { console.error("Speech synthesis canceled, " + result.errorDetails + "\nDid you set the speech resource key and region values?"); } synthesizer.close(); synthesizer = null; }, function (err) { console.trace("err - " + err); synthesizer.close(); synthesizer = null; }); console.log("Now synthesizing to: " + audioFile); }); }());
Dans SpeechSynthesis.js, vous pouvez éventuellement renommer YourAudioFile.wav en un autre nom de fichier de sortie.
Pour modifier le langage de synthèse vocale, remplacez
en-US-AvaMultilingualNeural
par une autre voix prise en charge.Toutes les voix neuronales sont multilingues et parlent couramment leur propre langue et l’anglais. Par exemple, si le texte d’entrée en anglais est I'm excited to try text to speech et que vous avez défini
es-ES-ElviraNeural
, le texte est lu en anglais avec un accent espagnol. Si la voix ne s’exprime pas dans la langue correspondant au texte entré, le service Speech ne génère pas de données audio synthétisées.Exécutez votre application console pour démarrer la synthèse vocale dans un fichier :
node SpeechSynthesis.js
Important
N’oubliez pas de définir les variables d’environnement
SPEECH_KEY
etSPEECH_REGION
. Si vous ne définissez pas ces variables, l’exemple échoue avec un message d’erreur.Le texte fourni doit être dans un fichier audio :
Enter some text that you want to speak > > I'm excited to try text to speech Now synthesizing to: YourAudioFile.wav synthesis finished.
Notes
Plus d’options de synthèse vocale
Ce guide de démarrage rapide utilise l’opération SpeakTextAsync
pour synthétiser un petit bloc de texte que vous entrez. Vous pouvez également utiliser un texte long à partir d'un fichier et contrôler plus finement les styles de voix, la prosodie et d'autres paramètres.
- Consultez Comment synthétiser le message et Vue d’ensemble SSML (Speech Synthesis Markup Language) pour plus d’informations sur la synthèse du message à partir d’un fichier et un contrôle plus fin sur les styles vocaux, la prosodie et d’autres paramètres.
- Consultez API Synthèse par lots pour la synthèse vocale pour plus d’informations sur la synthétisation de la synthèse vocale de forme longue.
Voix de synthèse vocale OpenAI dans Azure AI Speech
Les voix de synthèse vocale OpenAI sont également prises en charge. Consultez les voix de synthèse vocale OpenAI dans Azure AI Speech et les voix multilingues. Vous pouvez remplacer en-US-AvaMultilingualNeural
par un nom vocal OpenAI pris en charge tel que en-US-FableMultilingualNeural
.
Nettoyer les ressources
Vous pouvez utiliser le portail Azure ou l’interface de ligne de commande (CLI) Azure pour supprimer la ressource Speech que vous avez créée.
Documentation de référence | Package (téléchargement) | Exemples supplémentaires sur GitHub
Avec Azure AI Speech, vous pouvez exécuter une application qui synthétise une voix de type humain pour lire du texte. Vous pouvez modifier la voix, entrer du texte à prononcer et écouter la sortie sur le haut-parleur de votre ordinateur.
Conseil
Vous pouvez essayer la synthèse vocale dans Speech Studio Voice Gallery sans vous inscrire ni écrire de code.
Conseil
Essayez le Kit de ressources Azure AI Speech pour créer et exécuter facilement des exemples sur Visual Studio Code.
Prérequis
- Un abonnement Azure. Vous pouvez en créer un gratuitement.
- Créer une ressource Speech dans le portail Azure.
- Obtenez la clé de ressource et la région Speech. Une fois votre ressource vocale déployée, sélectionnez Accéder à la ressource pour afficher et gérer les clés.
Configurer l’environnement
Le kit de développement logiciel (SDK) Speech pour Objective-C est distribué en tant que bundle de framework. L’infrastructure prend en charge Objective-C et Swift sur iOS et macOS.
Le kit de développement logiciel (SDK) Speech peut être utilisé dans les projets Xcode en tant que CocoaPod, ou téléchargé directement et lié manuellement. Ce guide utilise un CocoaPod. Installez le gestionnaire de dépendances de CocoaPod comme décrit dans ses instructions d’installation.
Définir des variables d’environnement
Vous devez authentifier votre application pour accéder à Azure AI services. Cet article vous montre comment utiliser des variables d’environnement pour stocker vos informations d’identification. Vous pouvez ensuite accéder aux variables d’environnement à partir de votre code pour authentifier votre application. Pour la production, utilisez un moyen plus sécurisé pour stocker vos informations d’identification et y accéder.
Important
Nous vous recommandons l’authentification Microsoft Entra ID avec les identités managées pour les ressources Azure pour éviter de stocker des informations d’identification avec vos applications qui s’exécutent dans le cloud.
Si vous utilisez une clé API, stockez-la en toute sécurité dans un autre emplacement, par exemple dans Azure Key Vault. N'incluez pas la clé API directement dans votre code et ne la diffusez jamais publiquement.
Pour plus d’informations sur la sécurité des services IA, consultez Authentifier les demandes auprès d’Azure AI services.
Pour définir les variables d'environnement de votre clé de ressource Speech et de votre région, ouvrez une fenêtre de console et suivez les instructions de votre système d'exploitation et de votre environnement de développement.
- Pour définir la variable d’environnement
SPEECH_KEY
, remplacez your-key par l’une des clés de votre ressource. - Pour définir la variable d’environnement
SPEECH_REGION
, remplacez your-region par l’une des régions de votre ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Remarque
Si vous avez uniquement besoin d’accéder aux variables d’environnement dans la console en cours d’exécution, vous pouvez la définir avec set
au lieu de setx
.
Après avoir ajouté les variables d'environnement, vous devrez éventuellement redémarrer tous les programmes qui ont besoin de lire les variables d'environnement, y compris la fenêtre de console. Par exemple, si vous utilisez Visual Studio comme éditeur, redémarrez Visual Studio avant d’exécuter l’exemple.
Création de l'application
Suivez ces étapes pour synthétiser la voix dans une application macOS.
Clonez le dépôt Azure-Samples/cognitive-services-speech-sdk pour obtenir l’exemple de projet Synthesize audio in Objective-C on macOS using the Speech SDK. Le référentiel contient également des exemples iOS.
Ouvrez le répertoire de l’exemple d’application téléchargé (
helloworld
) dans un terminal.Exécutez la commande
pod install
. Cette commande génère un espace de travail Xcodehelloworld.xcworkspace
contenant l’exemple d’application et le SDK Speech comme dépendance.Ouvrez l’espace de travail
helloworld.xcworkspace
dans Xcode.Ouvrez le fichier nommé AppDelegate.m et recherchez la méthode
buttonPressed
comme indiqué ici.- (void)buttonPressed:(NSButton *)button { // Creates an instance of a speech config with specified subscription key and service region. NSString *speechKey = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_KEY"]; NSString *serviceRegion = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_REGION"]; SPXSpeechConfiguration *speechConfig = [[SPXSpeechConfiguration alloc] initWithSubscription:speechKey region:serviceRegion]; speechConfig.speechSynthesisVoiceName = @"en-US-AvaMultilingualNeural"; SPXSpeechSynthesizer *speechSynthesizer = [[SPXSpeechSynthesizer alloc] init:speechConfig]; NSLog(@"Start synthesizing..."); SPXSpeechSynthesisResult *speechResult = [speechSynthesizer speakText:[self.textField stringValue]]; // Checks result. if (SPXResultReason_Canceled == speechResult.reason) { SPXSpeechSynthesisCancellationDetails *details = [[SPXSpeechSynthesisCancellationDetails alloc] initFromCanceledSynthesisResult:speechResult]; NSLog(@"Speech synthesis was canceled: %@. Did you set the speech resource key and region values?", details.errorDetails); } else if (SPXResultReason_SynthesizingAudioCompleted == speechResult.reason) { NSLog(@"Speech synthesis was completed"); } else { NSLog(@"There was an error."); } }
Dans AppDelegate.m, utilisez les variables d’environnement que vous avez précédemment définies pour la clé et la région de votre ressource Speech.
NSString *speechKey = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_KEY"]; NSString *serviceRegion = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_REGION"];
Dans AppDelegate.m, vous pouvez éventuellement inclure un nom de voix de synthèse vocale comme indiqué ici :
speechConfig.speechSynthesisVoiceName = @"en-US-AvaMultilingualNeural";
Pour modifier le langage de synthèse vocale, remplacez
en-US-AvaMultilingualNeural
par une autre voix prise en charge.Toutes les voix neuronales sont multilingues et parlent couramment leur propre langue et l’anglais. Par exemple, si le texte d’entrée en anglais est I'm excited to try text to speech et que vous avez défini
es-ES-ElviraNeural
, le texte est lu en anglais avec un accent espagnol. Si la voix ne s’exprime pas dans la langue correspondant au texte entré, le service Speech ne génère pas de données audio synthétisées.Pour afficher la sortie de débogage, sélectionnez View>Debug Area>Activate Console.
Pour générer et exécuter l’exemple de code, sélectionnez Produit>Exécuter dans le menu ou sélectionnez le bouton Lecture.
Important
N’oubliez pas de définir les variables d’environnement
SPEECH_KEY
etSPEECH_REGION
. Si vous ne définissez pas ces variables, l’exemple échoue avec un message d’erreur.
Après avoir entré du texte et cliqué sur le bouton dans l’application, vous devez entendre la lecture de la sortie audio de synthèse.
Notes
Plus d’options de synthèse vocale
Ce guide de démarrage rapide utilise l’opération SpeakText
pour synthétiser un petit bloc de texte que vous entrez. Vous pouvez également utiliser un texte long à partir d'un fichier et contrôler plus finement les styles de voix, la prosodie et d'autres paramètres.
- Consultez Comment synthétiser le message et Vue d’ensemble SSML (Speech Synthesis Markup Language) pour plus d’informations sur la synthèse du message à partir d’un fichier et un contrôle plus fin sur les styles vocaux, la prosodie et d’autres paramètres.
- Consultez API Synthèse par lots pour la synthèse vocale pour plus d’informations sur la synthétisation de la synthèse vocale de forme longue.
Voix de synthèse vocale OpenAI dans Azure AI Speech
Les voix de synthèse vocale OpenAI sont également prises en charge. Consultez les voix de synthèse vocale OpenAI dans Azure AI Speech et les voix multilingues. Vous pouvez remplacer en-US-AvaMultilingualNeural
par un nom vocal OpenAI pris en charge tel que en-US-FableMultilingualNeural
.
Nettoyer les ressources
Vous pouvez utiliser le portail Azure ou l’interface de ligne de commande (CLI) Azure pour supprimer la ressource Speech que vous avez créée.
Documentation de référence | Package (téléchargement) | Exemples supplémentaires sur GitHub
Avec Azure AI Speech, vous pouvez exécuter une application qui synthétise une voix de type humain pour lire du texte. Vous pouvez modifier la voix, entrer du texte à prononcer et écouter la sortie sur le haut-parleur de votre ordinateur.
Conseil
Vous pouvez essayer la synthèse vocale dans Speech Studio Voice Gallery sans vous inscrire ni écrire de code.
Conseil
Essayez le Kit de ressources Azure AI Speech pour créer et exécuter facilement des exemples sur Visual Studio Code.
Prérequis
- Un abonnement Azure. Vous pouvez en créer un gratuitement.
- Créer une ressource Speech dans le portail Azure.
- Obtenez la clé de ressource et la région Speech. Une fois votre ressource vocale déployée, sélectionnez Accéder à la ressource pour afficher et gérer les clés.
Configurer l’environnement
Le kit de développement logiciel (SDK) Speech pour Swift est distribué en tant que bundle de framework. L’infrastructure prend en charge Objective-C et Swift sur iOS et macOS.
Le kit de développement logiciel (SDK) Speech peut être utilisé dans les projets Xcode en tant que CocoaPod, ou téléchargé directement et lié manuellement. Ce guide utilise un CocoaPod. Installez le gestionnaire de dépendances de CocoaPod comme décrit dans ses instructions d’installation.
Définir des variables d’environnement
Vous devez authentifier votre application pour accéder à Azure AI services. Cet article vous montre comment utiliser des variables d’environnement pour stocker vos informations d’identification. Vous pouvez ensuite accéder aux variables d’environnement à partir de votre code pour authentifier votre application. Pour la production, utilisez un moyen plus sécurisé pour stocker vos informations d’identification et y accéder.
Important
Nous vous recommandons l’authentification Microsoft Entra ID avec les identités managées pour les ressources Azure pour éviter de stocker des informations d’identification avec vos applications qui s’exécutent dans le cloud.
Si vous utilisez une clé API, stockez-la en toute sécurité dans un autre emplacement, par exemple dans Azure Key Vault. N'incluez pas la clé API directement dans votre code et ne la diffusez jamais publiquement.
Pour plus d’informations sur la sécurité des services IA, consultez Authentifier les demandes auprès d’Azure AI services.
Pour définir les variables d'environnement de votre clé de ressource Speech et de votre région, ouvrez une fenêtre de console et suivez les instructions de votre système d'exploitation et de votre environnement de développement.
- Pour définir la variable d’environnement
SPEECH_KEY
, remplacez your-key par l’une des clés de votre ressource. - Pour définir la variable d’environnement
SPEECH_REGION
, remplacez your-region par l’une des régions de votre ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Remarque
Si vous avez uniquement besoin d’accéder aux variables d’environnement dans la console en cours d’exécution, vous pouvez la définir avec set
au lieu de setx
.
Après avoir ajouté les variables d'environnement, vous devrez éventuellement redémarrer tous les programmes qui ont besoin de lire les variables d'environnement, y compris la fenêtre de console. Par exemple, si vous utilisez Visual Studio comme éditeur, redémarrez Visual Studio avant d’exécuter l’exemple.
Création de l'application
Suivez ces étapes pour synthétiser la voix dans une application macOS.
Clonez le dépôt Azure-Samples/cognitive-services-speech-sdk pour obtenir l’exemple de projet Synthesize audio in Swift on macOS using the Speech SDK. Le référentiel contient également des exemples iOS.
Accédez au répertoire de l’exemple d’application téléchargé (
helloworld
) dans un terminal.Exécutez la commande
pod install
. Cette commande génère un espace de travail Xcodehelloworld.xcworkspace
contenant l’exemple d’application et le SDK Speech comme dépendance.Ouvrez l’espace de travail
helloworld.xcworkspace
dans Xcode.Ouvrez le fichier nommé AppDelegate.swift et recherchez les méthodes
applicationDidFinishLaunching
etsynthesize
comme indiqué ici.import Cocoa @NSApplicationMain class AppDelegate: NSObject, NSApplicationDelegate, NSTextFieldDelegate { var textField: NSTextField! var synthesisButton: NSButton! var inputText: String! var sub: String! var region: String! @IBOutlet weak var window: NSWindow! func applicationDidFinishLaunching(_ aNotification: Notification) { print("loading") // load subscription information sub = ProcessInfo.processInfo.environment["SPEECH_KEY"] region = ProcessInfo.processInfo.environment["SPEECH_REGION"] inputText = "" textField = NSTextField(frame: NSRect(x: 100, y: 200, width: 200, height: 50)) textField.textColor = NSColor.black textField.lineBreakMode = .byWordWrapping textField.placeholderString = "Type something to synthesize." textField.delegate = self self.window.contentView?.addSubview(textField) synthesisButton = NSButton(frame: NSRect(x: 100, y: 100, width: 200, height: 30)) synthesisButton.title = "Synthesize" synthesisButton.target = self synthesisButton.action = #selector(synthesisButtonClicked) self.window.contentView?.addSubview(synthesisButton) } @objc func synthesisButtonClicked() { DispatchQueue.global(qos: .userInitiated).async { self.synthesize() } } func synthesize() { var speechConfig: SPXSpeechConfiguration? do { try speechConfig = SPXSpeechConfiguration(subscription: sub, region: region) } catch { print("error \(error) happened") speechConfig = nil } speechConfig?.speechSynthesisVoiceName = "en-US-AvaMultilingualNeural"; let synthesizer = try! SPXSpeechSynthesizer(speechConfig!) let result = try! synthesizer.speakText(inputText) if result.reason == SPXResultReason.canceled { let cancellationDetails = try! SPXSpeechSynthesisCancellationDetails(fromCanceledSynthesisResult: result) print("cancelled, error code: \(cancellationDetails.errorCode) detail: \(cancellationDetails.errorDetails!) ") print("Did you set the speech resource key and region values?"); return } } func controlTextDidChange(_ obj: Notification) { let textFiled = obj.object as! NSTextField inputText = textFiled.stringValue } }
Dans AppDelegate.m, utilisez les variables d’environnement que vous avez précédemment définies pour la clé et la région de votre ressource Speech.
sub = ProcessInfo.processInfo.environment["SPEECH_KEY"] region = ProcessInfo.processInfo.environment["SPEECH_REGION"]
Dans AppDelegate.m, vous pouvez éventuellement inclure un nom de voix de synthèse vocale comme indiqué ici :
speechConfig?.speechSynthesisVoiceName = "en-US-AvaMultilingualNeural";
Pour modifier le langage de synthèse vocale, remplacez
en-US-AvaMultilingualNeural
par une autre voix prise en charge.Toutes les voix neuronales sont multilingues et parlent couramment leur propre langue et l’anglais. Par exemple, si le texte d’entrée en anglais est I'm excited to try text to speech et que vous avez défini
es-ES-ElviraNeural
, le texte est lu en anglais avec un accent espagnol. Si la voix ne s’exprime pas dans la langue correspondant au texte entré, le service Speech ne génère pas de données audio synthétisées.Pour afficher la sortie de débogage, sélectionnez View>Debug Area>Activate Console.
Pour générer et exécuter l’exemple de code, sélectionnez Produit>Exécuter dans le menu ou sélectionnez le bouton Lecture.
Important
N’oubliez pas de définir les variables d’environnement SPEECH_KEY
et SPEECH_REGION
. Si vous ne définissez pas ces variables, l’exemple échoue avec un message d’erreur.
Après avoir entré du texte et cliqué sur le bouton dans l’application, vous devez entendre la lecture de la sortie audio de synthèse.
Notes
Plus d’options de synthèse vocale
Ce guide de démarrage rapide utilise l’opération SpeakText
pour synthétiser un petit bloc de texte que vous entrez. Vous pouvez également utiliser un texte long à partir d'un fichier et contrôler plus finement les styles de voix, la prosodie et d'autres paramètres.
- Consultez Comment synthétiser le message et Vue d’ensemble SSML (Speech Synthesis Markup Language) pour plus d’informations sur la synthèse du message à partir d’un fichier et un contrôle plus fin sur les styles vocaux, la prosodie et d’autres paramètres.
- Consultez API Synthèse par lots pour la synthèse vocale pour plus d’informations sur la synthétisation de la synthèse vocale de forme longue.
Voix de synthèse vocale OpenAI dans Azure AI Speech
Les voix de synthèse vocale OpenAI sont également prises en charge. Consultez les voix de synthèse vocale OpenAI dans Azure AI Speech et les voix multilingues. Vous pouvez remplacer en-US-AvaMultilingualNeural
par un nom vocal OpenAI pris en charge tel que en-US-FableMultilingualNeural
.
Nettoyer les ressources
Vous pouvez utiliser le portail Azure ou l’interface de ligne de commande (CLI) Azure pour supprimer la ressource Speech que vous avez créée.
Documentation de référence | Package (PyPi) | Exemples supplémentaires sur GitHub
Avec Azure AI Speech, vous pouvez exécuter une application qui synthétise une voix de type humain pour lire du texte. Vous pouvez modifier la voix, entrer du texte à prononcer et écouter la sortie sur le haut-parleur de votre ordinateur.
Conseil
Vous pouvez essayer la synthèse vocale dans Speech Studio Voice Gallery sans vous inscrire ni écrire de code.
Conseil
Essayez le Kit de ressources Azure AI Speech pour créer et exécuter facilement des exemples sur Visual Studio Code.
Prérequis
- Un abonnement Azure. Vous pouvez en créer un gratuitement.
- Créer une ressource Speech dans le portail Azure.
- Obtenez la clé de ressource et la région Speech. Une fois votre ressource vocale déployée, sélectionnez Accéder à la ressource pour afficher et gérer les clés.
Configurer l’environnement
Le kit SDK Speech pour Python est disponible sous forme de module Python Package Index (PyPI). Le Kit de développement logiciel (SDK) Speech pour Python est compatible avec Windows, Linux et macOS.
- Sur Windows, installez Microsoft Redistributable Visual C++ pour Visual Studio 2015, 2017, 2019 et 2022 pour votre plateforme. L’installation de ce package peut nécessiter un redémarrage.
- Sur Linux, vous devez utiliser l’architecture cible x64.
Installez Python 3.7 ou une version ultérieure. Pour connaître la configuration requise, consultez Installer le kit de développement logiciel (SDK) Speech.
Définir des variables d’environnement
Vous devez authentifier votre application pour accéder à Azure AI services. Cet article vous montre comment utiliser des variables d’environnement pour stocker vos informations d’identification. Vous pouvez ensuite accéder aux variables d’environnement à partir de votre code pour authentifier votre application. Pour la production, utilisez un moyen plus sécurisé pour stocker vos informations d’identification et y accéder.
Important
Nous vous recommandons l’authentification Microsoft Entra ID avec les identités managées pour les ressources Azure pour éviter de stocker des informations d’identification avec vos applications qui s’exécutent dans le cloud.
Si vous utilisez une clé API, stockez-la en toute sécurité dans un autre emplacement, par exemple dans Azure Key Vault. N'incluez pas la clé API directement dans votre code et ne la diffusez jamais publiquement.
Pour plus d’informations sur la sécurité des services IA, consultez Authentifier les demandes auprès d’Azure AI services.
Pour définir les variables d'environnement de votre clé de ressource Speech et de votre région, ouvrez une fenêtre de console et suivez les instructions de votre système d'exploitation et de votre environnement de développement.
- Pour définir la variable d’environnement
SPEECH_KEY
, remplacez your-key par l’une des clés de votre ressource. - Pour définir la variable d’environnement
SPEECH_REGION
, remplacez your-region par l’une des régions de votre ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Remarque
Si vous avez uniquement besoin d’accéder aux variables d’environnement dans la console en cours d’exécution, vous pouvez la définir avec set
au lieu de setx
.
Après avoir ajouté les variables d'environnement, vous devrez éventuellement redémarrer tous les programmes qui ont besoin de lire les variables d'environnement, y compris la fenêtre de console. Par exemple, si vous utilisez Visual Studio comme éditeur, redémarrez Visual Studio avant d’exécuter l’exemple.
Création de l'application
Suivez ces étapes pour créer une application console.
Ouvrez une fenêtre d’invite de commandes dans le dossier où vous souhaitez placer le nouveau projet. Créez un fichier nommé speech-synthesis.py.
Exécutez cette commande pour installer le SDK Speech :
pip install azure-cognitiveservices-speech
Copiez le code suivant dans le fichier speech_synthesis.py :
import os import azure.cognitiveservices.speech as speechsdk # This example requires environment variables named "SPEECH_KEY" and "SPEECH_REGION" speech_config = speechsdk.SpeechConfig(subscription=os.environ.get('SPEECH_KEY'), region=os.environ.get('SPEECH_REGION')) audio_config = speechsdk.audio.AudioOutputConfig(use_default_speaker=True) # The neural multilingual voice can speak different languages based on the input text. speech_config.speech_synthesis_voice_name='en-US-AvaMultilingualNeural' speech_synthesizer = speechsdk.SpeechSynthesizer(speech_config=speech_config, audio_config=audio_config) # Get text from the console and synthesize to the default speaker. print("Enter some text that you want to speak >") text = input() speech_synthesis_result = speech_synthesizer.speak_text_async(text).get() if speech_synthesis_result.reason == speechsdk.ResultReason.SynthesizingAudioCompleted: print("Speech synthesized for text [{}]".format(text)) elif speech_synthesis_result.reason == speechsdk.ResultReason.Canceled: cancellation_details = speech_synthesis_result.cancellation_details print("Speech synthesis canceled: {}".format(cancellation_details.reason)) if cancellation_details.reason == speechsdk.CancellationReason.Error: if cancellation_details.error_details: print("Error details: {}".format(cancellation_details.error_details)) print("Did you set the speech resource key and region values?")
Pour modifier le langage de synthèse vocale, remplacez
en-US-AvaMultilingualNeural
par une autre voix prise en charge.Toutes les voix neuronales sont multilingues et parlent couramment leur propre langue et l’anglais. Par exemple, si le texte d’entrée en anglais est I'm excited to try text to speech et que vous avez défini
es-ES-ElviraNeural
, le texte est lu en anglais avec un accent espagnol. Si la voix ne s’exprime pas dans la langue correspondant au texte entré, le service Speech ne génère pas de données audio synthétisées.Exécutez votre nouvelle application console pour démarrer la synthèse vocale avec l’orateur par défaut.
python speech_synthesis.py
Important
N’oubliez pas de définir les variables d’environnement
SPEECH_KEY
etSPEECH_REGION
. Si vous ne définissez pas ces variables, l’exemple échoue avec un message d’erreur.Entrez le texte à prononcer. Par exemple, tapez J’ai hâte d’essayer la synthèse vocale. Sélectionnez la touche Entrée pour entendre la parole synthétisée.
Enter some text that you want to speak > I'm excited to try text to speech
Notes
Plus d’options de synthèse vocale
Ce guide de démarrage rapide utilise l’opération speak_text_async
pour synthétiser un petit bloc de texte que vous entrez. Vous pouvez également utiliser un texte long à partir d'un fichier et contrôler plus finement les styles de voix, la prosodie et d'autres paramètres.
- Consultez Comment synthétiser le message et Vue d’ensemble SSML (Speech Synthesis Markup Language) pour plus d’informations sur la synthèse du message à partir d’un fichier et un contrôle plus fin sur les styles vocaux, la prosodie et d’autres paramètres.
- Consultez API Synthèse par lots pour la synthèse vocale pour plus d’informations sur la synthétisation de la synthèse vocale de forme longue.
Voix de synthèse vocale OpenAI dans Azure AI Speech
Les voix de synthèse vocale OpenAI sont également prises en charge. Consultez les voix de synthèse vocale OpenAI dans Azure AI Speech et les voix multilingues. Vous pouvez remplacer en-US-AvaMultilingualNeural
par un nom vocal OpenAI pris en charge tel que en-US-FableMultilingualNeural
.
Nettoyer les ressources
Vous pouvez utiliser le portail Azure ou l’interface de ligne de commande (CLI) Azure pour supprimer la ressource Speech que vous avez créée.
Informations de référence sur l’API REST de reconnaissance vocale | Informations de référence sur l’API REST de reconnaissance vocale pour l’audio court | Exemples supplémentaires sur GitHub
Avec Azure AI Speech, vous pouvez exécuter une application qui synthétise une voix de type humain pour lire du texte. Vous pouvez modifier la voix, entrer du texte à prononcer et écouter la sortie sur le haut-parleur de votre ordinateur.
Conseil
Vous pouvez essayer la synthèse vocale dans Speech Studio Voice Gallery sans vous inscrire ni écrire de code.
Conseil
Essayez le Kit de ressources Azure AI Speech pour créer et exécuter facilement des exemples sur Visual Studio Code.
Prérequis
- Un abonnement Azure. Vous pouvez en créer un gratuitement.
- Créer une ressource Speech dans le portail Azure.
- Obtenez la clé de ressource et la région Speech. Une fois votre ressource vocale déployée, sélectionnez Accéder à la ressource pour afficher et gérer les clés.
Définir des variables d’environnement
Vous devez authentifier votre application pour accéder à Azure AI services. Cet article vous montre comment utiliser des variables d’environnement pour stocker vos informations d’identification. Vous pouvez ensuite accéder aux variables d’environnement à partir de votre code pour authentifier votre application. Pour la production, utilisez un moyen plus sécurisé pour stocker vos informations d’identification et y accéder.
Important
Nous vous recommandons l’authentification Microsoft Entra ID avec les identités managées pour les ressources Azure pour éviter de stocker des informations d’identification avec vos applications qui s’exécutent dans le cloud.
Si vous utilisez une clé API, stockez-la en toute sécurité dans un autre emplacement, par exemple dans Azure Key Vault. N'incluez pas la clé API directement dans votre code et ne la diffusez jamais publiquement.
Pour plus d’informations sur la sécurité des services IA, consultez Authentifier les demandes auprès d’Azure AI services.
Pour définir les variables d'environnement de votre clé de ressource Speech et de votre région, ouvrez une fenêtre de console et suivez les instructions de votre système d'exploitation et de votre environnement de développement.
- Pour définir la variable d’environnement
SPEECH_KEY
, remplacez your-key par l’une des clés de votre ressource. - Pour définir la variable d’environnement
SPEECH_REGION
, remplacez your-region par l’une des régions de votre ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Remarque
Si vous avez uniquement besoin d’accéder aux variables d’environnement dans la console en cours d’exécution, vous pouvez la définir avec set
au lieu de setx
.
Après avoir ajouté les variables d'environnement, vous devrez éventuellement redémarrer tous les programmes qui ont besoin de lire les variables d'environnement, y compris la fenêtre de console. Par exemple, si vous utilisez Visual Studio comme éditeur, redémarrez Visual Studio avant d’exécuter l’exemple.
Synthétiser la voix dans un fichier
Depuis une invite de commandes, exécutez la commande cURL suivante. Vous pouvez éventuellement renommer output.mp3 en lui attribuant un autre nom de fichier de sortie.
curl --location --request POST "https://%SPEECH_REGION%.tts.speech.microsoft.com/cognitiveservices/v1" ^
--header "Ocp-Apim-Subscription-Key: %SPEECH_KEY%" ^
--header "Content-Type: application/ssml+xml" ^
--header "X-Microsoft-OutputFormat: audio-16khz-128kbitrate-mono-mp3" ^
--header "User-Agent: curl" ^
--data-raw "<speak version='1.0' xml:lang='en-US'><voice xml:lang='en-US' xml:gender='Female' name='en-US-AvaMultilingualNeural'>my voice is my passport verify me</voice></speak>" --output output.mp3
Important
N’oubliez pas de définir les variables d’environnement SPEECH_KEY
et SPEECH_REGION
. Si vous ne définissez pas ces variables, l’exemple échoue avec un message d’erreur.
Le texte fourni doit être généré dans un fichier audio nommé output.mp3.
Pour modifier le langage de synthèse vocale, remplacez en-US-AvaMultilingualNeural
par une autre voix prise en charge.
Toutes les voix neuronales sont multilingues et parlent couramment leur propre langue et l’anglais. Par exemple, si le texte d’entrée en anglais est I'm excited to try text to speech et que vous avez défini es-ES-ElviraNeural
, le texte est lu en anglais avec un accent espagnol. Si la voix ne s’exprime pas dans la langue correspondant au texte entré, le service Speech ne génère pas de données audio synthétisées.
Pour plus d’informations, consultez la section API REST de synthèse vocale.
Notes
Voix de synthèse vocale OpenAI dans Azure AI Speech
Les voix de synthèse vocale OpenAI sont également prises en charge. Consultez les voix de synthèse vocale OpenAI dans Azure AI Speech et les voix multilingues. Vous pouvez remplacer en-US-AvaMultilingualNeural
par un nom vocal OpenAI pris en charge tel que en-US-FableMultilingualNeural
.
Nettoyer les ressources
Vous pouvez utiliser le portail Azure ou l’interface de ligne de commande (CLI) Azure pour supprimer la ressource Speech que vous avez créée.
Avec Azure AI Speech, vous pouvez exécuter une application qui synthétise une voix de type humain pour lire du texte. Vous pouvez modifier la voix, entrer du texte à prononcer et écouter la sortie sur le haut-parleur de votre ordinateur.
Conseil
Vous pouvez essayer la synthèse vocale dans Speech Studio Voice Gallery sans vous inscrire ni écrire de code.
Conseil
Essayez le Kit de ressources Azure AI Speech pour créer et exécuter facilement des exemples sur Visual Studio Code.
Prérequis
- Un abonnement Azure. Vous pouvez en créer un gratuitement.
- Créer une ressource Speech dans le portail Azure.
- Obtenez la clé de ressource et la région Speech. Une fois votre ressource vocale déployée, sélectionnez Accéder à la ressource pour afficher et gérer les clés.
Configurer l’environnement
Suivez ces étapes et consultez le guide de démarrage rapide de l’interface CLI Speech pour connaître les autres conditions requises pour votre plateforme.
Exécutez la commande CLI .NET suivante pour installer l’interface CLI Speech :
dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
Exécutez les commandes suivantes pour configurer la clé et la région de votre ressource Speech. Remplacez
SUBSCRIPTION-KEY
par la clé de la ressource Speech et remplacezREGION
par la région de la ressource Speech.spx config @key --set SUBSCRIPTION-KEY spx config @region --set REGION
Envoyer la voix sur le haut-parleur
Exécutez la commande suivante pour lire la synthèse vocale sur le haut-parleur par défaut. Vous pouvez modifier la voix et le texte à synthétiser.
spx synthesize --text "I'm excited to try text to speech" --voice "en-US-AvaMultilingualNeural"
Si vous ne définissez pas de nom de voix, la voix par défaut de en-US
est utilisée.
Toutes les voix neuronales sont multilingues et parlent couramment leur propre langue et l’anglais. Par exemple, si le texte d’entrée en anglais est I'm excited to try text to speech et que vous avez défini --voice "es-ES-ElviraNeural"
, le texte est lu en anglais avec un accent espagnol. Si la voix ne s’exprime pas dans la langue correspondant au texte entré, le service Speech ne génère pas de données audio synthétisées.
Exécutez cette commande pour obtenir des informations sur d’autres options de synthèse vocale, telles que l’entrée et la sortie de fichiers :
spx help synthesize
Notes
Prise en charge SSML
Vous pouvez avoir un contrôle plus fin sur les styles vocaux, la prosodie et d’autres paramètres à l’aide du langage SSML (Speech Synthesis Markup Language).
Voix de synthèse vocale OpenAI dans Azure AI Speech
Les voix de synthèse vocale OpenAI sont également prises en charge. Consultez les voix de synthèse vocale OpenAI dans Azure AI Speech et les voix multilingues. Vous pouvez remplacer en-US-AvaMultilingualNeural
par un nom vocal OpenAI pris en charge tel que en-US-FableMultilingualNeural
.
Nettoyer les ressources
Vous pouvez utiliser le portail Azure ou l’interface de ligne de commande (CLI) Azure pour supprimer la ressource Speech que vous avez créée.