Korzystanie z języka znaczników syntezy mowy

Ukończone

Zestaw AZURE AI Speech SDK umożliwia przesyłanie zwykłego tekstu do syntetyzowania mowy (na przykład przy użyciu metody SpeakTextAsync(), ale usługa obsługuje również składnię opartą na formacie XML na potrzeby opisywania cech mowy, którą chcesz wygenerować. Ta składnia języka znaczników syntezy mowy (SSML, Speech Synthesis Markup Language ) zapewnia większą kontrolę nad sposobem, w jaki dźwięk mówionych danych wyjściowych umożliwia:

  • Określ styl wypowiedzi, taki jak "podekscytowany" lub "wesoły" podczas korzystania z neuronowego głosu.
  • Wstaw wstrzymanie lub milczenie.
  • Określ fonetyczne wymowy, na przykład wymawianie tekstu "SQL" jako "sequel".
  • Dostosuj prosodię głosu (wpływając na boisko, timbre i szybkość mówienia).
  • Użyj typowych reguł "say-as", na przykład, aby określić, że dany ciąg powinien być wyrażony jako data, godzina, numer telefonu lub inny formularz.
  • Wstaw nagraną mowę lub dźwięk, na przykład w celu uwzględnienia standardowego zarejestrowanego komunikatu lub symulowania szumu w tle.

Rozważmy na przykład następujący kod SSML:

<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" 
                     xmlns:mstts="https://www.w3.org/2001/mstts" xml:lang="en-US"> 
    <voice name="en-US-AriaNeural"> 
        <mstts:express-as style="cheerful"> 
          I say tomato 
        </mstts:express-as> 
    </voice> 
    <voice name="en-US-GuyNeural"> 
        I say <phoneme alphabet="sapi" ph="t ao m ae t ow"> tomato </phoneme>. 
        <break strength="weak"/>Lets call the whole thing off! 
    </voice> 
</speak>

Ten kod SSML określa mówione okno dialogowe między dwoma różnymi głosami neuronowymi, w następujący sposób:

  • Ariana (wesoło): "Mówię pomidor:
  • Guy: "Mówię pomidor (wymawiane tom-ah-toe) ... Nazwijmy całą sprawę!"

Aby przesłać opis SSML do usługi Mowa, możesz użyć metody SpeakSsmlAsync(), w następujący sposób:

speechSynthesizer.SpeakSsmlAsync(ssml_string);

Aby uzyskać więcej informacji na temat języka SSML, zobacz dokumentację zestawu Azure AI Speech SDK.