Jak dostosować wygenerowaną mowę za pomocą znaczników SSML

Opublikowano

Wave.video wykorzystuje technologię Amazon Polly do generowania ścieżek dźwiękowych z tekstu. Czasami domyślny wynik nie jest bezbłędny i możesz chcieć dostroić mowę. Z pomocą przychodzą tagi SSML!

Jak zacząć używać SSML w zamianie tekstu na mowę?

To proste! Umieść tekst w dwóch znacznikach <speak>:

<speak>Hello! </speak>.

Należy pamiętać, że niektóre tagi SSML nie działają z głosami neuronowymi i odwrotnie. Upewnij się, że używasz prawidłowych tagów .

Jak zrobić pauzę

TTS automatycznie tworzy pauzy po przecinkach, końcach zdań i akapitów. Najprostszym sposobem na utworzenie dodatkowej pauzy jest użycie znacznika <break>. Jest on dostępny zarówno dla głosów zwykłych, jak i neuronowych.

Ten znacznik ma różne parametry, które określają, jak silna będzie pauza: słaba, średnia, silna, x-silna. Ponadto można określić dokładny czas pauzy za pomocą parametru time. Zobacz poniższe przykłady:

<speak> O, lenistwo, przyjdź, przyjdź do mnie, <break strength="strong"/> sama. Wzywa cię miękki chłód i dobry odpoczynek <break time="0.8s"/> Tylko w tobie widzę własną boginię </speak>.

Jak zmienić wysokość głosu lub uczynić go głośniejszym/cichszym?

Głos może brzmieć głośniej lub ciszej za pomocą znacznika <prosody>. Użyj wartości silent, x-soft, soft, medium, loud, x-loud, aby to zmienić:

<speak>Wszyscy zastanawiają się <prosody volume="x-loud">skąd wziął się blues</prosody> </speak>.

Chcesz kontrolować głośność w bardziej rygorystyczny sposób? Wystarczy podać wartość w dB. Spróbuj:

<speak> I wszystko <prosody volume="-5dB">wygląda dobrze</prosody> dziś wieczorem </speak>.

Uwaga: +6 dB prawie podwaja głośność, -6 dB sprawia, że jest o 50% ciszej.

Regulacja głośności jest obsługiwana zarówno przez zwykły, jak i neuronowy syntezator mowy.

Przyspiesz lub spowolnij mowę

Ten sam znacznik <prosody> pomaga tutaj! Prędkość można ustawić za pomocą atrybutu rate, używając x-slow, slow, medium, fast, x-fast lub wartości procentowej. Spróbuj tego:

<speak> <prosody rate="x-slow">Czerwona ciężarówka, żółta ciężarówka.</prosody> <prosody rate="fast">Czerwona ciężarówka, żółta ciężarówka.</prosody> <prosody rate="200%">Czerwona ciężarówka, żółta ciężarówka.</prosody> </speak>

Działa zarówno dla głosów neuronowych, jak i zwykłych.

Nacisk

Aby podkreślić słowo, użyj znacznika <emphasis> z atrybutem level. Ma on 3 opcje, oto jak one działają:

  • Silny: Zwiększa głośność i spowalnia tempo mówienia, dzięki czemu mowa jest głośniejsza i wolniejsza.

  • Umiarkowany: Zwiększa głośność i spowalnia tempo mówienia, ale w mniejszym stopniu niż tryb silny. Umiarkowany jest ustawieniem domyślnym.

  • Zmniejszony: Zmniejsza głośność i przyspiesza tempo mówienia. Mowa jest cichsza i szybsza.

Oto przykład:

<speak> <emphasis level="reduced">Ona jest tą osobą</emphasis>, która <emphasis level="strong">zauważy</emphasis>, że pierwszy lwia paszcza wiosny <emphasis level="moderate">rozkwita</emphasis> </speak>.

Podkreślanie nie działa w przypadku głosów neuronowych.

Przemówienie prezentera wiadomości

Szukasz przemówienia w stylu prezentera wiadomości? Mamy to w zanadrzu!

<speak> <amazon:domain name="news"> Z wydania gazety The Guardian z wtorku 16 kwietnia 1912 roku: Dziewiczy rejs liniowca White Star Titanic, największego statku w historii, zakończył się katastrofą. Titanic rozpoczął swoją podróż z Southampton do Nowego Jorku w środę. Późnym wieczorem w niedzielę uderzył w górę lodową u wybrzeży Nowej Fundlandii. Za pomocą telegrafii bezprzewodowej wysłał sygnały o niebezpieczeństwie, a kilka statków liniowych było na tyle blisko, by złapać i odpowiedzieć na wezwanie.

Ta sztuczka jest jednak dostępna dla niektórych głosów neuronowych:

  • Głosy Matthew lub Joanny (en-US)

  • Lupe (es-US)

  • Amy (en-GB)

Chcesz zrobić więcej z SSML?

Wszystkie opcje tej funkcji można znaleźć w dokumentacji Amazon Polly.