Korzystanie z interfejsu API zamiany tekstu na mowę
Podobnie jak w przypadku interfejsów API zamiany mowy na tekst usługa Azure Speech oferuje inne interfejsy API REST do syntezy mowy:
- API zamiany tekstu na mowę, który jest podstawowym sposobem do syntezy mowy.
- Interfejs API syntezy wsadowej, który wspiera operacje wsadowe konwertujące duże ilości tekstu na dźwięk, aby na przykład wygenerować książkę audio z tekstu źródłowego.
Więcej informacji na temat interfejsów API REST można uzyskać w dokumentacji interfejsu API REST zamiany tekstu na mowę. W praktyce większość interakcyjnych aplikacji z obsługą mowy używa usługi Azure Speech za pomocą zestawu SDK specyficznego dla języka (programowania).
Korzystanie z zestawu Azure Speech SDK
Podobnie jak w przypadku rozpoznawania mowy, większość interaktywnych aplikacji z obsługą mowy jest kompilowana przy użyciu zestawu Azure Speech SDK.
Wzorzec implementowania syntezy mowy jest podobny do wzorca rozpoznawania mowy:
- Użyj obiektu SpeechConfig , aby hermetyzować informacje wymagane do nawiązania połączenia z zasobem usługi Azure Speech. W szczególności jego lokalizacja i klucz.
- Opcjonalnie użyj polecenia AudioConfig , aby zdefiniować urządzenie wyjściowe dla mowy, które ma być syntetyzowane. Domyślnie jest to domyślny głośnik systemowy, ale można również określić plik audio lub jawnie ustawiając tę wartość na wartość null, można przetworzyć obiekt strumienia audio zwracany bezpośrednio.
- Użyj funkcji SpeechConfig i AudioConfig , aby utworzyć obiekt SpeechSynthesizer . Ten obiekt jest klientem proxy dla API Text to Speech.
- Użyj metod obiektu SpeechSynthesizer , aby wywołać podstawowe funkcje interfejsu API. Na przykład metoda SpeakTextAsync() używa usługi Azure Speech do konwertowania tekstu na dźwięk mówiony.
- Przetwarzanie odpowiedzi z usługi Azure Speech. W przypadku metody SpeakTextAsync wynik jest obiektem SpeechSynthesisResult zawierającym następujące właściwości:
- AudioData
- Właściwości
- Powód
- IdentyfikatorWyniku
Po pomyślnym zsyntetyzowaniu mowy właściwość Reason jest ustawiona na wyliczenie SynthesizingAudioCompleted, a właściwość AudioData zawiera strumień audio (który, w zależności od AudioConfig, mógł zostać automatycznie wysłany do głośnika lub pliku).