Verwenden der Text-zu-Sprache-API
Ähnlich wie bei APIs für Spracherkennung bietet der Azure KI Speech-Dienst andere REST-APIs für die Sprachsynthese:
- Die Text-zu-Sprache-API, die die primäre Methode zum Ausführen von Sprachsynthese ist
- Die Batch-Synthese-API, die zum Unterstützen von Batchvorgängen entwickelt wurde, mit denen große Mengen von Text in Audio konvertiert werden, z. B. zum Generieren eines Audiobuchs aus dem Quelltext.
Weitere Informationen zu den REST-APIs finden Sie in der Dokumentation zu REST-APIs der Sprachsynthese. In der Praxis verwenden die meisten interaktiven sprachfähigen Anwendungen den Azure KI Speech-Dienst über ein sprachspezifisches (Programmierungs-)SDK.
Verwenden des Azure KI Speech-SDK
Wie bei der Spracherkennung werden die meisten interaktiven sprachaktivierten Anwendungen in der Praxis mit dem Azure KI Speech-SDK erstellt.
Das Muster für die Implementierung von Sprachsynthese ähnelt dem der Spracherkennung:
- Verwenden Sie ein SpeechConfig-Objekt, um die Informationen zu kapseln, die zum Herstellen einer Verbindung mit Ihrer Azure KI Speech-Ressource erforderlich sind. Insbesondere ihren Standort und Schlüssel.
- Verwenden Sie optional AudioConfig, um das Ausgabegerät für die zu synthetisierte Sprache zu definieren. Standardmäßig ist dies der Standardsystemlautsprecher, aber Sie können auch eine Audiodatei angeben oder durch explizites Festlegen dieses Werts auf einen NULL-Wert das zurückgegebene Audiodatenstromobjekt direkt verarbeiten.
- Verwenden Sie SpeechConfig und AudioConfig, um ein SpeechSynthesizer-Objekt zu erstellen. Bei diesem Objekt handelt es sich um einen Proxyclient für die Text-zu-Sprache-API.
- Verwenden Sie die Methoden des SpeechSynthesizer-Objekts, um die zugrunde liegenden API-Funktionen aufzurufen. Beispielsweise verwendet die SpeakTextAsync()-Methode den Azure KI Speech-Dienst, um Text in gesprochene Audioinhalte zu konvertieren.
- Verarbeiten Sie die Antwort des Azure KI Speech-Diensts. Im Fall der SpeakTextAsync-Methode ist das Ergebnis ein SpeechSynthesisResult-Objekt,-Objekt, das die folgenden Eigenschaften enthält:
- AudioData
- Eigenschaften
- `Reason`
- ResultId
Wenn die Sprachsynthese erfolgreich war, wird die Reason-Eigenschaft auf die Enumeration SynthesizingAudioCompleted festgelegt, und die AudioData-Eigenschaft enthält den Audiodatenstrom (der abhängig von AudioConfig automatisch an einen Lautsprecher oder eine Datei gesendet wurde).