Heim > Backend-Entwicklung > XML/RSS-Tutorial > Anwendung von XML in der Sprachsynthese

Anwendung von XML in der Sprachsynthese

黄舟
Freigeben: 2017-03-03 17:10:12
Original
2046 Leute haben es durchsucht

Das Internet und alles, was damit zusammenhängt, scheint heutzutage überall zu sein. Möglicherweise haben Sie spät in der Nacht einen Anruf von einem Telefonverkäufer oder eine Rezeptbenachrichtigung von Ihrer örtlichen Apotheke erhalten. Jetzt gibt es eine neue Technologie, die Sprachsynthese in Kombination mit XML-Technologie zur Übertragung von Sprachinformationen nutzen kann.


Die Methode der Informationsübermittlung per Sprache ist nichts Neues. Es ist eine Kommunikationsmethode, die wir seit Tausenden von Jahren nutzen. Und das Empfangen von Telefonanrufen über einen Computer ist nichts Neues. Viele Sprachtechnologien sind mittlerweile beliebt, von Faxgeräten und Autodialern bis hin zu integrierten Sprachantwortsystemen (IVR). Das Telefon ist natürlich die häufigste Anwendung.

Herkömmliche Sprachsysteme verwenden vorab aufgezeichnete Beispiele, Wörterbücher und Phoneme, um die Geräusche zu erzeugen, die wir hören. Bei der Verwendung dieses vorab aufgezeichneten Ansatzes gibt es jedoch viele Probleme. Eines der häufigsten Probleme ist mangelnde Konsistenz und Vielfalt. Wenn es nur eine aufgezeichnete Version der Sprache mit nur einem Beispiel für jedes Wort oder jeden Ton gibt, ist es schwierig, einen Computer dazu zu bringen, Fragen mit einer anderen Betonung als gewöhnliche Aussagesätze zu erzeugen. Genauso schwierig ist es, einem Computer beizubringen, wann er eine bestimmte Betonung verwenden oder welche Betonung er aussprechen soll.

Um bei der Lösung von Sprachsyntheseproblemen zu helfen, hat W3C einen neuen Arbeitsentwurf für die Speech Synthesis Markup Language erstellt. Mit diesem neuen XML-Vokabular können Entwickler von Sprachbrowsern steuern, wie ein Sprachsynthesizer erstellt wird. Entwickler können beispielsweise Befehle in die Lautstärke einbinden und diese bei der Synthese von Sprachmustern verwenden.

Die SSML-Spezifikation basiert auf einer frühen Forschungsarbeit von Sun namens jspeeck Markup Language (JSML). JSML basiert auf der Java Speech API Markup Language. SSML ist jetzt ein Arbeitspapier der W3C Speech Research Working Group.

Das grundlegende Ziel der SSML-Sprache ist ein Text-to-Speech-Prozessor (Text-To-Speech, kurz TTS). Eine TTS-Engine nimmt eine Textsammlung und wandelt sie in Sprache um. Es gibt bereits mehrere TTS-Anwendungen, wie z. B. Telefon-Sprachsynthese-Antwortsysteme, aber auch fortschrittlichere Systeme für Blinde usw. Die inhärente Unsicherheit bei der Aussprache einer bestimmten Textsammlung ist eine der Hauptschwierigkeiten bestehender TTS-Systeme. Andere häufige Probleme konzentrieren sich auf die Aussprache von Wortarten wie Wortabkürzungen (wie HTML) und Wörtern mit unterschiedlicher Schreibweise und Aussprache (wie Vorladung).

Die Grundelemente der SSML-Sprache legen das Format des Textes fest. Im Vergleich zu HTML bietet die SSML-Sprache beispielsweise ein Absatzelement und geht darüber hinaus. Weil es auch Satzelemente bereitstellt. Durch die Angabe der Adresse eines Satzes wie eines Absatzes, einschließlich der Start- und Endadresse, kann die TTS-Engine Sprache genauer generieren.

Zusätzlich zum Grundformat bietet SSML auch Funktionen, um anzugeben, wie ein vorgegebenes Wort oder eine Reihe von Wörtern gesendet werden soll. Diese Funktionalität wird durch das „say-as“-Element implementiert. Es ist eine sehr nützliche Komponente in SSML. Sie können eine Vorlage angeben, die beschreibt, wie ein Wort oder eine Wortgruppe ausgesprochen wird. Mit „say-as“ können wir angeben, wie abgekürzte Wörter ausgesprochen werden sollen, sowie die Aussprache für Wörter festlegen, die anders geschrieben als ausgesprochen werden. Wir können auch die Unterschiede zwischen Zahlen und Datumsangaben auflisten. Das „Say-as“-Element umfasst Unterstützung für E-Mail-Adressen, Währungen, Telefonnummern usw.

Wir können auch einen phonetischen Ausdruck für den Text bereitstellen. Mit dieser Methode können wir beispielsweise auf den Unterschied in der Aussprache des Wortes Potato zwischen amerikanischem Englisch und britischem Englisch hinweisen.

Mehrere erweiterte Attribute der SSML-Sprache können uns dabei helfen, dass das TTS-System humanere Klänge erzeugt. Mit dem Element „voice“ können wir eine männliche, weibliche oder neutrale Stimme angeben und außerdem das Alter angeben, zu dem die Stimme gehört. Wir können dieses Element verwenden, um jedes Geräusch von einem 4-jährigen Jungen bis zu einer 75-jährigen Frau zu spezifizieren.

Wir können das Element „Hervorhebung“ auch verwenden, um Text zu umgeben, der hervorgehoben werden muss oder weniger wichtig ist. Wir können das „break“-Element auch verwenden, um dem System mitzuteilen, wo die Rede pausieren soll.

Eine der fortschrittlichsten Funktionen der SSML-Sprache spiegelt sich in ihrem „PRosody“-Element wider. Dadurch können wir die Sprache einer bestimmten Textsammlung auf eine bestimmte Art und Weise erzeugen. Wir können die Intonation, den Tonumfang und die Sprechgeschwindigkeit der Stimme (Wörter pro Minute) festlegen. Mithilfe des Elements „contour“ können wir sogar etwas detaillierter angeben. Das Element „Kontur“ integriert Intonation und Sprechgeschwindigkeit. Indem wir den Wert des „contour“-Elements einer Textsammlung angeben, können wir genauer definieren, wie Sprache generiert wird.

Das Obige ist der Inhalt der Anwendung von XML in der Sprachsynthese. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage