Schnellstart: Konvertieren von Text in Sprache
Referenzdokumentation | Paket (NuGet) | Zusätzliche Beispiele auf GitHub
Mit Azure KI Speech können Sie eine Anwendung ausführen, die eine menschliche Stimme synthetisiert, um Text zu lesen. Sie können die Stimme ändern, Text eingeben, der gesprochen werden soll, und die Ausgabe auf dem Lautsprecher Ihres Computers hören.
Tipp
Sie können die Sprachsynthese in Speech Studio Voice Gallery ausprobieren, ohne sich anzumelden oder Code zu schreiben.
Tipp
Probieren Sie das Azure KI Speech-Toolkit aus, um einfach Beispiele in Visual Studio Code zu erstellen und auszuführen.
Voraussetzungen
- Ein Azure-Abonnement. Sie können ein kostenloses Konto erstellen.
- Erstellen Sie eine Speech-Ressource im Azure-Portal.
- Abrufen des Speech-Ressourcenschlüssel und des Endpunkts. Wählen Sie nach der Bereitstellung Ihrer Speech-Ressource Zu Ressource wechseln aus, um Schlüssel anzuzeigen und zu verwalten.
Einrichten der Umgebung
Das Speech SDK ist als NuGet-Paket verfügbar und implementiert .NET Standard 2.0. Installieren Sie das Speech SDK weiter unten in diesem Leitfaden mithilfe der Konsole. Ausführliche Anweisungen zur Installation finden Sie unter Installieren des Speech SDK.
Festlegen von Umgebungsvariablen
Sie müssen Ihre Anwendung authentifizieren, um auf Azure KI Services zuzugreifen. In diesem Artikel wird erläutert, wie Sie Umgebungsvariablen verwenden, um Ihre Anmeldeinformationen zu speichern. Anschließend können Sie von Ihrem Code aus auf die Umgebungsvariablen zugreifen, um Ihre Anwendung zu authentifizieren. Verwenden Sie in der Produktion eine sicherere Methode, Ihre Anmeldeinformationen zu speichern und darauf zuzugreifen.
Wichtig
Es wird empfohlen, die Microsoft Entra ID-Authentifizierung mit verwalteten Identitäten für Azure-Ressourcen zu kombinieren, um das Speichern von Anmeldeinformationen mit den in der Cloud ausgeführten Anwendungen zu vermeiden.
Wenn Sie einen API-Schlüssel verwenden, speichern Sie ihn an einer anderen Stelle sicher, z. B. in Azure Key Vault. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich.
Weitere Informationen zur Sicherheit von KI Services finden Sie unter Authentifizieren von Anforderungen an Azure KI Services.
Um die Umgebungsvariable für Ihren Speech-Ressourcenschlüssel und die Region festzulegen, öffnen Sie ein Konsolenfenster, und befolgen Sie die Anweisungen für Ihr Betriebssystem und Ihre Entwicklungsumgebung.
- Zum Festlegen der Umgebungsvariablen
SPEECH_KEY
ersetzen Sie your-key durch einen der Schlüssel für Ihre Ressource. - Zum Festlegen der Umgebungsvariablen
SPEECH_REGION
ersetzen Sie your-region durch eine der Regionen für Ihre Ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Hinweis
Wenn Sie nur in der aktuellen Konsole auf die Umgebungsvariable zugreifen müssen, können Sie die Variable mit set
anstatt setx
festlegen.
Nachdem Sie die Umgebungsvariablen hinzugefügt haben, müssen Sie möglicherweise alle Programme neu starten, die die Umgebungsvariablen lesen müssen, einschließlich des Konsolenfensters. Wenn Sie beispielsweise Visual Studio als Editor verwenden, starten Sie Visual Studio neu, bevor Sie das Beispiel ausführen.
Erstellen der Anwendung
Führen Sie die folgenden Schritte aus, um eine Konsolenanwendung zu erstellen und das Speech SDK zu installieren.
Öffnen Sie ein Eingabeaufforderungsfenster in dem Ordner, in dem das neue Projekt angezeigt werden soll. Führen Sie diesen Befehl aus, um eine Konsolenanwendung mit der .NET CLI zu erstellen.
dotnet new console
Der Befehl erstellt eine Datei Program.cs im Projektverzeichnis.
Installieren Sie das Speech SDK mit der .NET-CLI in Ihrem neuen Projekt.
dotnet add package Microsoft.CognitiveServices.Speech
Ersetzen Sie die Inhalte von Program.cs durch den folgenden Code.
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(); } }
Um die Sprache für die Sprachsynthese zu ändern, ersetzen Sie
en-US-AvaMultilingualNeural
durch eine andere unterstützte Stimme.Alle neuronalen Stimmen sind mehrsprachig und können in ihrer eigenen Sprache und in englischer Sprache sprechen. Wenn der Eingabetext auf Englisch beispielsweise I'm excited to try text to speech lautet und Sie
es-ES-ElviraNeural
als Sprache festlegen, wird der Text in englischer Sprache mit einem spanischen Akzent gesprochen. Wenn die Stimme nicht die Sprache des Eingabetexts spricht, erfolgt keine synthetisierte Audioausgabe vom Speech-Dienst.Führen Sie Ihre neue Konsolenanwendung aus, um die Sprachsynthese mit dem Standardsprecher zu starten.
dotnet run
Wichtig
Stellen Sie sicher, dass Sie die Umgebungsvariablen
SPEECH_KEY
undSPEECH_REGION
festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.Geben Sie den Text ein, der gesprochen werden soll. Geben Sie z. B. I'm excited to try text to speech ein. Drücken Sie die EINGABETASTE, um die synthetisierte Sprache zu hören.
Enter some text that you want to speak > I'm excited to try text to speech
Hinweise
Weitere Sprachsyntheseoptionen
In dieser Schnellstartanleitung wird der Vorgang SpeakTextAsync
verwendet, um einen kurzen Textblock zu synthetisieren, den Sie eingeben. Sie können auch langen Text aus einer Datei verwenden und eine bessere Kontrolle über Sprachstile, Prosodie und andere Einstellungen erhalten.
- Siehe Synthetisieren von Sprache und die Übersicht über Speech Synthesis Markup Language (SSML) für Informationen zur Sprachsynthese aus einer Datei und zur genaueren Steuerung von Sprechstil, Prosodie sowie weiteren Einstellungen.
- Siehe Batchsynthese-API für die Sprachsynthese für Informationen zum Synthetisieren von langen Texten in Sprache.
OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech
OpenAI-Stimmen für die Sprachsynthese wird ebenfalls unterstützt. Siehe OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech und mehrsprachige Stimmen. Sie können en-US-AvaMultilingualNeural
durch einen unterstützten OpenAI-Sprachnamen wie en-US-FableMultilingualNeural
ersetzen.
Bereinigen von Ressourcen
Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.
Referenzdokumentation | Paket (NuGet) | Zusätzliche Beispiele auf GitHub
Mit Azure KI Speech können Sie eine Anwendung ausführen, die eine menschliche Stimme synthetisiert, um Text zu lesen. Sie können die Stimme ändern, Text eingeben, der gesprochen werden soll, und die Ausgabe auf dem Lautsprecher Ihres Computers hören.
Tipp
Sie können die Sprachsynthese in Speech Studio Voice Gallery ausprobieren, ohne sich anzumelden oder Code zu schreiben.
Tipp
Probieren Sie das Azure KI Speech-Toolkit aus, um einfach Beispiele in Visual Studio Code zu erstellen und auszuführen.
Voraussetzungen
- Ein Azure-Abonnement. Sie können ein kostenloses Konto erstellen.
- Erstellen Sie eine Speech-Ressource im Azure-Portal.
- Abrufen des Speech-Ressourcenschlüssel und des Endpunkts. Wählen Sie nach der Bereitstellung Ihrer Speech-Ressource Zu Ressource wechseln aus, um Schlüssel anzuzeigen und zu verwalten.
Einrichten der Umgebung
Das Speech SDK ist als NuGet-Paket verfügbar und implementiert .NET Standard 2.0. Installieren Sie das Speech SDK wie weiter unten in diesem Leitfaden beschrieben. Ausführliche Anweisungen zur Installation finden Sie unter Installieren des Speech SDK.
Festlegen von Umgebungsvariablen
Sie müssen Ihre Anwendung authentifizieren, um auf Azure KI Services zuzugreifen. In diesem Artikel wird erläutert, wie Sie Umgebungsvariablen verwenden, um Ihre Anmeldeinformationen zu speichern. Anschließend können Sie von Ihrem Code aus auf die Umgebungsvariablen zugreifen, um Ihre Anwendung zu authentifizieren. Verwenden Sie in der Produktion eine sicherere Methode, Ihre Anmeldeinformationen zu speichern und darauf zuzugreifen.
Wichtig
Es wird empfohlen, die Microsoft Entra ID-Authentifizierung mit verwalteten Identitäten für Azure-Ressourcen zu kombinieren, um das Speichern von Anmeldeinformationen mit den in der Cloud ausgeführten Anwendungen zu vermeiden.
Wenn Sie einen API-Schlüssel verwenden, speichern Sie ihn an einer anderen Stelle sicher, z. B. in Azure Key Vault. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich.
Weitere Informationen zur Sicherheit von KI Services finden Sie unter Authentifizieren von Anforderungen an Azure KI Services.
Um die Umgebungsvariable für Ihren Speech-Ressourcenschlüssel und die Region festzulegen, öffnen Sie ein Konsolenfenster, und befolgen Sie die Anweisungen für Ihr Betriebssystem und Ihre Entwicklungsumgebung.
- Zum Festlegen der Umgebungsvariablen
SPEECH_KEY
ersetzen Sie your-key durch einen der Schlüssel für Ihre Ressource. - Zum Festlegen der Umgebungsvariablen
SPEECH_REGION
ersetzen Sie your-region durch eine der Regionen für Ihre Ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Hinweis
Wenn Sie nur in der aktuellen Konsole auf die Umgebungsvariable zugreifen müssen, können Sie die Variable mit set
anstatt setx
festlegen.
Nachdem Sie die Umgebungsvariablen hinzugefügt haben, müssen Sie möglicherweise alle Programme neu starten, die die Umgebungsvariablen lesen müssen, einschließlich des Konsolenfensters. Wenn Sie beispielsweise Visual Studio als Editor verwenden, starten Sie Visual Studio neu, bevor Sie das Beispiel ausführen.
Erstellen der Anwendung
Führen Sie die folgenden Schritte aus, um eine Konsolenanwendung zu erstellen und das Speech SDK zu installieren.
Erstellen Sie in Visual Studio Community ein C++-Konsolenprojekt mit dem Namen
SpeechSynthesis
.Ersetzen Sie den Inhalt von SpeechSynthesis.cpp durch folgenden Code:
#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 }
Klicken Sie auf Tools>NuGet-Paket-Manager>Paket-Manager-Konsole. Führen Sie diesen Befehl in der Paket-Manager-Konsole aus:
Install-Package Microsoft.CognitiveServices.Speech
Um die Sprache für die Sprachsynthese zu ändern, ersetzen Sie
en-US-AvaMultilingualNeural
durch eine andere unterstützte Stimme.Alle neuronalen Stimmen sind mehrsprachig und können in ihrer eigenen Sprache und in englischer Sprache sprechen. Wenn der Eingabetext auf Englisch beispielsweise I'm excited to try text to speech lautet und Sie
es-ES-ElviraNeural
festlegen, wird der Text in englischer Sprache mit einem spanischen Akzent gesprochen. Wenn die Stimme nicht die Sprache des Eingabetexts spricht, erfolgt keine synthetisierte Audioausgabe vom Speech-Dienst.Erstellen Sie Ihre neue Konsolenanwendung und führen Sie sie aus, um die Sprachsynthese mit dem Standardsprecher zu starten.
Wichtig
Stellen Sie sicher, dass Sie die Umgebungsvariablen
SPEECH_KEY
undSPEECH_REGION
festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.Geben Sie den Text ein, der gesprochen werden soll. Geben Sie z. B. I'm excited to try text to speech ein. Drücken Sie die EINGABETASTE, um die synthetisierte Sprache zu hören.
Enter some text that you want to speak > I'm excited to try text to speech
Hinweise
Weitere Sprachsyntheseoptionen
In dieser Schnellstartanleitung wird der Vorgang SpeakTextAsync
verwendet, um einen kurzen Textblock zu synthetisieren, den Sie eingeben. Sie können auch langen Text aus einer Datei verwenden und eine bessere Kontrolle über Sprachstile, Prosodie und andere Einstellungen erhalten.
- Siehe Synthetisieren von Sprache und die Übersicht über Speech Synthesis Markup Language (SSML) für Informationen zur Sprachsynthese aus einer Datei und zur genaueren Steuerung von Sprechstil, Prosodie sowie weiteren Einstellungen.
- Siehe Batchsynthese-API für die Sprachsynthese für Informationen zum Synthetisieren von langen Texten in Sprache.
OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech
OpenAI-Stimmen für die Sprachsynthese wird ebenfalls unterstützt. Siehe OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech und mehrsprachige Stimmen. Sie können en-US-AvaMultilingualNeural
durch einen unterstützten OpenAI-Sprachnamen wie en-US-FableMultilingualNeural
ersetzen.
Bereinigen von Ressourcen
Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.
Referenzdokumentation | Paket (Go) | Zusätzliche Beispiele auf GitHub
Mit Azure KI Speech können Sie eine Anwendung ausführen, die eine menschliche Stimme synthetisiert, um Text zu lesen. Sie können die Stimme ändern, Text eingeben, der gesprochen werden soll, und die Ausgabe auf dem Lautsprecher Ihres Computers hören.
Tipp
Sie können die Sprachsynthese in Speech Studio Voice Gallery ausprobieren, ohne sich anzumelden oder Code zu schreiben.
Tipp
Probieren Sie das Azure KI Speech-Toolkit aus, um einfach Beispiele in Visual Studio Code zu erstellen und auszuführen.
Voraussetzungen
- Ein Azure-Abonnement. Sie können ein kostenloses Konto erstellen.
- Erstellen Sie eine Speech-Ressource im Azure-Portal.
- Abrufen des Speech-Ressourcenschlüssel und des Endpunkts. Wählen Sie nach der Bereitstellung Ihrer Speech-Ressource Zu Ressource wechseln aus, um Schlüssel anzuzeigen und zu verwalten.
Einrichten der Umgebung
Installieren Sie das Speech SDK für die Go-Sprache. Ausführliche Anweisungen zur Installation finden Sie unter Installieren des Speech SDK.
Festlegen von Umgebungsvariablen
Sie müssen Ihre Anwendung authentifizieren, um auf Azure KI Services zuzugreifen. In diesem Artikel wird erläutert, wie Sie Umgebungsvariablen verwenden, um Ihre Anmeldeinformationen zu speichern. Anschließend können Sie von Ihrem Code aus auf die Umgebungsvariablen zugreifen, um Ihre Anwendung zu authentifizieren. Verwenden Sie in der Produktion eine sicherere Methode, Ihre Anmeldeinformationen zu speichern und darauf zuzugreifen.
Wichtig
Es wird empfohlen, die Microsoft Entra ID-Authentifizierung mit verwalteten Identitäten für Azure-Ressourcen zu kombinieren, um das Speichern von Anmeldeinformationen mit den in der Cloud ausgeführten Anwendungen zu vermeiden.
Wenn Sie einen API-Schlüssel verwenden, speichern Sie ihn an einer anderen Stelle sicher, z. B. in Azure Key Vault. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich.
Weitere Informationen zur Sicherheit von KI Services finden Sie unter Authentifizieren von Anforderungen an Azure KI Services.
Um die Umgebungsvariable für Ihren Speech-Ressourcenschlüssel und die Region festzulegen, öffnen Sie ein Konsolenfenster, und befolgen Sie die Anweisungen für Ihr Betriebssystem und Ihre Entwicklungsumgebung.
- Zum Festlegen der Umgebungsvariablen
SPEECH_KEY
ersetzen Sie your-key durch einen der Schlüssel für Ihre Ressource. - Zum Festlegen der Umgebungsvariablen
SPEECH_REGION
ersetzen Sie your-region durch eine der Regionen für Ihre Ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Hinweis
Wenn Sie nur in der aktuellen Konsole auf die Umgebungsvariable zugreifen müssen, können Sie die Variable mit set
anstatt setx
festlegen.
Nachdem Sie die Umgebungsvariablen hinzugefügt haben, müssen Sie möglicherweise alle Programme neu starten, die die Umgebungsvariablen lesen müssen, einschließlich des Konsolenfensters. Wenn Sie beispielsweise Visual Studio als Editor verwenden, starten Sie Visual Studio neu, bevor Sie das Beispiel ausführen.
Erstellen der Anwendung
Folgen Sie diesen Schritten, um ein Go-Modul zu erstellen.
Öffnen Sie ein Eingabeaufforderungsfenster in dem Ordner, in dem das neue Projekt angezeigt werden soll. Erstellen Sie eine neue Datei namens speech-synthesis.go.
Kopieren Sie den folgenden Code in die Datei 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) } } } }
Um die Sprache für die Sprachsynthese zu ändern, ersetzen Sie
en-US-AvaMultilingualNeural
durch eine andere unterstützte Stimme.Alle neuronalen Stimmen sind mehrsprachig und können in ihrer eigenen Sprache und in englischer Sprache sprechen. Wenn der Eingabetext auf Englisch beispielsweise I'm excited to try text to speech lautet und Sie
es-ES-ElviraNeural
festlegen, wird der Text in englischer Sprache mit einem spanischen Akzent gesprochen. Wenn die Stimme nicht die Sprache des Eingabetexts spricht, erfolgt keine synthetisierte Audioausgabe vom Speech-Dienst.Führen Sie die folgenden Befehle aus, um eine Datei namens go.mod zu erstellen, die mit auf GitHub gehosteten Komponenten verknüpft ist:
go mod init speech-synthesis go get github.com/Microsoft/cognitive-services-speech-sdk-go
Wichtig
Stellen Sie sicher, dass Sie die Umgebungsvariablen
SPEECH_KEY
undSPEECH_REGION
festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.Erstellen Sie als Nächstes den Code, und führen Sie ihn aus:
go build go run speech-synthesis
Hinweise
OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech
OpenAI-Stimmen für die Sprachsynthese wird ebenfalls unterstützt. Siehe OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech und mehrsprachige Stimmen. Sie können en-US-AvaMultilingualNeural
durch einen unterstützten OpenAI-Sprachnamen wie en-US-FableMultilingualNeural
ersetzen.
Bereinigen von Ressourcen
Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.
Referenzdokumentation | Zusätzliche Beispiele auf GitHub
Mit Azure KI Speech können Sie eine Anwendung ausführen, die eine menschliche Stimme synthetisiert, um Text zu lesen. Sie können die Stimme ändern, Text eingeben, der gesprochen werden soll, und die Ausgabe auf dem Lautsprecher Ihres Computers hören.
Tipp
Sie können die Sprachsynthese in Speech Studio Voice Gallery ausprobieren, ohne sich anzumelden oder Code zu schreiben.
Tipp
Probieren Sie das Azure KI Speech-Toolkit aus, um einfach Beispiele in Visual Studio Code zu erstellen und auszuführen.
Voraussetzungen
- Ein Azure-Abonnement. Sie können ein kostenloses Konto erstellen.
- Erstellen Sie eine Speech-Ressource im Azure-Portal.
- Abrufen des Speech-Ressourcenschlüssel und des Endpunkts. Wählen Sie nach der Bereitstellung Ihrer Speech-Ressource Zu Ressource wechseln aus, um Schlüssel anzuzeigen und zu verwalten.
Einrichten der Umgebung
Um Ihre Umgebung einzurichten, installieren Sie das Speech SDK. Das Beispiel in diesem Schnellstart funktioniert mit der Java-Runtime.
Installieren Sie Apache Maven. Führen Sie dann
mvn -v
aus, um die erfolgreiche Installation zu bestätigen.Erstellen Sie eine pom.xml-Datei im Stammverzeichnis Ihres Projekts und kopieren Sie den folgenden Code hinein:
<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>
Installieren Sie das Speech SDK und Abhängigkeiten.
mvn clean dependency:copy-dependencies
Festlegen von Umgebungsvariablen
Sie müssen Ihre Anwendung authentifizieren, um auf Azure KI Services zuzugreifen. In diesem Artikel wird erläutert, wie Sie Umgebungsvariablen verwenden, um Ihre Anmeldeinformationen zu speichern. Anschließend können Sie von Ihrem Code aus auf die Umgebungsvariablen zugreifen, um Ihre Anwendung zu authentifizieren. Verwenden Sie in der Produktion eine sicherere Methode, Ihre Anmeldeinformationen zu speichern und darauf zuzugreifen.
Wichtig
Es wird empfohlen, die Microsoft Entra ID-Authentifizierung mit verwalteten Identitäten für Azure-Ressourcen zu kombinieren, um das Speichern von Anmeldeinformationen mit den in der Cloud ausgeführten Anwendungen zu vermeiden.
Wenn Sie einen API-Schlüssel verwenden, speichern Sie ihn an einer anderen Stelle sicher, z. B. in Azure Key Vault. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich.
Weitere Informationen zur Sicherheit von KI Services finden Sie unter Authentifizieren von Anforderungen an Azure KI Services.
Um die Umgebungsvariable für Ihren Speech-Ressourcenschlüssel und die Region festzulegen, öffnen Sie ein Konsolenfenster, und befolgen Sie die Anweisungen für Ihr Betriebssystem und Ihre Entwicklungsumgebung.
- Zum Festlegen der Umgebungsvariablen
SPEECH_KEY
ersetzen Sie your-key durch einen der Schlüssel für Ihre Ressource. - Zum Festlegen der Umgebungsvariablen
SPEECH_REGION
ersetzen Sie your-region durch eine der Regionen für Ihre Ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Hinweis
Wenn Sie nur in der aktuellen Konsole auf die Umgebungsvariable zugreifen müssen, können Sie die Variable mit set
anstatt setx
festlegen.
Nachdem Sie die Umgebungsvariablen hinzugefügt haben, müssen Sie möglicherweise alle Programme neu starten, die die Umgebungsvariablen lesen müssen, einschließlich des Konsolenfensters. Wenn Sie beispielsweise Visual Studio als Editor verwenden, starten Sie Visual Studio neu, bevor Sie das Beispiel ausführen.
Erstellen der Anwendung
Führen Sie die folgenden Schritte aus, um eine Konsolenanwendung für die Spracherkennung zu erstellen.
Erstellen Sie im gleichen Projektstammverzeichnis eine Datei namens SpeechSynthesis.java.
Kopieren Sie den folgenden Code in die Datei 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); } }
Um die Sprache für die Sprachsynthese zu ändern, ersetzen Sie
en-US-AvaMultilingualNeural
durch eine andere unterstützte Stimme.Alle neuronalen Stimmen sind mehrsprachig und können in ihrer eigenen Sprache und in englischer Sprache sprechen. Wenn der Eingabetext auf Englisch beispielsweise I'm excited to try text to speech lautet und Sie
es-ES-ElviraNeural
festlegen, wird der Text in englischer Sprache mit einem spanischen Akzent gesprochen. Wenn die Stimme nicht die Sprache des Eingabetexts spricht, erfolgt keine synthetisierte Audioausgabe vom Speech-Dienst.Führen Sie Ihre Konsolenanwendung aus, um die Sprachsynthese mit dem Standardlautsprecher auszugeben.
javac SpeechSynthesis.java -cp ".;target\dependency\*" java -cp ".;target\dependency\*" SpeechSynthesis
Wichtig
Stellen Sie sicher, dass Sie die Umgebungsvariablen
SPEECH_KEY
undSPEECH_REGION
festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.Geben Sie den Text ein, der gesprochen werden soll. Geben Sie z. B. I'm excited to try text to speech ein. Drücken Sie die EINGABETASTE, um die synthetisierte Sprache zu hören.
Enter some text that you want to speak > I'm excited to try text to speech
Hinweise
Weitere Sprachsyntheseoptionen
In dieser Schnellstartanleitung wird der Vorgang SpeakTextAsync
verwendet, um einen kurzen Textblock zu synthetisieren, den Sie eingeben. Sie können auch langen Text aus einer Datei verwenden und eine bessere Kontrolle über Sprachstile, Prosodie und andere Einstellungen erhalten.
- Siehe Synthetisieren von Sprache und die Übersicht über Speech Synthesis Markup Language (SSML) für Informationen zur Sprachsynthese aus einer Datei und zur genaueren Steuerung von Sprechstil, Prosodie sowie weiteren Einstellungen.
- Siehe Batchsynthese-API für die Sprachsynthese für Informationen zum Synthetisieren von langen Texten in Sprache.
OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech
OpenAI-Stimmen für die Sprachsynthese wird ebenfalls unterstützt. Siehe OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech und mehrsprachige Stimmen. Sie können en-US-AvaMultilingualNeural
durch einen unterstützten OpenAI-Sprachnamen wie en-US-FableMultilingualNeural
ersetzen.
Bereinigen von Ressourcen
Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.
Referenzdokumentation | Paket (npm) | Zusätzliche Beispiele auf GitHub | Quellcode der Bibliothek
Mit Azure KI Speech können Sie eine Anwendung ausführen, die eine menschliche Stimme synthetisiert, um Text zu lesen. Sie können die Stimme ändern, Text eingeben, der gesprochen werden soll, und die Ausgabe auf dem Lautsprecher Ihres Computers hören.
Tipp
Sie können die Sprachsynthese in Speech Studio Voice Gallery ausprobieren, ohne sich anzumelden oder Code zu schreiben.
Tipp
Probieren Sie das Azure KI Speech-Toolkit aus, um einfach Beispiele in Visual Studio Code zu erstellen und auszuführen.
Voraussetzungen
- Ein Azure-Abonnement. Sie können ein kostenloses Konto erstellen.
- Erstellen Sie eine Speech-Ressource im Azure-Portal.
- Abrufen des Speech-Ressourcenschlüssel und des Endpunkts. Wählen Sie nach der Bereitstellung Ihrer Speech-Ressource Zu Ressource wechseln aus, um Schlüssel anzuzeigen und zu verwalten.
Einrichten der Umgebung
Um Ihre Umgebung einzurichten, installieren Sie das Speech SDK für JavaScript. Falls Sie lediglich den Paketnamen für die Installation benötigen, können Sie den folgenden Befehl ausführen: npm install microsoft-cognitiveservices-speech-sdk
. Ausführliche Anweisungen zur Installation finden Sie unter Installieren des Speech SDK.
Festlegen von Umgebungsvariablen
Sie müssen Ihre Anwendung authentifizieren, um auf Azure KI Services zuzugreifen. In diesem Artikel wird erläutert, wie Sie Umgebungsvariablen verwenden, um Ihre Anmeldeinformationen zu speichern. Anschließend können Sie von Ihrem Code aus auf die Umgebungsvariablen zugreifen, um Ihre Anwendung zu authentifizieren. Verwenden Sie in der Produktion eine sicherere Methode, Ihre Anmeldeinformationen zu speichern und darauf zuzugreifen.
Wichtig
Es wird empfohlen, die Microsoft Entra ID-Authentifizierung mit verwalteten Identitäten für Azure-Ressourcen zu kombinieren, um das Speichern von Anmeldeinformationen mit den in der Cloud ausgeführten Anwendungen zu vermeiden.
Wenn Sie einen API-Schlüssel verwenden, speichern Sie ihn an einer anderen Stelle sicher, z. B. in Azure Key Vault. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich.
Weitere Informationen zur Sicherheit von KI Services finden Sie unter Authentifizieren von Anforderungen an Azure KI Services.
Um die Umgebungsvariable für Ihren Speech-Ressourcenschlüssel und die Region festzulegen, öffnen Sie ein Konsolenfenster, und befolgen Sie die Anweisungen für Ihr Betriebssystem und Ihre Entwicklungsumgebung.
- Zum Festlegen der Umgebungsvariablen
SPEECH_KEY
ersetzen Sie your-key durch einen der Schlüssel für Ihre Ressource. - Zum Festlegen der Umgebungsvariablen
SPEECH_REGION
ersetzen Sie your-region durch eine der Regionen für Ihre Ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Hinweis
Wenn Sie nur in der aktuellen Konsole auf die Umgebungsvariable zugreifen müssen, können Sie die Variable mit set
anstatt setx
festlegen.
Nachdem Sie die Umgebungsvariablen hinzugefügt haben, müssen Sie möglicherweise alle Programme neu starten, die die Umgebungsvariablen lesen müssen, einschließlich des Konsolenfensters. Wenn Sie beispielsweise Visual Studio als Editor verwenden, starten Sie Visual Studio neu, bevor Sie das Beispiel ausführen.
Erstellen der Anwendung
Führen Sie die folgenden Schritte aus, um eine Node.js-Konsolenanwendung für die Sprachsynthese zu erstellen.
Öffnen Sie am gewünschten Speicherort für das neue Projekt ein Konsolenfenster, und erstellen Sie eine Datei mit dem Namen SpeechSynthesis.js.
Installieren Sie das Speech SDK für JavaScript:
npm install microsoft-cognitiveservices-speech-sdk
Kopieren Sie den folgenden Code in die Datei 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); }); }());
In SpeechSynthesis.js können Sie YourAudioFile.wav optional in einen anderen Ausgabedateinamen umbenennen.
Um die Sprache für die Sprachsynthese zu ändern, ersetzen Sie
en-US-AvaMultilingualNeural
durch eine andere unterstützte Stimme.Alle neuronalen Stimmen sind mehrsprachig und können in ihrer eigenen Sprache und in englischer Sprache sprechen. Wenn der Eingabetext auf Englisch beispielsweise I'm excited to try text to speech lautet und Sie
es-ES-ElviraNeural
festlegen, wird der Text in englischer Sprache mit einem spanischen Akzent gesprochen. Wenn die Stimme nicht die Sprache des Eingabetexts spricht, erfolgt keine synthetisierte Audioausgabe vom Speech-Dienst.Führen Sie Ihre Konsolenanwendung aus, um die Sprachsynthese in eine Datei zu starten:
node SpeechSynthesis.js
Wichtig
Stellen Sie sicher, dass Sie die Umgebungsvariablen
SPEECH_KEY
undSPEECH_REGION
festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.Der bereitgestellte Text sollte in eine Audiodatei ausgegeben werden:
Enter some text that you want to speak > > I'm excited to try text to speech Now synthesizing to: YourAudioFile.wav synthesis finished.
Hinweise
Weitere Sprachsyntheseoptionen
In dieser Schnellstartanleitung wird der Vorgang SpeakTextAsync
verwendet, um einen kurzen Textblock zu synthetisieren, den Sie eingeben. Sie können auch langen Text aus einer Datei verwenden und eine bessere Kontrolle über Sprachstile, Prosodie und andere Einstellungen erhalten.
- Siehe Synthetisieren von Sprache und die Übersicht über Speech Synthesis Markup Language (SSML) für Informationen zur Sprachsynthese aus einer Datei und zur genaueren Steuerung von Sprechstil, Prosodie sowie weiteren Einstellungen.
- Siehe Batchsynthese-API für die Sprachsynthese für Informationen zum Synthetisieren von langen Texten in Sprache.
OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech
OpenAI-Stimmen für die Sprachsynthese wird ebenfalls unterstützt. Siehe OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech und mehrsprachige Stimmen. Sie können en-US-AvaMultilingualNeural
durch einen unterstützten OpenAI-Sprachnamen wie en-US-FableMultilingualNeural
ersetzen.
Bereinigen von Ressourcen
Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.
Referenzdokumentation | Paket (Download) | Zusätzliche Beispiele auf GitHub
Mit Azure KI Speech können Sie eine Anwendung ausführen, die eine menschliche Stimme synthetisiert, um Text zu lesen. Sie können die Stimme ändern, Text eingeben, der gesprochen werden soll, und die Ausgabe auf dem Lautsprecher Ihres Computers hören.
Tipp
Sie können die Sprachsynthese in Speech Studio Voice Gallery ausprobieren, ohne sich anzumelden oder Code zu schreiben.
Tipp
Probieren Sie das Azure KI Speech-Toolkit aus, um einfach Beispiele in Visual Studio Code zu erstellen und auszuführen.
Voraussetzungen
- Ein Azure-Abonnement. Sie können ein kostenloses Konto erstellen.
- Erstellen Sie eine Speech-Ressource im Azure-Portal.
- Abrufen des Speech-Ressourcenschlüssel und des Endpunkts. Wählen Sie nach der Bereitstellung Ihrer Speech-Ressource Zu Ressource wechseln aus, um Schlüssel anzuzeigen und zu verwalten.
Einrichten der Umgebung
Das Speech SDK für Objective-C wird als Frameworkpaket verteilt. Das Framework unterstützt sowohl Objective-C als auch Swift unter iOS und macOS.
Das Speech SDK kann in Xcode-Projekten als CocoaPod verwendet oder direkt heruntergeladen und manuell verknüpft werden. In dieser Anleitung wird ein CocoaPod verwendet. Installieren Sie den CocoaPod-Abhängigkeits-Manager entsprechend den Anweisungen in der Installationsanleitung.
Festlegen von Umgebungsvariablen
Sie müssen Ihre Anwendung authentifizieren, um auf Azure KI Services zuzugreifen. In diesem Artikel wird erläutert, wie Sie Umgebungsvariablen verwenden, um Ihre Anmeldeinformationen zu speichern. Anschließend können Sie von Ihrem Code aus auf die Umgebungsvariablen zugreifen, um Ihre Anwendung zu authentifizieren. Verwenden Sie in der Produktion eine sicherere Methode, Ihre Anmeldeinformationen zu speichern und darauf zuzugreifen.
Wichtig
Es wird empfohlen, die Microsoft Entra ID-Authentifizierung mit verwalteten Identitäten für Azure-Ressourcen zu kombinieren, um das Speichern von Anmeldeinformationen mit den in der Cloud ausgeführten Anwendungen zu vermeiden.
Wenn Sie einen API-Schlüssel verwenden, speichern Sie ihn an einer anderen Stelle sicher, z. B. in Azure Key Vault. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich.
Weitere Informationen zur Sicherheit von KI Services finden Sie unter Authentifizieren von Anforderungen an Azure KI Services.
Um die Umgebungsvariable für Ihren Speech-Ressourcenschlüssel und die Region festzulegen, öffnen Sie ein Konsolenfenster, und befolgen Sie die Anweisungen für Ihr Betriebssystem und Ihre Entwicklungsumgebung.
- Zum Festlegen der Umgebungsvariablen
SPEECH_KEY
ersetzen Sie your-key durch einen der Schlüssel für Ihre Ressource. - Zum Festlegen der Umgebungsvariablen
SPEECH_REGION
ersetzen Sie your-region durch eine der Regionen für Ihre Ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Hinweis
Wenn Sie nur in der aktuellen Konsole auf die Umgebungsvariable zugreifen müssen, können Sie die Variable mit set
anstatt setx
festlegen.
Nachdem Sie die Umgebungsvariablen hinzugefügt haben, müssen Sie möglicherweise alle Programme neu starten, die die Umgebungsvariablen lesen müssen, einschließlich des Konsolenfensters. Wenn Sie beispielsweise Visual Studio als Editor verwenden, starten Sie Visual Studio neu, bevor Sie das Beispiel ausführen.
Erstellen der Anwendung
Führen Sie die folgenden Schritte aus, um Sprache in einer macOS-Anwendung zu synthetisieren.
Klonen Sie das Repository Azure-Samples/cognitive-services-speech-sdk, um das Beispielprojekt zum Synthetisieren von Audio in Objective-C unter macOS mithilfe des Speech SDK abzurufen. Das Repository enthält auch iOS-Beispiele.
Navigieren Sie in einem Terminal zum Verzeichnis der heruntergeladenen Beispiel-App (
helloworld
).Führen Sie den Befehl
pod install
aus. Mit diesem Befehl wird ein Xcode-Arbeitsbereichhelloworld.xcworkspace
generiert, der die Beispiel-App und das Speech SDK als Abhängigkeit enthält.Öffnen Sie den Arbeitsbereich
helloworld.xcworkspace
in Xcode.Öffnen Sie die Datei AppDelegate.m, und suchen Sie wie hier gezeigt nach der
buttonPressed
-Methode.- (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."); } }
Verwenden Sie in AppDelegate.m die zuvor festgelegten Umgebungsvariablen für den Speech-Ressourcenschlüssel und die Region.
NSString *speechKey = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_KEY"]; NSString *serviceRegion = [[[NSProcessInfo processInfo] environment] objectForKey:@"SPEECH_REGION"];
Fügen Sie optional in AppDelegate.m wie hier gezeigt einen Sprachsynthese-Stimmnamen ein:
speechConfig.speechSynthesisVoiceName = @"en-US-AvaMultilingualNeural";
Um die Sprache für die Sprachsynthese zu ändern, ersetzen Sie
en-US-AvaMultilingualNeural
durch eine andere unterstützte Stimme.Alle neuronalen Stimmen sind mehrsprachig und können in ihrer eigenen Sprache und in englischer Sprache sprechen. Wenn der Eingabetext auf Englisch beispielsweise I'm excited to try text to speech lautet und Sie
es-ES-ElviraNeural
festlegen, wird der Text in englischer Sprache mit einem spanischen Akzent gesprochen. Wenn die Stimme nicht die Sprache des Eingabetexts spricht, erfolgt keine synthetisierte Audioausgabe vom Speech-Dienst.Um die Debugausgabe anzuzeigen, wählen Sie Ansicht>Debugbereich>Konsole aktivieren aus.
Um den Beispielcode zu erstellen und auszuführen, wählen Sie Produkt->Ausführung aus dem Menü oder klicken Sie auf die Schaltfläche Wiedergeben.
Wichtig
Stellen Sie sicher, dass Sie die Umgebungsvariablen
SPEECH_KEY
undSPEECH_REGION
festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.
Nachdem Sie Text eingegeben und in der App auf die Schaltfläche geklickt haben, sollten die synthetisierten Audiodaten wiedergegeben werden.
Hinweise
Weitere Sprachsyntheseoptionen
In dieser Schnellstartanleitung wird der Vorgang SpeakText
verwendet, um einen kurzen Textblock zu synthetisieren, den Sie eingeben. Sie können auch langen Text aus einer Datei verwenden und eine bessere Kontrolle über Sprachstile, Prosodie und andere Einstellungen erhalten.
- Siehe Synthetisieren von Sprache und die Übersicht über Speech Synthesis Markup Language (SSML) für Informationen zur Sprachsynthese aus einer Datei und zur genaueren Steuerung von Sprechstil, Prosodie sowie weiteren Einstellungen.
- Siehe Batchsynthese-API für die Sprachsynthese für Informationen zum Synthetisieren von langen Texten in Sprache.
OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech
OpenAI-Stimmen für die Sprachsynthese wird ebenfalls unterstützt. Siehe OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech und mehrsprachige Stimmen. Sie können en-US-AvaMultilingualNeural
durch einen unterstützten OpenAI-Sprachnamen wie en-US-FableMultilingualNeural
ersetzen.
Bereinigen von Ressourcen
Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.
Referenzdokumentation | Paket (Download) | Zusätzliche Beispiele auf GitHub
Mit Azure KI Speech können Sie eine Anwendung ausführen, die eine menschliche Stimme synthetisiert, um Text zu lesen. Sie können die Stimme ändern, Text eingeben, der gesprochen werden soll, und die Ausgabe auf dem Lautsprecher Ihres Computers hören.
Tipp
Sie können die Sprachsynthese in Speech Studio Voice Gallery ausprobieren, ohne sich anzumelden oder Code zu schreiben.
Tipp
Probieren Sie das Azure KI Speech-Toolkit aus, um einfach Beispiele in Visual Studio Code zu erstellen und auszuführen.
Voraussetzungen
- Ein Azure-Abonnement. Sie können ein kostenloses Konto erstellen.
- Erstellen Sie eine Speech-Ressource im Azure-Portal.
- Abrufen des Speech-Ressourcenschlüssel und des Endpunkts. Wählen Sie nach der Bereitstellung Ihrer Speech-Ressource Zu Ressource wechseln aus, um Schlüssel anzuzeigen und zu verwalten.
Einrichten der Umgebung
Das Speech SDK für Swift wird als Frameworkpaket verteilt. Das Framework unterstützt sowohl Objective-C als auch Swift unter iOS und macOS.
Das Speech SDK kann in Xcode-Projekten als CocoaPod verwendet oder direkt heruntergeladen und manuell verknüpft werden. In dieser Anleitung wird ein CocoaPod verwendet. Installieren Sie den CocoaPod-Abhängigkeits-Manager entsprechend den Anweisungen in der Installationsanleitung.
Festlegen von Umgebungsvariablen
Sie müssen Ihre Anwendung authentifizieren, um auf Azure KI Services zuzugreifen. In diesem Artikel wird erläutert, wie Sie Umgebungsvariablen verwenden, um Ihre Anmeldeinformationen zu speichern. Anschließend können Sie von Ihrem Code aus auf die Umgebungsvariablen zugreifen, um Ihre Anwendung zu authentifizieren. Verwenden Sie in der Produktion eine sicherere Methode, Ihre Anmeldeinformationen zu speichern und darauf zuzugreifen.
Wichtig
Es wird empfohlen, die Microsoft Entra ID-Authentifizierung mit verwalteten Identitäten für Azure-Ressourcen zu kombinieren, um das Speichern von Anmeldeinformationen mit den in der Cloud ausgeführten Anwendungen zu vermeiden.
Wenn Sie einen API-Schlüssel verwenden, speichern Sie ihn an einer anderen Stelle sicher, z. B. in Azure Key Vault. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich.
Weitere Informationen zur Sicherheit von KI Services finden Sie unter Authentifizieren von Anforderungen an Azure KI Services.
Um die Umgebungsvariable für Ihren Speech-Ressourcenschlüssel und die Region festzulegen, öffnen Sie ein Konsolenfenster, und befolgen Sie die Anweisungen für Ihr Betriebssystem und Ihre Entwicklungsumgebung.
- Zum Festlegen der Umgebungsvariablen
SPEECH_KEY
ersetzen Sie your-key durch einen der Schlüssel für Ihre Ressource. - Zum Festlegen der Umgebungsvariablen
SPEECH_REGION
ersetzen Sie your-region durch eine der Regionen für Ihre Ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Hinweis
Wenn Sie nur in der aktuellen Konsole auf die Umgebungsvariable zugreifen müssen, können Sie die Variable mit set
anstatt setx
festlegen.
Nachdem Sie die Umgebungsvariablen hinzugefügt haben, müssen Sie möglicherweise alle Programme neu starten, die die Umgebungsvariablen lesen müssen, einschließlich des Konsolenfensters. Wenn Sie beispielsweise Visual Studio als Editor verwenden, starten Sie Visual Studio neu, bevor Sie das Beispiel ausführen.
Erstellen der Anwendung
Führen Sie die folgenden Schritte aus, um Sprache in einer macOS-Anwendung zu synthetisieren.
Klonen Sie das Repository Azure-Samples/cognitive-services-speech-sdk, um das Beispielprojekt zum Synthetisieren von Audio in Swift unter macOS mithilfe des Speech SDK abzurufen. Das Repository enthält auch iOS-Beispiele.
Navigieren Sie in einem Terminal zum Verzeichnis der heruntergeladenen Beispiel-App (
helloworld
).Führen Sie den Befehl
pod install
aus. Mit diesem Befehl wird ein Xcode-Arbeitsbereichhelloworld.xcworkspace
generiert, der die Beispiel-App und das Speech SDK als Abhängigkeit enthält.Öffnen Sie den Arbeitsbereich
helloworld.xcworkspace
in Xcode.Öffnen Sie die Datei AppDelegate.swift, und suchen Sie wie hier gezeigt nach den Methoden
applicationDidFinishLaunching
undsynthesize
.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 } }
Verwenden Sie in AppDelegate.m die zuvor festgelegten Umgebungsvariablen für den Speech-Ressourcenschlüssel und die Region.
sub = ProcessInfo.processInfo.environment["SPEECH_KEY"] region = ProcessInfo.processInfo.environment["SPEECH_REGION"]
Fügen Sie optional in AppDelegate.m wie hier gezeigt einen Sprachsynthese-Stimmnamen ein:
speechConfig?.speechSynthesisVoiceName = "en-US-AvaMultilingualNeural";
Um die Sprache für die Sprachsynthese zu ändern, ersetzen Sie
en-US-AvaMultilingualNeural
durch eine andere unterstützte Stimme.Alle neuronalen Stimmen sind mehrsprachig und können in ihrer eigenen Sprache und in englischer Sprache sprechen. Wenn der Eingabetext auf Englisch beispielsweise I'm excited to try text to speech lautet und Sie
es-ES-ElviraNeural
festlegen, wird der Text in englischer Sprache mit einem spanischen Akzent gesprochen. Wenn die Stimme nicht die Sprache des Eingabetexts spricht, erfolgt keine synthetisierte Audioausgabe vom Speech-Dienst.Um die Debugausgabe anzuzeigen, wählen Sie Ansicht>Debugbereich>Konsole aktivieren aus.
Um den Beispielcode zu erstellen und auszuführen, wählen Sie Produkt->Ausführung aus dem Menü oder klicken Sie auf die Schaltfläche Wiedergeben.
Wichtig
Stellen Sie sicher, dass Sie die Umgebungsvariablen SPEECH_KEY
und SPEECH_REGION
festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.
Nachdem Sie Text eingegeben und in der App auf die Schaltfläche geklickt haben, sollten die synthetisierten Audiodaten wiedergegeben werden.
Hinweise
Weitere Sprachsyntheseoptionen
In dieser Schnellstartanleitung wird der Vorgang SpeakText
verwendet, um einen kurzen Textblock zu synthetisieren, den Sie eingeben. Sie können auch langen Text aus einer Datei verwenden und eine bessere Kontrolle über Sprachstile, Prosodie und andere Einstellungen erhalten.
- Siehe Synthetisieren von Sprache und die Übersicht über Speech Synthesis Markup Language (SSML) für Informationen zur Sprachsynthese aus einer Datei und zur genaueren Steuerung von Sprechstil, Prosodie sowie weiteren Einstellungen.
- Siehe Batchsynthese-API für die Sprachsynthese für Informationen zum Synthetisieren von langen Texten in Sprache.
OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech
OpenAI-Stimmen für die Sprachsynthese wird ebenfalls unterstützt. Siehe OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech und mehrsprachige Stimmen. Sie können en-US-AvaMultilingualNeural
durch einen unterstützten OpenAI-Sprachnamen wie en-US-FableMultilingualNeural
ersetzen.
Bereinigen von Ressourcen
Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.
Referenzdokumentation | Paket (PyPi) | Zusätzliche Beispiele auf GitHub
Mit Azure KI Speech können Sie eine Anwendung ausführen, die eine menschliche Stimme synthetisiert, um Text zu lesen. Sie können die Stimme ändern, Text eingeben, der gesprochen werden soll, und die Ausgabe auf dem Lautsprecher Ihres Computers hören.
Tipp
Sie können die Sprachsynthese in Speech Studio Voice Gallery ausprobieren, ohne sich anzumelden oder Code zu schreiben.
Tipp
Probieren Sie das Azure KI Speech-Toolkit aus, um einfach Beispiele in Visual Studio Code zu erstellen und auszuführen.
Voraussetzungen
- Ein Azure-Abonnement. Sie können ein kostenloses Konto erstellen.
- Erstellen Sie eine Speech-Ressource im Azure-Portal.
- Abrufen des Speech-Ressourcenschlüssel und des Endpunkts. Wählen Sie nach der Bereitstellung Ihrer Speech-Ressource Zu Ressource wechseln aus, um Schlüssel anzuzeigen und zu verwalten.
Einrichten der Umgebung
Das Speech SDK für Python ist als PyPI-Modul (Python Package Index) verfügbar. Das Speech SDK für Python ist mit Windows, Linux und macOS kompatibel.
- Installieren Sie unter Windows das Microsoft Visual C++ Redistributable für Visual Studio 2015, 2017, 2019 und 2022 für Ihre Plattform. Bei der Installation dieses Pakets ist möglicherweise ein Neustart erforderlich.
- Unter Linux müssen Sie die x64-Zielarchitektur verwenden.
Installieren Sie eine Python-Version ab 3.7. Alle Anforderungen finden Sie unter Installieren des Speech SDK.
Festlegen von Umgebungsvariablen
Sie müssen Ihre Anwendung authentifizieren, um auf Azure KI Services zuzugreifen. In diesem Artikel wird erläutert, wie Sie Umgebungsvariablen verwenden, um Ihre Anmeldeinformationen zu speichern. Anschließend können Sie von Ihrem Code aus auf die Umgebungsvariablen zugreifen, um Ihre Anwendung zu authentifizieren. Verwenden Sie in der Produktion eine sicherere Methode, Ihre Anmeldeinformationen zu speichern und darauf zuzugreifen.
Wichtig
Es wird empfohlen, die Microsoft Entra ID-Authentifizierung mit verwalteten Identitäten für Azure-Ressourcen zu kombinieren, um das Speichern von Anmeldeinformationen mit den in der Cloud ausgeführten Anwendungen zu vermeiden.
Wenn Sie einen API-Schlüssel verwenden, speichern Sie ihn an einer anderen Stelle sicher, z. B. in Azure Key Vault. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich.
Weitere Informationen zur Sicherheit von KI Services finden Sie unter Authentifizieren von Anforderungen an Azure KI Services.
Um die Umgebungsvariable für Ihren Speech-Ressourcenschlüssel und die Region festzulegen, öffnen Sie ein Konsolenfenster, und befolgen Sie die Anweisungen für Ihr Betriebssystem und Ihre Entwicklungsumgebung.
- Zum Festlegen der Umgebungsvariablen
SPEECH_KEY
ersetzen Sie your-key durch einen der Schlüssel für Ihre Ressource. - Zum Festlegen der Umgebungsvariablen
SPEECH_REGION
ersetzen Sie your-region durch eine der Regionen für Ihre Ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Hinweis
Wenn Sie nur in der aktuellen Konsole auf die Umgebungsvariable zugreifen müssen, können Sie die Variable mit set
anstatt setx
festlegen.
Nachdem Sie die Umgebungsvariablen hinzugefügt haben, müssen Sie möglicherweise alle Programme neu starten, die die Umgebungsvariablen lesen müssen, einschließlich des Konsolenfensters. Wenn Sie beispielsweise Visual Studio als Editor verwenden, starten Sie Visual Studio neu, bevor Sie das Beispiel ausführen.
Erstellen der Anwendung
Führen Sie die folgenden Schritte aus, um eine Konsolenanwendung zu erstellen.
Öffnen Sie ein Eingabeaufforderungsfenster in dem Ordner, in dem das neue Projekt angezeigt werden soll. Erstellen Sie eine Datei namens speech_synthesis.py.
Führen Sie diesen Befehl aus, um das Speech SDK zu installieren:
pip install azure-cognitiveservices-speech
Kopieren Sie den folgenden Code in die Datei 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?")
Um die Sprache für die Sprachsynthese zu ändern, ersetzen Sie
en-US-AvaMultilingualNeural
durch eine andere unterstützte Stimme.Alle neuronalen Stimmen sind mehrsprachig und können in ihrer eigenen Sprache und in englischer Sprache sprechen. Wenn der Eingabetext auf Englisch beispielsweise I'm excited to try text to speech lautet und Sie
es-ES-ElviraNeural
festlegen, wird der Text in englischer Sprache mit einem spanischen Akzent gesprochen. Wenn die Stimme nicht die Sprache des Eingabetexts spricht, erfolgt keine synthetisierte Audioausgabe vom Speech-Dienst.Führen Sie Ihre neue Konsolenanwendung aus, um die Sprachsynthese mit dem Standardsprecher zu starten.
python speech_synthesis.py
Wichtig
Stellen Sie sicher, dass Sie die Umgebungsvariablen
SPEECH_KEY
undSPEECH_REGION
festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.Geben Sie den Text ein, der gesprochen werden soll. Geben Sie z. B. I'm excited to try text to speech ein. Drücken Sie die EINGABETASTE, um die synthetisierte Sprache zu hören.
Enter some text that you want to speak > I'm excited to try text to speech
Hinweise
Weitere Sprachsyntheseoptionen
In dieser Schnellstartanleitung wird der Vorgang speak_text_async
verwendet, um einen kurzen Textblock zu synthetisieren, den Sie eingeben. Sie können auch langen Text aus einer Datei verwenden und eine bessere Kontrolle über Sprachstile, Prosodie und andere Einstellungen erhalten.
- Siehe Synthetisieren von Sprache und die Übersicht über Speech Synthesis Markup Language (SSML) für Informationen zur Sprachsynthese aus einer Datei und zur genaueren Steuerung von Sprechstil, Prosodie sowie weiteren Einstellungen.
- Siehe Batchsynthese-API für die Sprachsynthese für Informationen zum Synthetisieren von langen Texten in Sprache.
OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech
OpenAI-Stimmen für die Sprachsynthese wird ebenfalls unterstützt. Siehe OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech und mehrsprachige Stimmen. Sie können en-US-AvaMultilingualNeural
durch einen unterstützten OpenAI-Sprachnamen wie en-US-FableMultilingualNeural
ersetzen.
Bereinigen von Ressourcen
Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.
REST-API-Referenz für die Spracherkennung | REST-API-Referenz für die Spracherkennung für kurze Audiodateien | Zusätzliche Beispiele auf GitHub
Mit Azure KI Speech können Sie eine Anwendung ausführen, die eine menschliche Stimme synthetisiert, um Text zu lesen. Sie können die Stimme ändern, Text eingeben, der gesprochen werden soll, und die Ausgabe auf dem Lautsprecher Ihres Computers hören.
Tipp
Sie können die Sprachsynthese in Speech Studio Voice Gallery ausprobieren, ohne sich anzumelden oder Code zu schreiben.
Tipp
Probieren Sie das Azure KI Speech-Toolkit aus, um einfach Beispiele in Visual Studio Code zu erstellen und auszuführen.
Voraussetzungen
- Ein Azure-Abonnement. Sie können ein kostenloses Konto erstellen.
- Erstellen Sie eine Speech-Ressource im Azure-Portal.
- Abrufen des Speech-Ressourcenschlüssel und des Endpunkts. Wählen Sie nach der Bereitstellung Ihrer Speech-Ressource Zu Ressource wechseln aus, um Schlüssel anzuzeigen und zu verwalten.
Festlegen von Umgebungsvariablen
Sie müssen Ihre Anwendung authentifizieren, um auf Azure KI Services zuzugreifen. In diesem Artikel wird erläutert, wie Sie Umgebungsvariablen verwenden, um Ihre Anmeldeinformationen zu speichern. Anschließend können Sie von Ihrem Code aus auf die Umgebungsvariablen zugreifen, um Ihre Anwendung zu authentifizieren. Verwenden Sie in der Produktion eine sicherere Methode, Ihre Anmeldeinformationen zu speichern und darauf zuzugreifen.
Wichtig
Es wird empfohlen, die Microsoft Entra ID-Authentifizierung mit verwalteten Identitäten für Azure-Ressourcen zu kombinieren, um das Speichern von Anmeldeinformationen mit den in der Cloud ausgeführten Anwendungen zu vermeiden.
Wenn Sie einen API-Schlüssel verwenden, speichern Sie ihn an einer anderen Stelle sicher, z. B. in Azure Key Vault. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich.
Weitere Informationen zur Sicherheit von KI Services finden Sie unter Authentifizieren von Anforderungen an Azure KI Services.
Um die Umgebungsvariable für Ihren Speech-Ressourcenschlüssel und die Region festzulegen, öffnen Sie ein Konsolenfenster, und befolgen Sie die Anweisungen für Ihr Betriebssystem und Ihre Entwicklungsumgebung.
- Zum Festlegen der Umgebungsvariablen
SPEECH_KEY
ersetzen Sie your-key durch einen der Schlüssel für Ihre Ressource. - Zum Festlegen der Umgebungsvariablen
SPEECH_REGION
ersetzen Sie your-region durch eine der Regionen für Ihre Ressource.
setx SPEECH_KEY your-key
setx SPEECH_REGION your-region
Hinweis
Wenn Sie nur in der aktuellen Konsole auf die Umgebungsvariable zugreifen müssen, können Sie die Variable mit set
anstatt setx
festlegen.
Nachdem Sie die Umgebungsvariablen hinzugefügt haben, müssen Sie möglicherweise alle Programme neu starten, die die Umgebungsvariablen lesen müssen, einschließlich des Konsolenfensters. Wenn Sie beispielsweise Visual Studio als Editor verwenden, starten Sie Visual Studio neu, bevor Sie das Beispiel ausführen.
Synthetisieren von Sprache in eine Datei
Führen Sie an der Eingabeaufforderung den folgenden cURL-Befehl aus. Optional können Sie output.mp3 in einen anderen Ausgabedateinamen umbenennen.
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
Wichtig
Stellen Sie sicher, dass Sie die Umgebungsvariablen SPEECH_KEY
und SPEECH_REGION
festlegen. Wenn Sie diese Variablen nicht festlegen, wird für das Beispiel eine Fehlermeldung ausgegeben.
Der bereitgestellte Text sollte in eine Audiodatei namens output.mp3 ausgegeben werden.
Um die Sprache für die Sprachsynthese zu ändern, ersetzen Sie en-US-AvaMultilingualNeural
durch eine andere unterstützte Stimme.
Alle neuronalen Stimmen sind mehrsprachig und können in ihrer eigenen Sprache und in englischer Sprache sprechen. Wenn der Eingabetext auf Englisch beispielsweise I'm excited to try text to speech lautet und Sie es-ES-ElviraNeural
festlegen, wird der Text in englischer Sprache mit einem spanischen Akzent gesprochen. Wenn die Stimme nicht die Sprache des Eingabetexts spricht, erfolgt keine synthetisierte Audioausgabe vom Speech-Dienst.
Weitere Informationen finden Sie in der Sprachsynthese-REST-API.
Hinweise
OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech
OpenAI-Stimmen für die Sprachsynthese wird ebenfalls unterstützt. Siehe OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech und mehrsprachige Stimmen. Sie können en-US-AvaMultilingualNeural
durch einen unterstützten OpenAI-Sprachnamen wie en-US-FableMultilingualNeural
ersetzen.
Bereinigen von Ressourcen
Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.
Mit Azure KI Speech können Sie eine Anwendung ausführen, die eine menschliche Stimme synthetisiert, um Text zu lesen. Sie können die Stimme ändern, Text eingeben, der gesprochen werden soll, und die Ausgabe auf dem Lautsprecher Ihres Computers hören.
Tipp
Sie können die Sprachsynthese in Speech Studio Voice Gallery ausprobieren, ohne sich anzumelden oder Code zu schreiben.
Tipp
Probieren Sie das Azure KI Speech-Toolkit aus, um einfach Beispiele in Visual Studio Code zu erstellen und auszuführen.
Voraussetzungen
- Ein Azure-Abonnement. Sie können ein kostenloses Konto erstellen.
- Erstellen Sie eine Speech-Ressource im Azure-Portal.
- Abrufen des Speech-Ressourcenschlüssel und des Endpunkts. Wählen Sie nach der Bereitstellung Ihrer Speech-Ressource Zu Ressource wechseln aus, um Schlüssel anzuzeigen und zu verwalten.
Einrichten der Umgebung
Befolgen Sie diese Schritte und lesen Sie die Schnellstartanleitung für Speech CLI, um weitere Anforderungen für Ihre Plattform zu erfahren.
Führen Sie den folgenden .NET CLI-Befehl aus, um die Speech CLI zu installieren:
dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
Führen Sie die folgenden Befehle aus, um Ihren Speech-Ressourcenschlüssel und Ihre Region zu konfigurieren. Ersetzen Sie
SUBSCRIPTION-KEY
durch den Schlüssel Ihrer Speech-Ressource undREGION
durch die Region Ihrer Speech-Ressource.spx config @key --set SUBSCRIPTION-KEY spx config @region --set REGION
Senden von Sprachausgabe an Lautsprecher
Führen Sie den folgenden Befehl aus, um die Sprachsynthese an den Standardlautsprecher auszugeben. Sie können die Stimme und den zu synthetisierenden Text ändern.
spx synthesize --text "I'm excited to try text to speech" --voice "en-US-AvaMultilingualNeural"
Wenn Sie keinen Stimmnamen festlegen, spricht die Standardstimme für en-US
.
Alle neuronalen Stimmen sind mehrsprachig und können in ihrer eigenen Sprache und in englischer Sprache sprechen. Wenn der Eingabetext auf Englisch beispielsweise I'm excited to try text to speech lautet und Sie --voice "es-ES-ElviraNeural"
festlegen, wird der Text in englischer Sprache mit einem spanischen Akzent gesprochen. Wenn die Stimme nicht die Sprache des Eingabetexts spricht, erfolgt keine synthetisierte Audioausgabe vom Speech-Dienst.
Führen Sie diesen Befehl aus, um Informationen zu weiteren Sprachsyntheseoptionen wie Dateieingabe und -ausgabe zu erhalten:
spx help synthesize
Hinweise
SSML-Unterstützung
Mithilfe von Speech Synthesis Markup Language (SSML) können Sie Sprechstile, Prosodie und weitere Einstellungen genauer steuern.
OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech
OpenAI-Stimmen für die Sprachsynthese wird ebenfalls unterstützt. Siehe OpenAI-Stimmen für die Sprachsynthese in Azure KI Speech und mehrsprachige Stimmen. Sie können en-US-AvaMultilingualNeural
durch einen unterstützten OpenAI-Sprachnamen wie en-US-FableMultilingualNeural
ersetzen.
Bereinigen von Ressourcen
Sie können das Azure-Portal oder die Azure-Befehlszeilenschnittstelle (CLI) verwenden, um die erstellte Speech-Ressource zu entfernen.