Balabolka (Text-To-Speech)

Balabolka

Balabolka ist ein Programm zur Sprachausgabe oder Text-To-Speech (TTS). Alle auf Ihrem System installierten Computerstimmen können mit Balabolka benutzt werden. Jedes einfache Text-Dokument auf Ihrem Computer kann zum Lesen und Bearbeiten über das Menü "Datei | Öffnen" geöffnet werden. Um ein neues Dokument zu erstellen, wählen Sie einfach "Neu" im "Datei"-Menü.

Die Sprachausgabe kann über die üblichen Start-Pause-Stopp-Schalter in der Symbolleiste am oberen Rand von Balabolka geregelt werden. Das Programm kann den Inhalt der Zwischenablage lesen und Text von AZW-, AZW3-, CHM-, DjVu-, DOC-, DOCX-, EML-, EPUB-, FB2-, FB3-, HTML-, LIT-, MD-, MOBI-, ODP-, ODS-, ODT-, PDB-, PDF-, PPT-, PPTX-, PRC-, RTF-, TCR-, WPD-, XLS- und XLSX-Dateien anzeigen. Schrift und Hintergrund-Farbe lassen sich individuell anpassen. Die Sprachausgabe kann vom System-Tray aus (rechts unten neben der Taskleiste) geregelt werden.

Der aktuell geladene Text kann als WAV-, MP3-, MP4-, OGG-, OPUS- oder WMA-Datei gespeichert werden, indem man "Speichern als Audio-Datei" oder "Splitten und in Audio-Dateien umwandeln" im Menü "Datei" wählt.

Das Programm kann verschiedene Versionen von Microsoft Speech API (SAPI) und Microsoft Speech Platform benutzen. Verschiedene Parameter des Sprechers wie Geschwindigkeit und Stimmhöhe können verändert werden.

Der Anwender kann eine eigene Aussprache-Korrektur-Liste einsetzen, um die Artikulation des Sprechers zu verbessern. Diese Funktion ist sehr nützlich, wenn die Aussprache bestimmter Wörter oder Buchstabenfolgen falsch ist. Manchmal hilft es auch, die Silbengliederung anzugeben. Balabolka kann zwei verschiedene Arten von Aussprache-Korrektur-Listen einsetzen:

  • Die Regeln für die Aussprache-Korrektur benutzen die Syntax für reguläre Ausdrücke und können als Datei mit der Endung *.rex gespeichert werden.
  • Dateien mit der Endung *.dic; dieses Format ist in Osteuropa verbreitet; die Syntax der Regeln ist einfach, dadurch kann die Datei Tausende von Regeln enthalten.

Die Dateien für die Aussprache-Korrektur werden im Verzeichnis Dateien\Balabolka (bzw. Eigene Dokumente\Balabolka bei Windows XP) gespeichert. Wenn eine Korrektur-Liste benutzt wird, wird während des Vorlesens der gesamte Satz farbig markiert; andernfalls wird jeweils das aktuelle Wort markiert.

Anmerkung. In der portablen Version sind die Dateien für die Aussprache-Korrektur im Unterverzeichnis Dictionaries.

Beim Bearbeiten der Aussprache-Korrektur-Liste ist es zweckmäßig sich anzuschauen, wie der Text durch die Ausprache-Korrektur-Vorgaben verändert wird. Siehe: "Optionen|Aussprache-Korrektur|Text mit Aussprache-Korrektur zeigen".

* Balabolka: das ist russisch und bedeutet "Schwätzer".

WWW: balabolka.site

E-mail: crossa@list.ru

© 2006-2020 Ilya Morozov


Stimmen

Es gibt zwei SAPI Versionen (SAPI 4 und SAPI 5), die nicht austauschbar sind:

SAPI 4 (Microsoft Speech API 4.0)

All voices for SAPI 4 became obsolete; they are not recommended for installing anymore. Use the fresh versions of speech engines.

SAPI 5 (Microsoft Speech API 5.x)

RHVoice - freier und Open-Source-Sprachsynthesizer (unterstützt Englisch, Esperanto, Georgisch, Kirgisisch, Portugiesisch, Russisch, Tatarisch und Ukrainisch):

  • RHVoice

Um eine bessere Sprachqualität zu erhalten, können Sie Stimmen von Acapela Group, Cepstral oder IVONA kaufen. Das sind TTS-Maschinen einer neuen Generation. Aufgrund einer riesigen Sprach-Datenbank haben sie eine ausgezeichnete Sprachausgabequalität.

Kommerzielle Stimmen mit hoher Qualität:

  • Acapela Group (demo)
  • Alfanum (demo)
  • Cepstral (demo)
  • IVONA (demo)
  • Nuance/Cerence (demo)
  • ReadSpeaker (demo)

Microsoft Speech Platform

Die "Microsoft Speech Platform" ermöglicht Entwicklern das Erstellen und Bereitstellen von Text-to-Speech-Anwendungen. Die "Microsoft Speech Platform" besteht aus einer Runtime und einer Runtime für Sprachen (Maschinen für die Spracherkennung und Text-to-speech). Es gibt separate Sprachen-Runtimes für die Spracherkennung und Sprachsynthese. Die Version der Sprachen-Runtime muss mit der Version der Speech Platform übereinstimmen, die Sie installiert haben.

Befolgen Sie die folgenden Schritte, um die "Microsoft Speech Platform" zu installieren:

  1. Laden Sie die "Speech Platform Runtime" runter und installieren diese (die Datei "x86_SpeechPlatformRuntime\SpeechPlatformRuntime.msi").
  2. Laden Sie die "Runtime Sprachen" zur Verwendung mit der "Speech Platform" runter und installieren Sie diese (der Dateiname hat 'MSSpeech_TTS_' am Anfang).

Die Microsoft Speech Platform (Version 11.0) bietet Unterstützung für 26 Sprachen für die Sprachsynthese. XML-Tags können sowohl für SAPI 5 und die Speech Platform genutzt werden.


Befehlszeile

Balabolka akzeptiert folgende Parameter in der Befehlszeile:

balabolka.exe [-Optionen] [Dateiname] [Audio-Datei] [Sprecher]

Der Parameter Sprecher muss anschließend bestimmt werden:

Sprecher_Name [rGeschwindigkeit] [pStimmhöhe]

Dateiname
öffnet die Datei

-c
Zwischenablage vorlesen

-c Sprecher
wählt den Sprecher und Zwischenablage vorlesen

-m
minimiert anwenden

-r Dateiname
öffnet die Datei und liest den Text von Anfang laut vor

-r Dateiname Sprecher
öffnet eine Datei, wählt den Sprecher und liest den Text laut vor

-s Dateiname Audio-Datei
öffnet die Datei und macht von dem Text eine Aufnahme als Audio-Datei (WAV, MP3, MP4, OGG oder WMA)

-s Dateiname Audio-Datei Sprecher
öffnet eine Datei, wählt den Sprecher und liest den Text auf eine Audio-Datei

-q
nach dem Vorlesen beenden

-rm Dateiname
minimiert anwenden und gewählte Datei vorlesen

-rq Dateiname
gewählte Datei vorlesen und anschließend beenden

Zum Beispiel:

balabolka.exe Buch.txt

balabolka.exe Buch.txt "Cepstral Katrin"

balabolka.exe -rmq Buch.txt

balabolka.exe -sq "c:\Meine Bücher\Buch.txt" "c:\Meine Dateien\Buch.wav"

balabolka.exe -s "c:\Meine Bücher\Buch.txt" "c:\Meine Dateien\Buch.wav" Anna

balabolka.exe -r "c:\Meine Bücher\Buch.txt" Peter r180 p85

balabolka.exe -c "VW Kate"

Der Name des Sprechers sollte nur aus einem Wort bestehen; z.B.: Stefan. Das Programm wird den passenden Namen aus der Liste von Stimmen auswählen (SAPI 5 und SAPI 4).

Wenn es notwendig ist, nicht den Namen einer Text-Datei, sondern eine Textzeile zu definieren, müssen die Optionen eine speziellen Modifikator enthalten:

-n [text_zeile]
dieser Parameter bedeutet, dass die Befehlszeile eine Textzeile enthält anstelle eines Datei-Namens

Zum Beispiel:

balabolka.exe -n "Textbeispiel."

balabolka.exe -nr "Das Programm wird diesen Text lesen." Klaus

balabolka.exe -snq "Dieser Text wird als Audio-Datei gespeichert." "c:\Meine Dateien\Buch.mp3"


Rechtschreibprüfung

Balabolka implementiert das Modul Common Speller API (CSAPI) für die Rechtschreibprüfung. CSAPI ist für die Verwendung in allen Microsoft Anwendungen, die eine Rechtschreibprüfung einschließen, entworfen. CSAPI wird gegenwärtig von vielen Anbietern geliefert und es wird eingesetzt in Microsoft Office 97/2000 und vielen anderen Anwendungen. CSAPI wird nicht als Teil des Balabolka Installationspakets mitgeliefert, aber wenn Sie Microsoft Office installiert haben, wird Balabolka automatisch das Vorhandensein von CSAPI erkennen und nutzen.

Im Fenster, in dem Sie den Text bearbeiten können, können Sie das Rechtschreibprüfungsmenü benutzen. Wenn Sie einen Rechtsklick auf ein markiertes Wort machen, erscheint ein Menü, in welchem Sie aus einer Liste von Vorschlägen die korrekte Schreibweise des Wortes wählen können. Wenn es im Wörterbuch keine Vorschläge für die korrekte Schreibweise des falsch geschriebenen Wortes gibt, werden auch keine Vorschläge im Popup-Menü aufgelistet.

Es ist auch möglich, den Text zu kontrolieren mithilfe der Rechtschreibungs-Dialogbox (klicken Sie den Hauptmenü-Eintrag "Text | Rechtschreibprüfung". Hier ist die Beschreibung der Rechtschreibungs-Dialogbox-Buttons:

  • Ersetzen - ersetzt das aktuelle Wort durch das korrekte Wort aus der Liste der Vorschläge.
  • Alles ändern - ersetzt alle Vorkommen des ausgewählten Wortes in der Beschreibung durch das korrekte Wort aus der Liste der Vorschläge.
  • Überspringen - überspringt das aktuelle Wort, ohne es zu ändern, und geht zum nächsten falsch geschriebenen Wort.
  • Alles überspringen - überspringt alle Vorkommnisse des aktuellen Wortes, ohne etwas zu ändern, und geht zum nächsten falsch geschriebenen Wort. Dieses Wort wird dann während der gesamten aktuellen Balabolka-Sitzung als korrekt geschrieben angesehen.
  • Hinzufügen - fügt das aktuelle Wort dem Anwenderwörterbuch hinzu.

Ein "Anwenderwörterbuch" ist eine Datei mit einer Sammlung von Wörtern in Textformat, es hat die Dateibezeichnung *.dic. Die Hauptbedeutung für ein Anwenderwörterbuch ist es, dem Anwender zu ermöglichen, gebräuchliche Wörter für die Rechtschreibprüfung hinzuzufügen. Microsoft Office 97/2000 hat das Anwenderwörterbuch hier: c:\Programme\Gemeinsame Dateien\Microsoft Shared\Proof\custom.dic.

Balabolka erlaubt die Auswahl von zwei Sprachen für die Rechtschreibprüfung (Auswahlbox Zweite Sprache). In diesem Fall ist die Rechtschreibungs-Dialogbox deaktiviert; Sie können nur das Rechtschreibprüfungsmenü benutzen.

Seit der Version 1.29 unterstützt Balabolka Hunspell (hunspell.github.io). Hunspell ist eine Software zur Rechtschreibprüfung sowie ein morphologischer Analysator für Sprachen mit großer Morphologie und komplexer Wortkomposition. Hunspell wird unter anderem eingesetzt in OpenOffice.org und Mozilla Firefox.

Balabolka bietet für Hunspell die gleiche Funktionalität wie für CSAPI.

The application allows to use the spell checking built in operating system. The Spell Checking API is available beginning with the Windows 8.


Suchen und Ersetzen von Text

Das Programm ermöglicht es, im aktuellen Dokument nach Text zu suchen und diesen durch einen anderen Text zu ersetzen. Die meisten Sonderzeichen aus Microsoft Word werden für die nicht druckenden Zeichen unterstützt.

^p
Absatzmarke
^t
Tabstoppzeichen
^nnn
ASCII-Zeichen (wobei nnn der Zeichencode ist)
^0 nnn
ANSI-Zeichen (wobei 0 Null und nnn der Zeichencode ist)
^U nnnnn
Unicode-Zeichen (wobei nnnnn der Zeichencode ist)
^+
Geviertstrich ( — )
^=
Gedankenstrich ( – )
^^
Caret-Zeichen
^s
Geschütztes Leerzeichen
^?
Irgendein Zeichen (nur im Feld Suchen nach)
^#
Irgendeine Zahl (nur im Feld Suchen nach)
^$
Irgendein Buchstabe (nur im Feld Suchen nach)
^c
Inhalt der Zwischenablage von Microsoft Windows (nur im Feld Ersetzen durch)
^&
Inhalt des Feldes Suchen nach (nur im Feld Ersetzen durch)

Diese Sonderzeichen sind abhängig von der Groß- und Kleinschreibung.


Häufig gestellte Fragen

Ich erhalte die Fehlermeldung "OLE error 80045042". Was ist damit gemeint?

Diese Meldung bedeutet: "Der XML-Parser versagte aufgrund falscher Syntax." Sie müssen die Syntax der XML-Tags innerhalb des Textes überprüfen. Es kommt vor, dass etwas im Text wie der Beginn von einem XML-Tag aussieht und dadurch SAPI verwirrt. Wenn Sie keine XML-Tags benutzen wollen, entfernen Sie die Symbole "<" und ">" aus dem Text (oder ersetzen Sie diese durch die Bezeichnungen "kleiner als" und "größer als").

Wie kann ich SAPI 4 erhalten?

Um die SAPI-4-Stimmen einsetzen zu können, müssen Sie die Microsoft-Speech-API-Datei (824 KB) herunterladen und installieren. Außerdem können Sie das Microsoft-Speech-Control-Panel (840 KB) herunterladen und installieren. In Ihrer Systemsteuerung werden Sie dann ein neues Icon vorfinden, über welches Sie eine Auflistung aller installierten systemgerechten Text-to-Speech-Engines ansehen und nach Ihren Bedürfnissen Einstellungen vornehmen können.

Wie kann ich SAPI 5 erhalten?

In Windows XP (und späteren Versionen) ist SAPI 5 bereits enthalten.

Wie finde ich heraus, welche Text-in-Sprache-Stimmen auf meinem Computer installiert sind?

Sie können alle auf Ihrem Computer verfügbaren Stimmen sehen, wenn Sie diesem Pfad folgen: Systemsteuerung -> Text-in-Sprache -> Stimmenauswahl.

Der Sprecher liest immer "Leerzeichen", wenn der Text ein geschütztes Leerzeichen (ALT+0160) enthält. Wie kann ich das verhindern?

Das Programm kann während des Vorlesens geschützte Leerzeichen automatisch durch übliche Leerzeichen ersetzen. Wählen Sie im Hauptmenü "Optionen | Einstellungen" und aktivieren Sie im Fenster "Einstellungen" (Karteireiter "Lesen") die Option Beim Vorlesen Zeichen ignorieren. Fügen Sie zu der Liste der zu ignorierenden Zeichen ein geschütztes Leerzeichen hinzu: Dazu müssen Sie die Taste ALT drücken und halten und "0160" auf dem Ziffernblock eintippen.

Ich öffne eine DjVu-Datei, aber das Programm zeigt keinen Text. Was war falsch?

DjVu-Format wurde entwickelt, um gescannte Dokumente zu speichern. Eine DjVu-Datei enthält Bilder von Buchseiten, Zeitschriftenseiten usw. Außerdem kann DjVu eine Schicht von OCR-Text enthalten.

Balabolka kann nur Daten von einer DjVu-Text-Schicht extrahieren. Wenn keine Text-Schicht vorhanden ist, müssen Sie ein Text-Erkennungs-System benutzen (z.B. FineReader), um dennoch Text zu extrahieren.

Mein Computer läuft mit der 64-bit Windows-Version. Ich habe das 64-bit Runtime-Paket für Microsoft Speech Platform und die deutsche Stimme Hedda installiert. Aber die Liste der verfügbaren Stimmen ist noch immer leer. Woran liegt das?

Balabolka ist eine 32-bit Anwendung. Sie müssen deshalb auch das 32-bit Runtime-Paket für Microsoft Speech Platform installieren.

Wie kann ich Gedankenstriche am Anfang von Absätzen entfernen?

Sie müssen den Hauptmenü-Punkt "Bearbeiten | Ersetzen" benutzen. Schreiben Sie ^p— in das Feld Suchen nach und ^p in das Feld Ersetzen durch. Das Programm erlaubt es, die meisten Spezial-Codes von Microsoft Word zu benutzen:

^p
Absatzmarke
^t
Tabstoppzeichen
^nnn
ASCII-Zeichen (wobei nnn der Zeichencode ist)
^0 nnn
ANSI-Zeichen (wobei 0 Null und nnn der Zeichencode ist)
^U nnnnn
Unicode-Zeichen (wobei nnnnn der Zeichencode ist)
^+
Geviertstrich ( — )
^=
Gedankenstrich ( – )
^^
Caret-Zeichen
^s
Geschütztes Leerzeichen
^?
Irgendein Zeichen (nur im Feld Suchen nach)
^#
Irgendeine Zahl (nur im Feld Suchen nach)
^$
Irgendein Buchstabe (nur im Feld Suchen nach)
^c
Inhalt der Zwischenablage von Microsoft Windows (nur im Feld Ersetzen durch)
^&
Inhalt des Feldes Suchen nach (nur im Feld Ersetzen durch)

Was ist Google Text-To-Speech?

In Google "Übersetzer" können Sie die Taste "Anhören" finden, welche es ermöglicht, Text in Sprache umzuwandeln. Nach dem Drücken der Taste beginnt der Browser mit dem Runterladen der MP3-Datei. Der Dienst unterstützt nur das Umwandeln in Sprache von Text, der nicht mehr als 100 Zeichen hat. Balabolka ermöglicht es, großen Text in kleine Teile zu unterteilen, für jedes Teil eine Audio-Datei zu erstellen und anschließend zusammenzufügen (WAV, MP3 und OGG Formate werden unterstützt).

Ich verwende eSpeak für das Konvertieren von Untertiteln in Audio-Dateien. Aber die fertige Audio-Datei enthält Sprache ohne Pausen. Wo ist ein Problem?

Ich empfehle mit Nachdruck eSpeak nicht zum Konvertieren von Untertiteln zu verwenden. Diese Stimmen unterstützen nicht den XML tag "silence"; das gleiche Problem haben alte Versionen von einigen anderen Stimmen. Es wird empfohlen, die neuesten Versionen kommerzieller Software zu benutzen (Cepstral, CereProc, IVONA, etc.).

Ich bin nicht damit zufrieden, wie Balabolka Text aus PDF-Dateien extrahiert. Gibt es einen anderen Weg für die Verarbeitung von PDF?

Der Prozess der Text-Extraktion von PDF-Dateien ist ziemlich kompliziert, weil PDF-Dateien formatierten Text enthalten. Sie können auch ein externes Befehlszeilen-Dienstprogramm für die Text-Extraktion verwenden: zum Beispiel das Programm pdftotext.exe von dem Xpdf-Projekt. Kopieren Sie pdftotext.exe in den Unterordner "utils" im Ordner von Balabolka, wählen Sie im Hauptmenü-Punkt "Optionen | Text-Import" die Registerkarte "Benutzerdefinierter Text-Import" und drücken Sie die Schaltfläche "Hinzufügen". Definieren Sie den Befehl für die Verwendung von pdftotext.exe:

%BFolder%\utils\pdftotext.exe -q -nopgbrk -enc UTF-8 %Input% %Output%

Definieren Sie den Namen des Konverters (z.B. "Xpdf-Konverter"), die Datei-Erweiterung ("PDF") und die Ausgabe-Kodierung ("UTF-8"). Nach der Aktivierung von Anstelle des Standard-Extraktionsverfahrens für diesen Dateityp verwenden wird das Programm in der Lage sein, das externe Dienstprogramm für die Text-Extraktion von PDF-Dateien zu verwenden.

Was ist Spritz-Reader?

Spritz ist eine neue Technologie für "Speed-Reading" (Schnelles Lesen). Es ermöglicht Ihnen, die Lesegeschwindigkeit von 100 bis auf 1000 Wörter pro Minute zu beschleunigen. Beim üblichen Lesen liegt die am meisten Zeit beanspruchende Tätigkeit vorwiegend in den Augenbewegungen von Wort zu Wort und von Satz zu Satz. Spritz positioniert Wörter an einer Stelle auf dem Bildschirm, wo Sie das Wort erkennen können, ohne die Augen bewegen zu müssen.

Windows 10 hat die neuen Stimmen Microsoft Katja Mobile und Microsoft Stefan Mobile, aber sie stehen nicht für die Text-to-Speech-Software zur Verfügung. Ist es möglich, die neuen Stimmen freizuschalten?

Standardmäßig ist die Microsoft-Mobil-Stimme für die Verwendung in Text-to-Speech-Software mittels SAPI 5 gesperrt. Sie können die Stimme aber mit einem einfachen Registrierungstrick freischalten. Laden Sie das Archiv, entpacken Sie die Datei in Ihrer Sprache und für Ihre Version des Betriebssystems ("mobile_x86.reg" für 32-bit und "mobile_x64.reg" für 64-bit), klicken Sie mit der rechten Maustaste auf den Namen der Datei und wählen Sie im Kontextmenü den Punkt "Zusammenführen". Die Microsoft-Mobil-Stimme wird in der Liste der verfügbaren Stimmen in Balabolka erscheinen.

Kann ich die erste Textzeile als Name der Audiodatei benutzen (beispielsweise "01 Kapitel Eins.mp3", "02 Kapitel Zwei.mp3")?

Schreiben Sie %FirstLine% in die "Name der Ausgabe-Datei"-Box im Fenster "Splitten und in Audio-Dateien umwandeln". Die Anwendung wird diese Variable durch die erste Zeile eines jeden Textteils ersetzen.

Can I use media files generated with Balabolka in YouTube videos?

Balabolka is freeware, so you may create audio files for free. But if you use the commercial voices, you need to contact the developers of the voice and purchase the license for commercial use/audio broadcast. The audio distribution license will allow you to use speech in YouTube videos.

For example, the information from the Cepstral web-site: "Cepstral Personal voices are for personal use only and are NOT licensed for audio distribution. This means the audio you create is for your use only and cannot be shared with others or used in videos, presentations, or webpages. If you are interested in an audio distribution license, please contact sales."


Ersetzungslisten benutzen

Tafel der Wörterbücher

Das Programm bietet die Möglichkeit, spezielle Ersetzungslisten ("Wörterbücher") zur Aussprache-Korrektur zu verwenden. Dies sind Textdateien, in welchen jede Zeile eine Ersetzungs-Regel enthält. Regeln können reguläre Ausdrücke (Dateinamen mit der Endung *.rex) oder Muster (Dateinamen mit der Endung *.dic) sein.

Wenn der Benutzer das Programm veranlasst, den Text vorzulesen, prüft Balabolka anhand des Wörterbuchs, welche Wörter im Text eine Aussprache-Korrektur benötigen, und wendet die entsprechende Ersetzungs-Regel aus dem Wörterbuch an. Der veränderte Text wird in die Zwischenablage der Computerstimme gesendet und die Stimme liest den Text laut vor.

Um die Tafel der Wörterbücher, die von dem Programm verwendet werden, zu sehen, wählen Sie den Menüpunkt "Ansicht | Zeige | Aussprache-Korrektur-Liste auswählen" oder drücken Sie F11. Auf der rechten Seite des Hauptfensters wird die Liste der Dateinamen angezeigt; sie ist in zwei Bereiche unterteilt:

  • Oberer Bereich - Dateien mit Ersetzungslisten;
  • Unterer Bereich - Dateien mit Listen von Homographen (Heteronyme).

Verschiedene Computer-Stimmen können verschiedene Ersetzungslisten benutzen. Der Anwender kann die nötigen Dateien aus der Liste auswählen.

Um ein neues Wörterbuch zu erstellen, machen Sie einen Rechtsklick auf die Wörterbuch-Tafel, wählen Sie "Neu" im Kontextmenü und geben Sie dann den Dateinamen des neuen Wörterbuches ein. Die Datei wird auf Ihrer Festplatte erzeugt und ihr Name wird in der Liste der Wörterbuch-Tafel erscheinen.

Wenn der Anwender Veränderungen in der Ersetzungsliste machen will, muss er die entsprechende Datei aus der Liste auswählen und auf "Bearbeiten" klicken. Dann öffnet sich ein Fenster zur Berabeitung der Ersetzungsliste. Um eine neue Ersetzungsregel hinzuzufügen, ist es notwendig, die Felder "Lies dies:" und "wie dies:" auszufüllen und dann auf "Hinzufügen" zu klicken. Nachdem der Bearbeitungs-Prozess beendet ist, klicken Sie auf "Speichern" und schließen Sie den Editor.

Allgemeine Liste der Regeln

Wenn mehrere Dateinamen aus der Liste ausgewählt wurden, werden die Regeln aus diesen Wörterbüchern von dem Programm automatisch im Arbeitsspeicher des Computers in einer Liste zusammengeführt. Um diese Liste anzuschauen, machen Sie einen Rechtsklick auf die Wörterbuch-Tafel und wählen Sie "Liste anzeigen" von dem Kontextmenü.

Wenn die Regeln verschiedener Dateien in einer gemeinsamen Liste vereint werden, passiert dies folgendermaßen:

  • Regeln von *.rex-Dateien werden nacheinander hinzugefügt, so wie sie sich innerhalb des Vokabulars befinden; die Dateien werden in alphabetischer Reihenfolge verarbeitet.
  • Alle Regeln der *.dic-Dateien werden in der Weise sortiert, dass zuerst die Regeln mit Beachtung der Groß- und Kleinschreibung kommen, dann die Regeln ohne Beachtung der Groß- und Kleinschreibung, dann werden die Regeln erneut sortiert nach der Länge der Muster - solche mit den längsten Symbol-Mustern werden weiter oben platziert.

Die Reihenfolge der Regeln in der Liste ist wichtig in Fällen, wo mehrere Regeln auf das gleiche Wort angewandt werden können. Balabolka führt die Ersetzung nacheinander aus, d.h. die zweite Regel wird auf den Text angewandt, der bereits durch die erste Regel in der Liste geändert wurde. In diesem Fall ist die Ordnung der Regeln wichtig.

Die Regeln von Dateien mit der Endung *.rex werden zuerst auf den Text angewandt. Um nach vorgenommenen Änderungen in Ersetzungslisten das Ergebnis der Anwendung der geänderten Regeln zu überprüfen, können Sie die Optionen vom Hauptmenü "Optionen | Aussprache-Korrektur | Text mit Aussprache-Korrektur zeigen" und "Optionen | Aussprache-Korrektur | Statistik der Aussprache-Korrektur" benutzen.

Zusätzliche Werkzeuge

Um ein Paar von Regeln zu finden, die sich auf den gleichen Text auswirken, müssen Sie den Menüpunkt "Optionen | Aussprache-Korrektur | Suche Regel-Paare" wählen. Das ermöglicht Ihnen, Regeln zu finden, die niemals benutzt werden, weil eine andere Regel bereits diesen Ausdruck im Text verändert hat.

Am häufigsten ist eine Korrektur notwendig für die Aussprache von Namen von Leuten, von Plätzen, von Organisationen, Spitznamen von Tieren u.s.w. Die Suche nach solchen Wörtern im aktuellen Dokument kann erleichtert werden mithilfe des Menüpunktes "Optionen | Aussprache-Korrektur | Suche nach Namen im Text". Balabolka ermöglicht es, drei Listen mit gefundenen Wörtern zu sehen:

  • Namen (Wörter, die immer mit einem großen Anfangsbuchstaben im aktuellen Dokument vorkommen);
  • alle Wörter mit großem Anfangsbuchstaben;
  • alle Wörter, die im Text des Dokumentes gefunden wurden.

Wenn Sie sich durch die Liste der Wörter bewegen, wird das Programm das aktuelle Wort laut vorlesen. Wenn ein Wort fehlerhaft vorgelesen wird, können Sie die Aussprache korrigieren, indem Sie dem Wörterbuch eine neue Regel hinzufügen. Die Liste der gefundenen Namen kann entweder alphabetisch oder nach der Häufigkeit des Vorkommens des Wortes im Text sortiert werden. Sie können auch verhindern, dass Wörter, die nur ein paar Mal im Text erscheinen, gezeigt werden; dies kann die Überprüfung der Liste mit Namen aus dem aktuellen Dokument beschleunigen.

Profile

Aktuelle Einstellungen der Wörterbuch-Tafel können in der Form von "Profilen" gespeichert werden. Um Profile zu erstellen und zu bearbeiten, benutzen Sie den Menüpunkt "Optionen | Aussprache-Korrektur | Profile".


REX-Dateien mit Aussprache-Korrekturen

In jeder Zeile bezeichnet die rechte Buchstabenfolge die verbesserte phonetische Aussprache von der linken Buchstabenfolge. Dabei ist zu beachten, dass die Ersetzung in der Reihenfolge der Auflistung erfolgt. Beispiel:

Ratte=Maus
Maus=Hamster

"Ratte" wird "Hamster". Das war vielleicht nicht beabsichtigt.

Kommentar-Zeilen beginnen mit # und werden ignoriert.

Die linke Buchstabenfolge kann einen Regulären-Ausdruck enthalten. Reguläre Ausdrücke machen keinen Unterschied bei der Groß- oder Kleinschreibung. Wenn es jedoch für die Aussprache einer bestimmten Buchstabenfolge wichtig ist, die Groß- oder Kleinschreibung zu berücksichtigen, muss das Zeichen "@" an den Anfang der Zeile gesetzt werden; zum Beispiel:

@DOT=Department of Transport

Die folgende Übersicht zeigt, aus welchen Bestandteilen Sie einen regulären Ausdruck zusammensetzen können.

Bestandteil | Beispiel | Beschreibung
 | aus | findet "aus", und zwar in "aus", "Haus", "auserlesen" und "Banause".
^ | ^aus | findet "aus" am Anfang des zu durchsuchenden Wertes, also in "aus" und "auserlesen", sofern das die ersten Wörter im Wert sind.
$ | aus$ | findet "aus" am Ende des zu durchsuchenden Wertes, also in "aus" und "Haus", sofern das die letzten Wörter im Wert sind.
* | aus* | findet "au", "aus", "auss" und "aussssss", also das letzte Zeichen vor dem Stern 0 oder beliebig oft hintereinander wiederholt.
+ | aus+ | findet "auss" und "aussssss", also das letzte Zeichen vor dem Plus-Zeichen mindestens einmal oder beliebig oft hintereinander wiederholt.
. | .aus | findet "Haus" und "Maus", also ein beliebiges Zeichen an einer bestimmten Stelle.
.+ | .+aus | findet "Haus" und "Kehraus", also eine beliebige Zeichenfolge an einer bestimmten Stelle. Zusammensetzung aus beliebiges Zeichen und beliebig viele davon, jedoch mindestens eines.
\b | \baus\b | findet "aus" als einzelnes Wort. \b bedeutet eine Wortgrenze.
\B | \Baus\B | findet "aus" nur innerhalb von Wörtern, z.B. in "hausen" oder "Totalausfall". \B bedeutet keine Wortgrenze.
\d | \d.+\B | findet eine beliebige ganze Zahl. \d bedeutet eine Ziffer (0 bis 9)
\D | \D.+ | findet "-fach" in "3-fach", also keine Ziffer.
\f | \f | findet ein Seitenvorschubzeichen.
\n | \n | findet ein Zeilenvorschub-Zeichen.
\r | \r | findet ein Wagenrücklaufzeichen.
\t | \t | findet ein Tabulator-Zeichen.
\v | \v | findet ein vertikales Tabulator-Zeichen.
\s | \s | findet jede Art von white space, also \f\n\t\v und Leerzeichen.
\S | \S.+ | findet ein beliebiges einzelnes Zeichen, das kein white space ist, also kein \f\n\t\v und kein Leerzeichen.
\w | \w.+ | findet alle alphanumerischen Zeichen und den Unterstrich (typische Bedingung etwa für programmiersprachengerechte selbstvergebene Namen).
\W | \W | findet ein Zeichen, das nicht alphanumerisch und auch kein Unterstrich ist (typisch zum Suchen nach illegalen Zeichen bei programmiersprachengerechten selbstvergebenen Namen).
( ) | (aus) | findet "aus" und merkt es sich intern. Die Zeichenkette innerhalb zweier runder Klammern auf der linken Seite eines regulären Ausdrucks kann durch das Zeichen $N auf der rechten Seite wiedergegeben werden, wobei N die N-te eingeklammerte Zeichenfolge im regulären Ausdruck ist.
\xN | \x41 | entspricht N, wobei N ein hexadezimaler Wert ist. Hexadezimal-Werte müssen genau zwei Ziffern lang sein. Zum Beispiel: "\x41" entspricht "A". Ermöglicht es, ASCII-Codes in regulären Ausdrücken zu verwenden.
\x{N} | \x{00dc} | entspricht N, wobei N ein hexadezimaler Wert ist. Hexadezimal-Werte müssen genau vier Ziffern lang sein. Zum Beispiel: "\x{00dc}" entspricht "Ü". Ermöglicht es, Unicode-Codes in regulären Ausdrücken zu verwenden.

Balabolka unterstützt die speziellen Operatoren für die Textumwandlung in Groß- oder Kleinbuchstaben.

Operator | Beschreibung
\U | konvertiert alle folgenden Buchstaben bis zum nächsten \L oder \E in Großbuchstaben.
\L | konvertiert alle folgenden Buchstaben bis zum nächsten \U oder \E in Kleinbuchstaben.
\E | deaktiviert die Groß-Klein-Konvertierung.
\u | konvertiert den nächsten Buchstaben in einen Großbuchstaben.
\l | konvertiert den nächsten Buchstaben in einen Kleinbuchstaben.

Z.B. der Ausdruck:

(test)=\U$1\E

wird "test" in "TEST" umwandeln.


DIC-Dateien mit Aussprache-Korrekturen

In jeder Zeile ist die zweite Buchstabenfolge die phonetische Aussprache-Korrektur der ersten Buchstabenfolge. Kommentar-Zeilen beginnen mit der Raute (#) und werden ignoriert.

Die Austausch-Muster machen keinen Unterschied bei der Groß- oder Kleinschreibung. Wenn es jedoch für die Aussprache einer bestimmten Buchstabenfolge wichtig ist, die Groß- oder Kleinschreibung zu berücksichtigen, muss das Zeichen "$" an den Anfang der Zeile gesetzt werden; zum Beispiel:

$DOT=Department of Transport

Üblicherweise steht die linke Buchstabenfolge für ein ganzes Wort (oder einige Wörter). Wenn weitere Buchstaben vor oder nach der angegebenen Buchstabenfolge vorkommen können, wird das Symbol "*" benutzt. Zum Beispiel:

*stalt*=schtalt

Dieses Muster findet Wörter wie "Gestalt", "Veranstaltung", "verunstalten" u.s.w.

Zwei der speziellen Symbole ("#", "*", "=", "$") in Folge kennzeichnen ein einziges Zeichen, zum Beispiel:

**=Asterix


Homografe

Einige Wörter, genannt Homografe, verursachen die vielleicht größten Probleme in Sprachausgabesystemen. Homografe werden gleich geschrieben, unterscheiden sich aber in ihrer Bedeutung und gewöhnlich auch in ihrer Aussprache. Homografe können unterschiedliche Betonung haben, wie z.B.:

umfahren/umfahren, umstellen/umstellen, übersetzen/übersetzen, modern/modern, Tenor/Tenor

Homografe können unterschiedliche Vokallänge haben. Der Vokal "e" in "Weg/weg" wird z.B. verschieden lang ausgesprochen in den Sätzen "Es war ein langer Weg bis zum Ziel" und "Das Ziel war noch weit weg". Einige Wörter, wie "sucht/Sucht" haben verschiedene Aussprache, wenn sie als Verb oder Nomen benutzt werden (Er sucht einen Weg, um von seiner Sucht wegzukommen). Bei derartigen Wörtern ist Information über ihre Bedeutung notwendig, um die korrekte Aussprache zu finden. Weitere Beispiele für unterschiedliche Vokallänge (lang/kurz):

flucht/Flucht
rast/Rast
pult/Pult
kosten/Kosten
buchten/Buchten
Lache/lache
Flugs/flugs
Fort/fort

Einzelne Buchstabenfolgen können je nach Bedeutung unterschiedlich ausgesprochen werden, z.B. "chs" in Dachs. Z.B.: Der Dachs ist ein Tier. Der Hausbesitzer veranlasste die Sanierung des Dachs.

Zusammengesetzte Wörter können auch problematisch sein:

Versendung: Ver-sendung/Vers-endung
Wachstube: Wach-stube/Wachs-tube
Spielende: Spiel-ende/Spie-lende

Für die korrekte Aussprache müssen derartige Wörter in einer besonderen Ausnahmewörterlisten (Dateien mit der Endung *.hmg, z.B. German.hmg) aufgeführt werden. Jede Zeile enthält zwei alternative phonetische Aussprachemöglichkeiten, die durch Komma getrennt werden. Zum Beispiel:

rasten=rasten,raasten

Die Aussprachemuster sind unabhängig von der Groß- und Kleinschreibung. Wenn Die Groß- oder Kleinschreibung jedoch beachtet werden soll, muss das Zeichen "$" an den Anfang der Zeile gesetzt werden.

Im Programm Balabolka kann man eine Liste mit Ausdrücken für jeden Homografen verwenden; diese Ausdrücke werden während der Suche nach Homografen automatisch ersetzt (der Hauptmenü-Posten "Text | Suche Homografe"). Zum Beispiel:

rasten=rasten,raasten

Spaziergänger rasten=rasten
Autos rasten=raasten

Wenn bei dem Ausdruck die Groß- und Kleinschreibung wichtig ist, müssen Sie das Zeichen "$" an den Anfang des Textes setzen:

$Nice=Niis,Nais

$city Nice=Niis
nice to have=nais

Das Platzhalter-Zeichen "*" kann für ein beliebiges Wort oder mehrere Buchstaben innerhalb eines Wortes benutzt werden (am Anfang oder Ende eines Wortes):

rasten=rasten,raasten

sie rasten um die Wette=raasten
* rasten um die Wette=raasten
sie rast* um * Wette=raasten


Control Tags (SAPI 4)

This section describes the text-to-speech control tags that can be embedded in the source text to improve the prosody of text-to-speech translation:

  • Syntax
  • Conventions
  • Chr
  • Com
  • Ctx (some speech engines may not support this tag)
  • Dem (new for SAPI 4.0 -- some speech engines may not support this tag)
  • Emp (some speech engines may not support this tag)
  • Eng
  • Mrk
  • Pau
  • Pit
  • Pra (new for SAPI 4.0 -- some speech engines may not support this tag)
  • Prn (some speech engines may not support this tag)
  • Pro (some speech engines may not support this tag)
  • Prt (some speech engines may not support this tag)
  • RmS (new for SAPI 4.0 -- some speech engines may not support this tag)
  • RmW (new for SAPI 4.0 -- some speech engines may not support this tag)
  • RPit (new for SAPI 4.0 -- some speech engines may not support this tag)
  • RPrn (new for SAPI 4.0 -- some speech engines may not support this tag)
  • RSpd (new for SAPI 4.0 -- some speech engines may not support this tag)
  • Rst (new for SAPI 4.0)
  • Spd
  • Vce (some speech engines may not support this tag)
  • Vol

A text-to-speech engine can usually translate individual words to speech successfully. However, as soon as the engine speaks a sentence, the perceived quality of its translation decreases because the engine cannot correctly synthesize human prosody -- the inflection, accent, and timing of human speech.

The prosody of translated speech can be improved by using text-to-speech control tags to better simulate human speech.

This section describes control tags that you can use to alter the prosody of text translated into speech. All tags are optional except the bookmark (Mrk) tag, which must be supported.

Syntax

Text-to-speech control tags follow these general rules of syntax:

  • All tags begin and end with a backslash character (\).
  • The backslash character is not allowed within a tag.
  • An odd number of backslash characters in tagged text produce undefined behavior in the engine.
  • Tags are case-insensitive. For example, \vce\ is the same as \VCE\.
  • Tags are white-space -- dependent. For example, \Rst\ is not the same as \ Rst \.

To include a backslash character in tagged text, but outside a tag, use a double backslash (\\).

If the application has the tagged text bit on and wishes to speak a filename, such as "c:\windows\system\test.txt", then it should double up the backslashes (e.g., "c:\\windows\\system\\test.txt").

Samples:

  • code\ ctx="e-mail" \ - Should be parsed as an "e-mail" tag.
  • \ctx="e-mail" - Should be ignored since it's an unclosed tag at the end of a document.
  • \\ctx="e-mail"\\ - Speaks "back-slash c t x equals e-mail back-slash"
  • \\\\\\\\ctx="e-mail"\\\\\\\\ - Speaks "backslash backslash backslash backslash c t x equals e-mail backslash backslash backslash backslash"
  • \ctm="e-mail"\ - Ignored because it's an unknown tag.

When the text-to-speech engine encounters a tag it does not understand, the tag is ignored.

Conventions

This section uses the following typographic conventions.

Example | Description
Chr | Bold type indicates speech-inflection keywords.
string | Italic indicates placeholders for information you supply, such as a character or context string.
[[option]] | Double square brackets indicate items that are optional.
[[option...]] | Three dots (an ellipsis) following an item indicate that more items having the same form may appear.
"C" | Quotation marks are required to delimit strings.

Chr

\Chr=string[[,string...]]\

Sets the character of the voice.

Example: \Chr="Angry"\

Parameter | Description
string | String that specifies the characteristics of the voice.

The default characteristic is "Normal," which produces a normal tone of voice. Although the Chr tag is less specific than setting the inflection, stress, attack, and whispering qualities individually, it is easier to use and allows the engine more flexibility and intelligence in its response.

Several characteristics can be specified in the same tag, separated by commas. Depending on its capabilities, an engine may not support all of the characteristics listed here, or it may support additional characteristics. Some common characteristics are the following:

"Angry"
"Business"
"Calm"
"Depressed"
"Excited"
"Falsetto"
"Happy"
"Loud"
"Monotone"
"Perky"
"Quiet"
"Sarcastic"
"Scared"
"Shout"
"Tense"
"Whisper"

Com

\Com=string\

Embeds a comment in the text. Comments are not translated into speech.

Example: \com="This is a comment."\

Parameter | Description
string | Text of the comment.

Ctx

\Ctx=string\
Note: Some speech engines may not support this tag.

Sets the context for the text that follows, which determines how symbols are spoken.

Example: \ctx="Unknown"\

Parameter | Description
string | String that specifies the context.

This parameter can be one of these strings:

Context string | Description
"Address" | Addresses and/or phone numbers
"C" | Code in the C or C++ programming language
"Document" | Text document
"E-Mail" | Electronic mail
"Numbers" | Numbers, dates, times, and so on
"Spreadsheet" | Spreadsheet document
"Unknown" | Context is unknown (default)
"Normal" | Normal/default speech mode.

Dem

\Dem\
Note: Some speech engines may not support this tag.

De-emphasizes the next word.

Emp

\Emp\
Note: Some speech engines may not support this tag.

Emphasizes the next word to be spoken.

Example: the \Emp\truth, the \Emp\whole truth, and nothing \Emp\but the truth.

Eng

\Eng;GUID:command\
\Eng:command\

Embeds an engine-specific command that affects only the engine with the specified globally unique identifier (GUID). Subsequent engine-specific tags for that engine can omit the GUID until an engine-specific tag for a different engine is used.

Parameter | Description
GUID | Globally unique identifier of the engine.
command | Engine-specific command.

Mrk

\Mrk=number\

Indicates a bookmark in the text.

Example: \Mrk=75000\

Parameter | Description
number | Number of the bookmark.

The Mrk tag accepts a decimal representation. Bookmark number zero (\Mrk=0\) is reserved.

Pau

\Pau=number\

Pauses speech for the specified number of milliseconds.

Example: \Pau=1000\

Parameter | Description
number | Number of milliseconds to pause.

Pit

\Pit=number\

Sets the baseline pitch of the text-to-speech mode to the specified value in hertz.

Example: \Pit=90\

Parameter | Description
number | Pitch, in hertz.

The actual pitch fluctuates above and below this baseline.

Pra

\Pra=value\
Note: Some speech engines may not support this tag.

Sets the pitch range.

Parameter | Description
value | Pitch range in Hz.

Prn

\Prn=text=pronunciation\
Note: Some speech engines may not support this tag.

Indicates how to pronounce text by passing the phonetic equivalent to the engine.

Example: \Prn=tomato=tomaato\

Parameter | Description
text | Text to pronounce.
pronunciation | Phonetic equivalent for pronouncing the text.

Using the Prn tag without specifying the word pronunciation (\Prn=text\) will undo the changes to the pronunciation; that is, it will return the word to the original pronunciation.

This tag is valid only for engines that support the International Phonetic Alphabet. The engine should continue to use this pronunciation for the current text-to-speech mode and should store the pronunciation in its lexicon for later use. If a lexicon entry already exists for a particular word, the Prn tag should be ignored for that word.

Pro

\Pro=number\
Note: Some speech engines may not support this tag.

Activates and deactivates prosodic rules, which affect pitch, speaking rate, and volume of words independently of control tags embedded in the text. Prosodic rules are applied by the engine.

Example: \Pro=0\

Parameter | Description
number | Number that indicates whether to activate or deactivate prosodic rules. Setting number to 1, the default, activates prosodic rules. Setting number to 0 deactivates prosodic rules.

Prt

\Prt=string\
Note: Some speech engines may not support this tag.

Indicates the part of speech of the next word.

Example: \prt="Abbr"\

Parameter | Description
string | String that indicates the part of speech.

This parameter can be one of these strings:

String | Description
"Abbr" | Abbreviation
"Adj" | Adjective
"Adv" | Adverb
"Card" | Cardinal number
"Conj" | Conjunction
"Cont" | Contraction
"Det" | Determiner
"Interj" | Interjection
"N" | Noun
"Ord" | Ordinal number
"Prep" | Preposition
"Pron" | Pronoun
"Prop" | Proper noun
"Punct" | Punctuation
"Quant" | Quantifier
"V" | Verb

RmS

\RmS=number\
Note: Some speech engines may not support this tag.

Sets reading mode to spelling out each letter of each word, or turns it off. Not all engines support this tag, so an application can get more consistent results by normalizing the text itself and putting spaces between letters.

Parameter | Description
number | Number that indicates whether to spell out each letter of each word. Setting number to 1 sets reading mode to spelling out each letter of each word. Setting number to 0, the default, turns it off.

RmW

\RmW=number\
Note: Some speech engines may not support this tag.

Sets reading mode to leaving audible pauses between each word, or turns it off. Not all engines support this tag, so an application can get more consistent results by normalizing the text itself and putting periods between words.

Parameter | Description
number | Number that indicates whether to leave audible pauses between each word. Setting number to 1 sets reading mode to leave audible pauses between each word. Setting number to 0, the default, turns it off.

RPit

\RPit=value\
Note: Some speech engines may not support this tag.

Sets the relative pitch.

Parameter | Description
value | Relative pitch. 100 is the default/original for the voice.

RPrn

\RPrn=value\
Note: Some speech engines may not support this tag.

Set the relative pitch range.

Parameter | Description
value | Relative pitch range. 100 is the default/original for the voice.

RSpd

\RSpd=value\
Note: Some speech engines may not support this tag.

Sets the relative speed. 100 is the default/original for the voice.

Parameter | Description
value | Relative speed. 100 is the default/original for the voice.

Rst

\Rst\

Resets the engine to the default settings for the current mode, as though the mode had just been re-created.

Spd

\Spd=number\

Sets the baseline average talking speed of the text-to-speech mode to the specified number of words per minute.

Example: \Spd=120\

Parameter | Description
number | Baseline average talking speed, in words per minute.

Vce

\Vce=charact=value[[,charact=value]]\
Note: Some speech engines may not support this tag.

Instructs the engine to change its speaking voice to one that has the specified characteristics.

Parameter | Description
charact | One of the characteristics listed in the table below.
value | String that specifies the characteristic.

Characteristics are specified in the order of importance. The engine selects a voice that most closely matches the characteristics specified at the beginning of the list.

The charact=value argument can be any of the following:

  • Language=language. Requests the engine speak in the specified language
  • Accent=accent. Requests the engine speak in the specified accent. For example, if language="English" and Accent="French" the engine will speak English with a French accent.
  • Dialect=dialect. Requests the engine speak in the specified dialect
  • Gender=gender. Specifies the gender of the voice: "Male", "Female", or "Neutral".
  • Speaker=speakername. Specifies the name of the voice, or NULL if the name is unimportant
  • Age=age. Specifies the age of the voice, which can be one of the values shown below
  • Style=style. The personality of the voice -- for example: "Business", "Casual", "Computer", "Excited", or "Singsong".
Age string | Description
"Baby" | About 1 year old
"Toddler" | About 3 years old
"Child" | About 6 years old
"Adolescent" | About 14 years old
"Adult" | Between 20 and 60 years old
"Elderly" | Over 60 years old

Vol

\Vol=number\

Sets the baseline speaking volume for the text-to-speech mode.

Example: \Vol=32768\

Parameter | Description
number | Baseline speaking volume.

The volume level is a linear range from 0 for absolute silence to 65535 for the maximum monaural volume. The default is 65535.

If you specify a value greater than 65535, the engine assumes that you want to set the left and right channels separately and converts the value to a double word, using the low word for the left channel and the high word for the right channel. For example, a value of 65536 sets the left channel to the maximum baseline speaking volume and the right channel to the minimum.


XML Tags (SAPI 5)

SAPI 5 synthesis markup is the collection of extensible markup language (XML) tags inserted into text to modify the speech synthesis of that text. These XML tags, which provide functionality such as volume control and word emphasis, are inserted into text. By default, the SAPI XML parser auto-detects XML. In the case of an invalid XML structure, a speak error may be returned by the program.

Every XML element consists of a start tag <Some_tag> and an end tag </Some_tag> with a case-insensitive tag name and contents between these tags. If the element is empty, it has no contents <Some_tag></Some_tag> and the start tag and the end tag might be the same <Some_tag/>.

SAPI text-to-speech (TTS) XML tags fall into several categories.

  • Voice state control
  • Direct item insertion
  • Voice context control
  • Voice selection
  • Custom Pronunciation

Voice state control tags

SAPI TTS XML supports five tags that control the state of the current voice: Volume, Rate, Pitch, Emph, and Spell.

Volume

The Volume tag controls the volume of a voice. The tag can be empty, in which case it applies to all subsequent text, or it can have content, in which case it only applies to that content.

The Volume tag has one required attribute: Level. The value of this attribute should be an integer between zero and one hundred. Values outside of this range will be truncated.

<volume level="50"> This text should be spoken at volume level fifty. <volume level="100"> This text should be spoken at volume level one hundred. </volume> </volume>
<volume level="80"/> All text which follows should be spoken at volume level eighty.

One hundred represents the default volume of a voice. Lower values represent percentages of this default. That is, 50 corresponds to 50% of full volume.

Rate

The Rate tag controls the rate of a voice. The tag can be empty, in which case it applies to all subsequent text, or it can have content, in which case it only applies to that content.

The Rate tag has two attributes, Speed and AbsSpeed, one of which must be present. The value of both of these attributes should be an integer between negative ten and ten. Values outside of this range may be truncated by the engine (but are not truncated by SAPI). The AbsSpeed attribute controls the absolute rate of the voice, so a value of ten always corresponds to a value of ten, a value of five always corresponds to a value of five.

<rate absspeed="5"> This text should be spoken at rate five. <rate absspeed="-5"> This text should be spoken at rate negative five. </rate> </rate>
<rate absspeed="10"/> All text which follows should be spoken at rate ten.

The Speed attribute controls the relative rate of the voice. The absolute value is found by adding each Speed to the current absolute value.

<rate speed="5"> This text should be spoken at rate five. <rate speed="-5"> This text should be spoken at rate zero. </rate> </rate>

Zero represents the default rate of a voice, with positive values being faster and negative values being slower.

Pitch

The Pitch tag controls the pitch of a voice. The tag can be empty, in which case it applies to all subsequent text, or it can have content, in which case it only applies to that content.

The Pitch tag has two attributes, Middle and AbsMiddle, one of which must be present. The value of both of these attributes should be an integer between negative ten and ten. Values outside of this range may be truncated by the engine (but are not truncated by SAPI).

The AbsMiddle attribute controls the absolute pitch of the voice, so a value of ten always corresponds to a value of ten, a value of five always corresponds to a value of five.

<pitch absmiddle="5"> This text should be spoken at pitch five. <pitch absmiddle="-5"> This text should be spoken at pitch negative five. </pitch> </pitch>
<pitch absmiddle="10"/> All text which follows should be spoken at pitch ten.

The Middle attribute controls the relative pitch of the voice. The absolute value is found by adding each Middle to the current absolute value.

<pitch middle="5"> This text should be spoken at pitch five. <pitch middle="-5"> This text should be spoken at pitch zero. </pitch> </pitch>

Zero represents the default middle pitch for a voice, with positive values being higher and negative values being lower.

Emph

The Emph tag instructs the voice to emphasize a word or section of text. The Emph tag cannot be empty. The following word should be emphasized.

<emph> boo </emph>!

The method of emphasis may vary from voice to voice.

Spell

The Spell tag forces the voice to spell out all text, rather than using its default word and sentence breaking rules, normalization rules, and so forth. All characters should be expanded to corresponding words (including punctuation, numbers, and so forth). The Spell tag cannot be empty.

<spell> These words should be spelled out. </spell>
These words should not be spelled out.

Direct item insertion tags

Three tags are supported that applications the ability to insert items directly at some level: Silence, Pron, and Bookmark.

Silence

The Silence tag inserts a specified number of milliseconds of silence into the output audio stream. This tag must be empty, and must have one attribute, Msec.

Five hundred milliseconds of silence <silence msec="500"/> just occurred.

Pron

The Pron tag inserts a specified pronunciation. The voice will process the sequence of phonemes exactly as they are specified. This tag can be empty, or it can have content. If it does have content, it will be interpreted as providing the pronunciation for the enclosed text. That is, the enclosed text will not be processed as it normally would be.

The Pron tag has one attribute, Sym, whose value is a string of white space separated phonemes.

<pron sym="h eh l l ow & w er l l d "/>
<pron sym="h eh l l ow & w er l l d"> hello world </pron>

Bookmark

The Bookmark tag inserts a bookmark event into the output audio stream. Use this event to signal the application when the audio corresponding to the text at the Bookmark tag has been reached. The Bookmark tag must be empty.

The Bookmark tag has one attribute, Mark, whose value is a string. This value can then be used to differentiate between bookmark events (each of which will contain the string value from their corresponding tag).

The application will receive an event here,

<bookmark mark="bookmark_one"/>

and another one here

<bookmark mark="bookmark_two"/>

Voice context control tags

Two tags provide context to the current voice: PartOfSp and Context. Those tags enable the voice to determine how to deal with the text it is processing. With both of these tags, the extent to which voices use the context may vary.

PartOfSp

The PartOfSp tag provides the voice with the part of speech of the enclosed word(s). Use this tag to enable the voice to pronounce a word with multiple pronunciations correctly depending on its part of speech. The PartOfSp tag cannot be empty.

The PartOfSp tag has one attribute, Part, which takes a string corresponding to a SAPI part of speech as its attribute. Only SAPI defined parts of speech are supported: "Unknown", "Noun", "Verb", "Modifier", "Function", "Interjection".

<partofsp part="noun"> A </partofsp> is the first letter of the alphabet.

Did you <partofsp part="verb"> record </partofsp> that <partofsp part="noun"> record </partofsp>?

Context

The Context tag provides the voice with information which the voice may then use to determine how to normalize special items, like dates, numbers, and currency. Use this tag to enable the voice to distinguish between confusable date formats (see the example, below). The Context tag cannot be empty.

The Context tag has one attribute, Id, which takes a string corresponding to the context of the enclosed text. Several contexts are defined by SAPI and are more likely to be recognized by SAPI compliant voices, but any string may be used. See documentation for a particular voice for more details.

<context id="date_mdy"> 03/04/01 </context> should be March fourth, two thousand one.
<context id="date_dmy"> 03/04/01 </context> should be April third, two thousand one.
<context id="date_ymd"> 03/04/01 </context> should be April first, two thousand three.

Voice Selection Tags

There are two tags which can be used (potentially) to change the current voice: Voice and Lang.

Voice

The Voice tag selects a voice based on its attributes, Age, Gender, Language, Name, Vendor, and VendorPreferred. The tag can be empty, in which case it changes the voice for all subsequent text, or it can have content, in which case it only changes the voice for that content.

The Voice tag has two attributes: Required and Optional. The attributes of the current voice are always added as optional attributes when the Voice tag is used. This means that, a voice which is more similar to the current voice will be selected over one which is less similar.

If no voice is found that matches all of the required attributes, no voice change will occur.

The default voice should speak this sentence. <voice required="Gender=Female;Age!=Child"> A female non-child should speak this sentence, if one exists. <voice required="Age=Teen"> A teen should speak this sentence - if a female, non-child teen is present, she will be selected over a male teen, for example. </voice> </voice>

Lang

The Lang tag selects a voice based solely on its Language attribute. The tag can be empty, in which case it changes the voice for all subsequent text; or it can have content, in which case it only changes the voice for that content.

The Lang tag has one attribute, LangId. This attribute should be a LANGID, such as 407 (German), 409 (U.S. English) or 411 (Japanese). Note that these numbers are hexadecimal, but without the typical "0x".

The Lang tag is a shortened version of the Voice tag with the Required attribute containing "Language=xxx". So the following examples should produce exactly the same results:

<voice required="Language=409"> A U.S. English voice should speak this. </voice>
<lang langid="409"> A U.S. English voice should speak this. </lang>

Custom Pronunciation

An alternative to using the <P> tag with the DISP and PRON attributes is to use custom pronunciation. Using custom pronunciation, tags in the form of the following.

<P DISP="disp" PRON="pron">word</P>

can be written as

<P>/disp/word/pron;</P>

More specifically, if you want to recognize the word hello only when it is pronounced as ah and display greeting when recognized, you would normally use something like the following.

<P DISP="greeting" PRON="ah">hello</P>

Using custom pronunciation, the above would translate to the following.

<P>/greeting/hello/ah;</P>


Context Tag Definitions (SAPI 5)

The XML CONTEXT tag specifies the normalization of a block of text. This specification defines the SAPI predefined attributes (ID) for the CONTEXT tag. These IDs are strings. SAPI does not perform any parameter validation on the string passed to the engine, hence, the application can specify engine-specific normalization IDs to the engine. Engine-specific strings begin with the engine vendor's name to avoid confusion between engines.

For example:

<context id="My_Context"> text </context>

The exact implementation of some of these values is dependent on the engine used in SAPI 5. In order to force a certain normalization, application developers can choose to normalize the text, or use another SAPI tag or engine-specific ID. Each context tag can contain more than one string.

For example:

<context id="date_mdy"> 12/21/99 11/21/99 10/21/99 </context>

would be normalized to "December twenty first nineteen ninety nine November twenty first nineteen ninety nine October twenty first nineteen ninety nine."

The following predefined context types are supported:

  • Date
  • Time
  • Number
  • Web
  • E-mail
  • Address

Date

This context specifies that the number passed to the engine is a date. Dates will generally have the format of number [delimiter] number [delimiter] number or number [delimiter] number where the delimiter can be a '.', '/' or '-', and numbers are typically between 01 and 12 for months, 01 and 31 for days. A year is generally a two or four-digit number.

The following are valid string types:

date_mdy

This will normalize the date so that the first group of numbers is the month, the second group is the day, and the third group is the year. In the case where the year is a two-digit number, the engine reads it as a two-digit number or a four-digit number.

For example:

<context id="date_mdy">12/21/99</context>

will be normalized to "December twenty first ninety nine"
or "December twenty first nineteen ninety nine"

<context id="date_mdy">12/21/1999</context>

will be normalized to "December twenty first nineteen ninety nine"

date_dmy

This will normalize the date so that the first group of numbers is the day, the second group is the month, and the third group is the year. In the case where the year is a two-digit number, the engine reads it as a two-digit number. If the year is represented as a four-digit number, it is represented as a four-digit year.

For example:

<context id="date_dmy">21.12.99</context>

will be normalized to "December twenty first ninety nine"
or "December twenty first nineteen ninety nine"

<context id="date_dmy">21-12-1999</context>

will be normalized to "December twenty first nineteen ninety nine"

date_ymd

This will normalize the date so that the first group of numbers is the year, the second group is the month, and the third group is the day. In the case where the year is a two-digit number, the engine reads it as a two-digit number. If the year is represented as a four-digit number, it is represented as a four-digit year.

For example:

<context id="date_ymd">99-12-21</context>

will be normalized to "December twenty first ninety nine"
or "December twenty first nineteen ninety nine"

<context id="date_ymd">1999.12.21</context>

will be normalized to "December twenty first nineteen ninety nine"

date_ym

This will normalize the date so that the first group of numbers is the year, and the second group is the month. In the case where the year is a two-digit number, the engine reads it as a two-digit number. If the year is represented as a four-digit number, it is represented as a four-digit year.

For example:

<context id="date_ym">99-12</context>

will be normalized to "December ninety nine"
or "December nineteen ninety nine"

<context id="date_ym">1999.12</context>

will be normalized to "December nineteen ninety nine"

date_my

This will normalize the date so that the first group of numbers is the month, and the second group is the year. In the case where the year is a two-digit number, the engine reads it as a two-digit number. If the year is represented as a four-digit number, it is represented as a four-digit year.

For example:

<context id="date_my">12/99</context>

will be normalized to "December ninety nine"
or "December nineteen ninety nine"

<context id="date_my">12/1999</context>

will be normalized to "December nineteen ninety nine"

date_dm

This will normalize the date so that the first group of numbers is the day and the second group is the month.

For example:

<context id="date_dm">21.12</context>

will be normalized to "December twenty first"

date_md

This will normalize the date so that the first group of numbers is the month and the second group is the day.

For example:

<context id="date_md">12/21</context>

will be normalized to "December twenty first"

date_year

This will normalize the date so that the number is read as a year.

For example:

<context id="date_year">1999</context>

will be normalized to "nineteen ninety nine"

<context id="date_year">2001</context>

will be normalized to "Two thousand one"

chs_date_ymdhm

The text specifying the date is normalized so that the first group of numbers is the year, the second group is the month, the third group is the day, the fourth group is the hour and the fifth group is the minute. In the case where the year is a two-digit number, the engine reads it as a two-digit number. If the year is represented as a four-digit number, it is represented as a four-digit year. The text format for time needs to specify the hour as a number between 00 and 23 (in case of with PM/AM before, between 01 and 12), and the minute as a number between 01 and 59.

This is a Chinese specific context tag.

Time

This context specifies that the number passed to the engine is a time. Times will generally have the format of number [delimiter] number [delimiter] number or number [delimiter] number where the delimiter is ':' or ' ' ' or ' " ' and numbers are typically between 01 and 24 for hours, 01 and 59 for minutes and seconds.

When a zero is present in numbers between 01 and 09, the engine can ignore this, or normalize it as "oh". The engine can place an "and" in the normalized time.

time

For example:

<context id="time">12:30</context>

will be normalized to "twelve thirty"

<context id="time">01:21</context>

is normalized as "one twenty one"
or "oh one twenty one"

<context id="time">1'21"</context>

is normalized as "one minute twenty one seconds"
or "one minute and twenty one seconds"

chs_time_hms

The text specifying the time is normalized so that the first group of numbers is the hour, the second group is the minute and the third group is the second.

This is a Chinese engine specific context tag.

chs_time_hm

The text specifying the time is normalized so that the first group of numbers is the hour and the second group is the minute.

This is a Chinese engine specific context tag.

Number

number_cardinal

The text is normalized as a number using the regular format of ones, tens, etc. The engine can place "and" in the normalized text.

For example:

<context id="number_cardinal">3432</context>

will be normalized to "three thousand four hundred thirty two"

<context id="number_cardinal">3432</context>

will be normalized to "three thousand four hundred and thirty two"

number_digit

The text is normalized digit by digit.

For example:

<context id="number_digit">3432</context>

will be normalized to "three four three two"

number_fraction

The text is normalized as a fraction.

For example:

<context id="number_fraction">3/15</context>

will be normalized to "three fifteenths" or "three over fifteen"

number_decimal

The text is normalized as a decimal value.

For example:

<context id="number_decimal">423.1243</context>

will be normalized to "four hundred and twenty three point one two four three"

phone_number

The text is normalized as a phone number. The exact implementation of this is left to the engine developer and may be defined in a future release of SAPI.

currency

The text is normalized as a currency. The exact implementation of this is left to the engine developer and may be defined in a future release of SAPI.

For example:

<context id="currency">$34.90</context>

will be normalized to "thirty four dollars and ninety cents"

chs_number_percentage

The text is normalized as a percentage value.

This is a Chinese engine specific context tag.

chs_number_scientific

The text is normalized as a scientific value.

This is a Chinese engine specific context tag.

chs_phone_postal

The phone number and address postal is almost the same as that of number_cardinal; the only difference is that "1" is read as "yao1".

This is a Chinese engine specific context tag.

Web

The text is normalized as a URL. The exact implementation of this is left to the engine developer and may be defined in a future release of SAPI.

web_url

For example:

<context id="web_url">www.Microsoft.com</context>

will be normalized to "w w w dot Microsoft dot com"

E-mail

The text is normalized as e-mail. The exact implementation of this is left to the engine developer and may be defined in a future release of SAPI.

e-mail_address

The text is normalized as an e-mail address. The exact implementation of this is left to the engine developer and may be defined in a future release of SAPI.

For example:

<context id="e-mail_address">someone@microsoft.com</context>

will be normalized to "Someone at Microsoft dot com"

Address

The text is normalized as an address. The exact implementation of this is left to the engine developer and may be defined in a future release of SAPI.

address

For example:

<context id="address">One Microsoft Way, Redmond, WA, 98052</context>

will be normalized to "One Microsoft Way Redmond Washington nine eight zero five two"

address_postal

The text is normalized as a postal address. The exact implementation of this is left to the engine developer and may be defined in a future release of SAPI.

For example:

<context id="address_postal">A2C 4X5</context>

will be normalized to "A 2 C 4 X 5"


Universal-Tags

Es wird empfohlen, die Steuertags für SAPI 4 und die XML-Tags für SAPI 5 und Microsoft Speech Platform zu verwenden. Darüber hinaus unterstützt Balabolka eigene universelle Tags, um die Sprachsynthese zu modifizieren.

Audio

Balabolka ermöglicht, Links zu externen Audio-Dateien (Audio-Clips) in Text von Dokumenten einzufügen. Verwenden Sie das Hauptmenü "Text | Audio-Clip", um einen Audio-Dateinamen zu wählen. Unterstützte Formate: WAV, MP3, OGG.

Ein Audio-Clip-Tag wird so aussehen:

{{Audio=C:\Sounds\ring.wav}}

Auch ein relativer Pfad zu Audio-Clips ist erlaubt. Ein relativer Pfad ist der Speicherort einer Datei in Bezug auf das aktuelle Dokument:

{{Audio =..\Eigene Sounds\ring.mp3}}

Beim Vorlesen von Text wird Balabolka unterbrochen, wenn das Audio-Clip-Tag erreicht ist, der Audio-Clip wird gespielt und das Vorlesen wird fortgesetzt. Bei der Umwandlung in Audio-Dateien wird der Audio-Clip in der Audio-Datei, die durch das Programm erstellt wird, eingebettet werden.

Voice

Wenn eine Stimme oder ihre Eigenschaften beim Vorlesen geändert werden müssen, kann für SAPI 5 und Microsoft Speech Platform ein spezielles Tag verwendet werden (SAPI4-Stimmen ignorieren dieses Tag).

Das Tag-Format:

{{Voice=Name;Geschwindigkeit;Tonhöhe;Lautstärke}}

  • Name - der Name einer Stimme (ein Wort oder ein Teil eines Wortes ist ausreichend);
  • Geschwindigkeit - die Geschwindigkeit einer Stimme (Werte von -10 bis 10);
  • Tonhöhe - die Tonhöhe einer Stimme (Werte von -10 bis 10);
  • Lautstärke - die Lautstärke (Werte von 0 bis 100).

Ein Tag gilt für alle nachfolgenden Texte. Die Werte werden durch Semikolon getrennt. Beispielsweise:

Dieser Text wird von der Standardstimme von Balabolka gesprochen. {{Voice=Marlene;0;0;100}} Die Stimme 'Marlene' liest den anderen Text.

Der Inhalt des Tags unterscheidet nicht zwischen Groß- und Kleinschreibung. Werte für einige Eigenschaften können weggelassen werden:

{{voice=victor;;;50}}

{{Voice=Hans;-1}}

{{Voice=Petra}}

Verwenden Sie dieses Tag, um zur Standardstimme zurückzukehren:

{{Voice=}}

Warnung! Es ist nicht möglich, zwischen SAPI 5-Stimmen und Stimmen der Microsoft Speech Platform zu wechseln.

Pause

Eine festgelegte Anzahl von Millisekunden Stille kann in die Ausgabe-Audiodatei eingefügt werden. Beispielsweise:

Einhundertzwanzig Millisekunden Stille {{Pause=120}} sind gerade eingetreten.


Phonetische Alphabete

A phonetic alphabet contains combinations of letters, numbers, and characters which are known as "phones". A phone represents a discrete sound in a spoken language. Phones are used to create phonetic spellings that determine how a word should be pronounced to be spoken. Speech engines support three phonetic alphabets:

  • International Phonetic Alphabet (IPA)
  • Speech API (SAPI) Phone Set
  • Universal Phone Set (UPS)

International Phonetic Alphabet is a system of phonetic notation based primarily on the Latin alphabet, devised as a standardized representation of the sounds of spoken language. You can use this phonetic alphabet to specify pronunciations for any language.

The first languages created by Microsoft for text-to-speech on computers specified pronunciations of words using the SAPI Phone Set. A phone consists of one or more characters from a phonetic alphabet that describe a discreet sound in a spoken language. The following languages use the SAPI Phone Set to describe the sounds of each language: Chinese, English, French, German, Japanese, Spanish.

More recently, Microsoft developed the Universal Phone Set, a machine-readable phonetic alphabet that is based on the International Phonetic Alphabet. UPS is a more powerful phonetic alphabet than the SAPI Phone Set, can be used to describe the sounds of any new language, and is easier to map to other machine-readable phonetic alphabets such as X-SAMPA, SAMPA or ASCII-IPA.

The user creates the pronunciation using the XML PRON tag. For example, here are two phonetic spellings that a speech engine can use to speak the word "hello" in US English:

<pron sym="h eh - l ow 1"/>

<pron sym="H EH S1 L O"/>

The first example uses phones from the SAPI phone set. The "1" is a stress symbol that indicates which syllable should be accented. The phones are space-delimited, and the "-" separates the syllables in the word. The second example uses phones from the Universal Phone Set. The letters indicate the spoken segments that make up the word. The "S1" is a stress symbol that indicates which syllable should be accented.

Die aktuellen Versionen von IVONA-Stimmen unterstützen keine SAPI-Phoneme. Das PRON-Tag wird ignoriert. Es wird empfohlen, das SSML-Tag (Speech Synthesis Markup Language) zu verwenden, um eine phonetische Aussprache für den jeweiligen Text bereitzustellen.

<phoneme alphabet="ipa" ph="'ʃprɛçn̩">sprechen</phoneme>

Das PHONEME-Tag kann gekürzt werden:

<phoneme alphabet="ipa" ph="'le:zn̩"/>

Das SSML-Tag unterstützt phonetische Alphabete:

  • Internationales Phonetisches Alphabet (IPA)
  • Erweiterte Sprachbewertungsmethoden Phonetisches Alphabet (X-SAMPA)

IPA-Symbole sind über die Tastatur nur schwer einzugeben. Mit Balabolka können Zeichen aus der Liste der IPA-Symbole ausgewählt werden.


SAPI Phone Set

Microsoft Speech API gebraucht ein phonetisches Alphabet, um Phoneme auszusprechen. Ein phonetisches Alphabet beschreibt alle Phoneme, die in einer Sprache benutzt werden, zusammen mit ihren Eigenschaften und Daten für ihre Lautproduktion. Anwender können Aussprache-Anweisungen für Wörter, die derzeit nicht im Lexikon sind, mit Hilfe der Phoneme aus den folgenden Tabellen selbst erstellen. Das Phonem-Set besteht aus einer symbolischen phonetischen Repräsentation (SYM).

Der Benutzer kann die SYM-Repräsentation eingeben, um die Aussprache mit PRON tag zu erstellen. Jeder Phonem-Eintrag muss durch ein Leerzeichen abgegrenzt werden.

Beispiel. Aussprache von "hello":

<pron sym="h eh l ow"/>

Für eine verbesserte Genauigkeit der Aussprache können ein primärer (1) und sekundärer (2) Stress-Marker und Silben-Marker (-) hinzugefügt werden.

Beispiel. Aussprache von "hello" mit dem primären Stress-Marker (1) und dem Silben-Marker (-):

<pron sym="h eh - l ow 1"/>

Wählen Sie eine Sprache aus der folgenden Liste, um das phonetische Alphabet zu sehen:

  • Deutsch
  • Englisch (Vereinigte Staaten)
  • Französisch
  • Italienisch
  • Spanisch
  • Chinesisch
  • Japanisch

Deutsche Phoneme

Phonem-Zeichen | Beispiel | Transkription
1 | Primäre Betonung |
2 | Sekundäre Betonung |
- | Silbengrenze (Bindestrich) |
& | Wortgrenze |
! | Satzschlusszeichen (Ausrufezeichen) |
, | Trennzeichen (Komma) |
. | Satzschlusszeichen (Punkt) |
? | Satzschlusszeichen (Fragezeichen) |
_ | Stille (Unterstrich) |
a | Achtung | q a 1 x t uh ng
A | Name | n A 1 m ah
aan | Chance | sh aan 1 s ah
ah | bitte | b ih 1 t ah
ao | Hoffnung | h ao 1 f n uh ng
aon | Pompon | p aon 1 p aon 1
aw | Raum | rq aw 1 m
ay | Zeit | ts ay 1 t
b | besonders | b ah z ao 1 n d e@ s
c | China | c i 1 n A
ch | deutsch | d oy 1 ch
d | das | d a 1 s
e | mehr | m e 1 r
eh | Enkel | q eh 1 ng k el
EH | erklären | q eh r k l EH 1 rq en
ehn | Bassin | b a s ehn 1
el | Einzelnen | q ay 1 n ts el n en
em | einem | q ay 1 n em
en | einen | q ay 1 n en
er | Surfer | s er 1 f e@
ey | Display | d ih s p l ey 1
e@ | Kindern | k ih 1 n d e@ n
f | Fall | f a 1 l
g | glaube | g l aw 1 b ah
h | Haupt | h aw 1 p t
i | sieben | z i 1 b en
ih | immer | q ih 1 m e@
j | ja | j A 1
jh | Dschungel | jh uh 1 ng el
k | Kultur | k uh l t u 1 r
l | lieber | l i 1 b e@
m | mein | m ay 1 n
n | Name | n A 1 m ah
ng | Junge | j uh 1 ng ah
o | oder | q o 1 d e@
oe | öffnete | q oe 1 f n ah t ah
OE | Österreich | q OE 1 s t ah rq ay c
oen | Parfum | p a r f oen 1
oy | Europa | q oy rq o 1 p A
p | Parlament | p a r l a m eh 1 n t
pf | Pflicht | pf l ih 1 c t
q | aber | q A 1 b e@
r | Berliner | b eh r l i 1 n e@
rq | Runde | rq uh 1 n d ah
s | Szene | s ts e 1 n ah
sh | sprach | sh p rq A 1 x
t | tol | t ao 1 l
ts | Zimmer | ts ih 1 m e@
u | Uhren | q u 1 rq en
ue | hübsch | h ue 1 p sh
UE | über | q UE 1 b e@
uh | Schutz | sh uh 1 ts
v | wichtig | v ih 1 c t ih c
w | Mademoiselle | m a d ah m w a z eh 1 l
x | Buch | b u 1 x
z | selbst | z eh 1 l p s t
zh | Spionage | sh p i o n A 1 zh ah

Amerikanisches Englische Phoneme

Phonem-Zeichen | Beispiel | Transkription
1 | Primäre Betonung |
2 | Sekundäre Betonung |
- | Silbengrenze (Bindestrich) |
& | Wortgrenze |
! | Satzschlusszeichen (Ausrufezeichen) |
, | Trennzeichen (Komma) |
. | Satzschlusszeichen (Punkt) |
? | Satzschlusszeichen (Fragezeichen) |
_ | Stille (Unterstrich) |
aa | father | f aa 1 dh er
ae | cat | k ae 1 t
ah | but | b ah 1 t
ao | bought | b ao 1 t
aw | house | h aw 1 s
ax | about | ax b aw 1 t
ay | bite | b ay 1 t
b | book | b uh 1 k
ch | catch | k eh 1 ch
d | done | d ah 1 n
dh | breathe | b r i dh
eh | bet | b eh 1 t
er | bird | b er 1 d
ey | ate | ey 1 t
e@ | fairly | f e@ 1 l i
f | fog | f ao 1 g
g | good | g uh 1 d
h | hello | h eh l ow 1
ih | bit | b ih 1 t
iy | beat | b iy 1 t
i@ | here | h i@ 1
jh | jump | jh ah 1 mp
k | cat | k ae 1 t
l | lot | l aa 1 t
m | Mom | m aa 1 m
n | nod | n aa 1 d
ng | sing | s ih 1 ng
ow | boat | b ow 1 t
oy | boy | b oy 1
p | pot | p aa 1 t
r | rat | r ae 1 t
s | sit | s ih 1 t
sh | shut | sh ah 1 t
t | top | t aa 1 p
th | thick | th ih 1 k
uh | book | b uh 1 k
uw | boot | b uw 1 t
v | various | v eh 1 r i ih s
w | won | w ah 1 n
y | you | y uw 1
z | zoo | z uw 1
zh | casual | k ae 1 zh uw ah l

Französische Phoneme

Phonem-Zeichen | Beispiel | Transkription
1 | Primäre Betonung |
2 | Sekundäre Betonung |
- | Silbengrenze (Bindestrich) |
& | Wortgrenze |
! | Satzschlusszeichen (Ausrufezeichen) |
, | Trennzeichen (Komma) |
. | Satzschlusszeichen (Punkt) |
? | Satzschlusszeichen (Fragezeichen) |
_ | Stille (Unterstrich) |
a | patte | p a 1 t
aan | abandon | a b aan d aon 1
ao | comme | k ao 1 m
aon | bon | b aon 1
ax | le | l ax 1
b | bouche | b u 1 sh
ch | charlie | ch a 1 r l i
d | dame | d a 1 m
dz | jeudi | j oe dz i 1
e | marché | m a r sh e 1
eh | chère | sh eh 1 r
ehn | main | m ehn 1
eo | feu | f eo 1
f | fille | f i 1 j
g | garde | g a 1 r d
i | libre | l i 1 b r
j | pierre | p j e 1 r
jh | George | jh ao 1 r jh
k | chique | sh i k
l | langage | l aan g a 1 zh
m | mois | m w a 1
n | nonne | n ao 1 n
ng | shopping | sh ao p i 1 ng
nj | campagne | k aan p a 1 nj
o | animaux | a n i m o 1
oe | leur | l oe 1 r
oen | parfum | p a r f oen 1
p | pile | p i 1 l
q | hacher | q a sh e 1
r | route | r u t
s | adresser | a d r e s e 1
sh | chaise | sh eh 1 z
t | technique | t eh k n i 1 k
ts | énergétique | e n eh r zh e ts i 1 k
u | doux | d u 1
ue | une | ue 1 n
uh | Bush | b uh 1 sh
v | vive | v i 1 v
w | boire | b w a 1 r
yw | huile | yw i 1 l
z | zone | z ao 1 n
zh | juste | zh ue 1 s t

Italienische Phoneme

Phonem-Zeichen | Beispiel | Transkription
1 | Primäre Betonung |
2 | Sekundäre Betonung |
- | Silbengrenze (Bindestrich) |
& | Wortgrenze |
! | Satzschlusszeichen (Ausrufezeichen) |
, | Trennzeichen (Komma) |
. | Satzschlusszeichen (Punkt) |
? | Satzschlusszeichen (Fragezeichen) |
_ | Stille (Unterstrich) |
a | campo | k a 1 m p o
ao | nove | n ao 1 v e
b | barra | b a 1 rr a
ch | percento | p e r ch eh 1 n t o
d | mondo | m o 1 n d o
dz | zeta | dz eh 1 t a
e | venire | v e n i 1 r e
eh | lento | l eh 1 n t o
f | fine | f i 1 n e
g | gruppi | g r u 1 p i
i | si | s i
j | funzione | f u n ts j o 1 n e
jh | generazione | jh e n e r a ts j o 1 n e
k | economia | e k o n o m i 1 a
l | libri | l i 1 b r i
ll | gli | ll i
m | mai | m a 1 i
n | nord | n ao r d
nj | signor | s i 1 nj ao r
o | otto | ao 1 t t o
p | primo | p r i 1 m o
r | arrivederci | a rr i v e d e 1 r ch i
rr | arrivederci | a rr i v e d e 1 r ch i
s | sinistra | s i n i 1 s t r a
sh | scienza | sh eh 1 n ts a
t | tre | t r eh
ts | grazie | g r a 1 ts j e
u | punto | p u 1 n t o
v | venti | v e 1 n t i
w | Washington | w a 1 sh i ng t o n
z | svolta | z v o 1 l t a

Spanische Phoneme

Phonem-Zeichen | Beispiel | Transkription
1 | Primäre Betonung |
2 | Sekundäre Betonung |
- | Silbengrenze (Bindestrich) |
& | Wortgrenze |
! | Satzschlusszeichen (Ausrufezeichen) |
, | Trennzeichen (Komma) |
. | Satzschlusszeichen (Punkt) |
? | Satzschlusszeichen (Fragezeichen) |
_ | Stille (Unterstrich) |
a | aquí | a k i 1
b | Brasil | b r a s i 1 l
ch | Chile | ch i 1 l e
d | grande | g r a 1 n d e
e | este | e 1 s t e
f | función | f u n s xi o 1 n
g | segundo | s e g u 1 n d o
i | identidad | i d e n t i d a 1 d
j | yo | j o 1
k | casa | k a 1 s a
l | los | l o 1 s
ll | llamada | ll a m a 1 d a
m | manos | m a 1 n o s
n | no | n o 1
nj | año | a 1 nj o
o | bueno | b xu e 1 n o
p | para | p a 1 r a
r | para | p a 1 r a
rr | radio | rr a 1 d xi o
s | solo | s o 1 l o
sh | Bush | b u 1 sh
t | importante | i m p o r t a 1 n t e
u | uno | u 1 n o
w | Hollywood | o 1 l i w u d
x | general | x e n e r a 1 l
xi | iogur | xi o g u 1 r
xu | puedo | p xu e 1 d o

Chinesische Phoneme

Phonem-Zeichen | Beispiel
- | Silbengrenze (Bindestrich)
! | Satzschlusszeichen (Ausrufezeichen)
& | Wortgrenze
, | Trennzeichen (Komma)
. | Satzschlusszeichen (Punkt)
? | Satzschlusszeichen (Fragezeichen)
_ | Stille (Unterstrich)
+ | Primäre Betonung
* | Sekundäre Betonung
1 | Ton 1
2 | Ton 2
3 | Ton 3
4 | Ton 4
5 | Ton 5
a | a 1 fei 1 (rogue)
ai | ai 4 ren 2 (lover)
an | an 1 quan 2 (safe)
ang | ang 1 zang 1 (dirty)
ao | jiao 1 ao 4 (proud)
ba | ba 4 ba 5 (dad)
bai | bai 2 se 4 (white)
ban | mu 4 ban 3 (board)
bang | bang 3 jia 4 (kidnap)
bao | yong 1 bao 4 (embrace)
bei | bei 3 fang 1 (north)
ben | ben 4 dan 4 (fool)
beng | beng 4 tiao 4 (jump)
bi | bi 2 zi 5 (nose)
bian | bian 4 hua 5 (change)
biao | biao 3 ge 2 (table)
bie | li 2 bie 2 (part with)
bin | bin 1 ke 4 (guest)
bing | shi 4 bing 1 (soldier)
bo | bo 2 dou 4 (wrestle)
bu | bu 4 xing 2 (walk)
ca | ca 1 gan 1 (wipe)
cai | cai 1 ce 4 (guess)
can | can 1 jia 1 (join)
cang | cang 1 ying 5 (fly)
cao | cao 1 chang 3 (playground)
ce | ce 4 liang 2 (measure)
cen | cen 1 ci 1 (uneven)
ceng | ceng 2 jing 1 (once)
cha | jian 3 cha 2 (check)
chai | chai 1 hui 3 (demolish)
chan | chan 3 ye 4 (industry)
chang | jing 1 chang 2 (often)
chao | chao 1 yue 4 (exceed)
che | qi 4 che 1 (automobile)
chen | chen 2 jiu 4 (old)
cheng | cheng 2 che 1 (ride)
chi | chi 2 dao 4 (late for)
chong | chong 1 man 3 (full of)
chou | chou 2 hen 4 (hatred)
chu | chu 2 fa 3 (division)
chuai | chuai 3 ce 4 (guess)
chuan | lun 2 chuan 2 (ship)
chuang | chuang 4 ye 4 (carve out)
chui | tie 3 chui 2 (hammer)
chun | chun 1 tian 1 (spring)
chuo | wo 4 chuo 4 (dirty)
ci | ci 2 qi 4 (porcelain)
cong | cong 2 lin 2 (thicket)
cou | jin 3 cou 4 (compact)
cu | cu 4 xiao 1 (sales promotion)
cuan | tao 2 cuan 4 (run away)
cui | cui 1 cu 4 (press)
cun | xiang 1 cun 1 (country)
cuo | cuo 4 wu 4 (error)
da | da 4 (big)
dai | dai 4 biao 3 (delegate)
dan | dan 4 shi 4 (but)
dang | dang 1 ran 2 (sure)
dao | dao 1 (knife)
de | de 5 (function word)
dei | dei 3 (must)
den | den 4 (yank)
deng | ban 3 deng 4 (wooden stool)
di | di 2 que 4 (certainly)
dia | dia 3 (coquetry voice)
dian | dian 3 (dot)
diao | diao 4 (hang)
die | die 1 dao 3 (tumble)
ding | jue 2 ding 4 (decide)
diu | diu 1 qi 4 (discard)
dong | dong 1 fang 1 (east)
dou | zhan 4 dou 4 (struggle)
du | du 4 jue 2 (stop)
duan | duan 3 (short)
dui | dui 4 (right)
dun | ting 2 dun 4 (halt)
duo | duo 1 yu 2 (unnecessary)
e | e 4 (hungry)
ei | ei 4 (yes)
en | en 1 hui 4 (favor)
er | er 3 (ear)
fa | fa 1 zhan 3 (development)
fan | fan 4 (rice)
fang | fang 2 jian 1 (room)
fei | fei 1 (fly)
fen | fen 1 bie 2 (separate)
feng | feng 1 (wind)
fo | fo 2 (buddha)
fou | fou 3 ding 4 (denial)
fu | fu 4 qin 1 (father)
ga | gan 1 ga 4 (awkward)
gai | ying 1 gai 1 (should)
gan | gan 1 jing 4 (neatness)
gang | gang 1 cai 2 (just)
gao | gao 1 (tall)
ge | pin 3 ge 2 (character)
gei | gei 3 yu 3 (give)
gen | gen 1 (root)
geng | geng 4 jia 1 (much more)
gong | gong 1 ren 2 (worker)
gou | zu 2 gou 4 (enough)
gu | gu 4 xiang 1 (hometown)
gua | xi 1 gua 1 (watermelon)
guai | qi 2 guai 4 (oddness)
guan | guan 1 bi 4 (close)
guang | guang 1 (light)
gui | gui 3 (ghost)
gun | gun 4 (stick)
guo | guo 4 qu 4 (past)
ha | ha 1 (sound of laugh)
hai | hai 2 zi 5 (child)
han | chu 1 han 4 (sweat)
hang | hang 2 xing 2 (sail)
hao | hao 3 (good)
he | he 2 (river)
hei | hei 1 (black)
hen | hen 3 (very)
heng | heng 2 xiang 4 (landscape orientation)
hong | hong 2 (red)
hou | hou 2 zi 5 (monkey)
hu | hu 2 xu 1 (beard)
hua | hua 4 (picture)
huai | huai 4 (bad)
huan | huan 2 jing 4 (environment)
huang | huang 2 se 4 (yellow)
hui | hui 1 huang 2 (refulgence)
hun | hun 2 zhuo 2 (muddy)
huo | huo 3 (fire)
ji | ji 2 shi 2 (in time)
jia | jia 4 qi 1 (holiday)
jian | jian 3 dan 1 (simple)
jiang | jiang 1 (river)
jiao | jiao 1 tong 1 (traffic)
jie | jie 2 ri 4 (feast)
jin | jin 3 zhang 1 (strain)
jing | gan 1 jing 4 (neatness)
jiong | jiong 3 po 4 (embarrassed)
jiu | jiu 3 (nine)
ju | ju 4 zi 5 (sentence)
juan | juan 3 qu 1 (curl)
jue | jue 2 ding 4 (decide)
jun | jun 1 dui 4 (army)
ka | ka 3 che 1 (truck)
kai | kai 3 xuan 2 (triumph)
kan | kan 4 (see)
kang | di 3 kang 4 (resist)
kao | kao 3 shi 4 (test)
ke | ke 3 (thirsty)
kei | kei 1 (scold)
ken | ken 3 ding 4 (affirm)
keng | keng 1 hai 4 (entrap)
kong | kong 1 qi 4 (air)
kou | kou 3 (mouth)
ku | jian 1 ku 3 (trial)
kua | kua 1 jiang 3 (praise)
kuai | kuai 4 (fast)
kuan | kuan 1 kuo 4 (openness)
kuang | kong 1 kuang 4 (void)
kui | kui 1 qian 4 (owe)
kun | kun 4 nan 2 (hard)
kuo | kuo 4 da 4 (enlarge)
la | la 4 jiao 1 (hot pepper)
lai | lai 2 (come)
lan | lan 2 se 4 (blue)
lang | lang 2 (wolf)
lao | lao 3 (old)
le | kuai 4 le 4 (happy)
lei | lei 2 (thunder)
leng | leng 3 ku 4 (steeliness)
li | li 2 (pear)
lia | lia 2 (two)
lian | lian 3 (face)
liang | li 4 liang 4 (power)
liao | zuo 2 liao 4 (seasoning)
lie | lin 3 lie 4 (severe)
lin | lin 3 lie 4 (severe)
ling | ling 2 mu 4 (mausoleum)
liu | liu 2 dong 4 (flow)
lo | lo 5 (function word)
long | long 2 (dragon)
lou | lou 4 (leak)
lu | lu 4 di 4 (land)
luan | hun 4 luan 4 (chaos)
lue | ce 4 lue 4 (tactic)
lun | yi 4 lun 4 (discuss)
luo | xia 4 luo 4 (whereabouts)
lv | lv 4 se 4 (green)
ma | ma 3 (horse)
mai | mai 2 zang 4 (bury)
man | man 3 zu 2 (satisfy)
mang | cong 1 mang 2 (hurry)
mao | mao 1 (cat)
me | shen 2 me 5 (what)
mei | mei 2 you 3 (no)
men | wo 3 men 2 (we)
meng | meng 4 (dream)
mi | hun 1 mi 2 (coma)
mian | mian 4 ji 5 (area)
miao | miao 4 (temple)
mie | mie 4 jue 2 (annihilation)
min | ren 2 min 2 (people)
ming | ming 2 bai 2 (clearness)
miu | huang 1 miu 4 (absurd)
mo | mo 4 shui 3 (ink)
mou | mou 2 lue 4 (trick)
mu | mu 4 biao 1 (target)
na | na 4 li 3 (there)
nai | nai 3 nai 5 (grandmother)
nan | nan 2 fang 1 (south)
nang | nang 2 kuo 4 (include)
nao | re 4 nao 4 (liveliness)
ne | mu 4 ne 4 (numb)
nei | nei 4 bu 4 (inside)
nen | nen 4 lv 4 (light green)
neng | neng 2 gou 4 (be capable of)
ni | ni 3 (you)
nian | nian 2 (year)
niang | gu 1 niang 5 (girl)
niao | niao 3 (bird)
nie | nie 4 (bite)
nin | nin 2 (you)
ning | an 1 ning 2 (peace)
niu | niu 2 (bull)
nong | nong 2 min 2 (farmer)
nou | nou 4 (weeding)
nu | nu 3 li 4 (try hard)
nuan | wen 1 nuan 3 (warm)
nue | nue 4 dai 4 (abuse)
nuo | nuo 4 yan 2 (promise)
nv | nv 3 zi 3 (woman)
o | o 5 (function word)
ou | ou 1 yang 2 (Chinese first name)
pa | hai 4 pa 4 (scare)
pai | pai 4 qian 3 (send)
pan | pan 4 tu 2 (betrayer)
pang | pang 2 da 4 (huge)
pao | pao 3 (run)
pei | pei 2 ban 4 (accompany)
pen | pen 2 di 4 (pan)
peng | peng 2 pai 4 (surge)
pi | pi 2 fu 1 (skin)
pian | qi 1 pian 4 (cheat)
piao | piao 4 liang 4 (pretty)
pie | pie 1 kai 1 (put aside)
pin | pin 2 fan 2 (frequency)
ping | ping 2 zi 5 (bottle)
po | po 4 huai 4 (damage)
pou | pou 2 (hold something with cupped hand)
pu | pu 2 tao 5 (grape)
qi | qi 3 qiu 2 (beg)
qia | qia 4 dang 4 (proper)
qian | qian 1 xu 1 (humility)
qiang | qiang 2 da 4 (powerful)
qiao | qiao 3 miao 4 (artifice)
qie | xiu 1 qie 4 (shyness)
qin | qin 1 zi 4 (oneself)
qing | qing 1 song 1 (easy)
qiong | qiong 2 (poverty)
qiu | qiu 2 fan 4 (prisoner)
qu | qu 1 dong 4 (drive)
quan | quan 2 bu 4 (all)
que | que 4 ding 4 (ensure)
qun | qun 2 zhong 4 (crowd)
ran | ran 2 hou 4 (then)
rang | tu 3 rang 3 (soil)
rao | wei 2 rao 4 (surround)
re | re 4 (hot)
ren | ren 2 lei 4 (human being)
reng | reng 2 ran 2 (all the same)
ri | ri 4 chu 1 (sunrise)
rong | rong 2 yao 4 (glory)
rou | niu 2 rou 4 (beef)
ru | ru 2 guo 3 (if)
ruan | rou 2 ruan 3 (soft)
rui | rui 4 zhi 4 (smart)
run | shi 1 run 4 (wetness)
ruo | ruo 4 xiao 3 (puniness)
sa | sa 1 (three)
sai | bi 3 sai 4 (compete)
san | fen 1 san 4 (disperse)
sang | sang 4 (die)
sao | da 3 sao 3 (sweep)
se | yan 2 se 4 (color)
sen | sen 1 lin 2 (forest)
seng | seng 1 lv 3 (monk)
sha | sha 1 chang 3 (battlefield)
shai | ri 4 shai 4 (be exposed to the sun)
shan | shan 4 liang 2 (goodness)
shang | shang 4 mian 4 (top)
shao | shao 4 nian 2 (youth)
she | she 2 (snake)
shei | shei 2 (who)
shen | shen 2 me 5 (what)
sheng | sheng 1 yin 1 (voice)
shi | shi 4 fei 1 (dispute)
shou | shou 3 (hand)
shu | shu 4 mu 4 (tree)
shua | shua 1 zi 5 (brush)
shuai | shuai 1 da 3 (beat)
shuan | men 2 shuan 1 (latch)
shuang | shuang 1 (pair)
shui | shui 3 (water)
shun | shun 4 li 4 (all right)
shuo | shuo 1 (say)
si | si 4 (four)
song | song 4 bie 2 (send-off)
sou | sou 1 cha 2 (search)
su | su 4 du 4 (speed)
suan | suan 4 fa 3 (arithmetic)
sui | sui 1 ran 2 (though)
sun | sun 3 shi 1 (loss)
suo | suo 3 yi 3 (so)
ta | ta 1 men 2 (they)
tai | tai 4 (too)
tan | tan 2 hua 4 (talk)
tang | tang 2 (sugar)
tao | tao 2 pao 3 (flee)
te | te 4 bie 2 (special)
tei | tei 1 (very)
teng | ben 1 teng 2 (riot)
ti | ti 1 zi 5 (ladder)
tian | tian 1 (sky)
tiao | tiao 4 yue 4 (jump)
tie | tie 3 (iron)
ting | ting 1 (listen)
tong | tong 3 yi 1 (unify)
tou | tou 2 (head)
tu | tu 3 di 4 (earth)
tuan | tuan 2 jie 2 (solidify)
tui | tui 1 dong 4 (push)
tun | tun 2 ji 1 (store up)
tuo | tuo 1 yi 1 (undress)
wa | qing 1 wa 1 (frog)
wai | wai 4 mian 4 (outside)
wan | wan 4 (ten thousands)
wang | si 3 wang 2 (death)
wei | wei 3 da 4 (great)
wen | wen 2 hua 4 (culture)
weng | lao 3 weng 1 (oldman)
wo | wo 3 (I)
wu | wu 2 lun 4 (no matter what)
xi | xi 1 fang 1 (west)
xia | xia 4 mian 4 (bottom)
xian | xian 4 zai 4 (now)
xiang | xiang 4 (like)
xiao | xiao 3 (small)
xie | xie 3 (write)
xin | xin 1 (new)
xing | xing 2 dong 4 (act)
xiong | xiong 2 (bear)
xiu | xiu 1 xi 5 (break)
xu | xu 1 yao 4 (need)
xuan | xuan 1 bu 4 (declare)
xue | xue 3 (snow)
xun | xun 2 wen 4 (ask for)
ya | ya 4 zhou 1 (Asia)
yan | yan 4 zi 5 (swallow)
yang | tai 4 yang 2 (sun)
yao | yao 1 qiu 2 (require)
ye | ye 2 ye 5 (grandfather)
yi | yi 1 (one)
yin | yin 1 yue 4 (music)
ying | ying 1 gai 1 (should)
yo | yo 5 (function word)
yong | yong 3 yuan 3 (forever)
you | you 2 yu 2 (due to)
yu | yu 2 (fish)
yuan | yuan 2 lai 2 (formerly)
yue | yue 4 (month)
yun | yun 2 (cloud)
za | za 2 luan 4 (disorder)
zai | zai 4 jian 4 (farewell)
zan | zan 2 men 5 (our)
zang | ang 1 zang 1 (dirty)
zao | zao 3 chen 2 (morning)
ze | ze 2 ren 4 (response)
zei | zei 2 (thief)
zen | zan 4 yang 2 (praise)
zeng | zeng 1 jia 1 (add)
zha | zha 4 dan 4 (bomb)
zhai | qian 4 zhai 4 (owe)
zhan | zhan 4 li 4 (stand)
zhang | zhang 1 kai 1 (open)
zhao | zhao 1 huan 4 (summon)
zhe | zhe 4 li 3 (here)
zhei | zhei 5 (this)
zhen | zhen 1 zheng 4 (real)
zheng | zheng 4 yi 4 (justice)
zhi | yi 4 zhi 4 (restrain)
zhong | zhong 1 guo 2 (China)
zhou | si 4 zhou 1 (around)
zhu | zhu 1 (pig)
zhua | zhua 1 (grab)
zhuai | zhuai 4 (pull)
zhuan | zhuan 1 (brick)
zhuang | zhuang 1 (pretend)
zhui | zhui 1 (chase)
zhun | zhun 3 (precise)
zhuo | zhuo 1 (table)
zi | zi 4 (character)
zong | zong 3 (total)
zou | zou 3 (walk)
zu | zu 1 (rent)
zuan | zuan 4 (diamond)
zui | zui 4 (most)
zun | zun 1 (respect)
zuo | zuo 4 (sit)

Japanische Phoneme (Katakana)

Zeichen | Phonetisch | Unicode | Erläuterungen
' |  | U+0027 | Betonungsstelle
+ |  | U+002B | Betonungsgrenze
| |  | U+007C | Phrasengrenze
. |  | U+002E | Satzende (Standard)
? |  | U+003F | Satzende (Frage)
! |  | U+0021 | Satzende (Ausruf)
_ |  | U+005F | Eine Mora-Pause
゜ |  | U+309C | Semi-voiced sound
ァ | a | U+30A1 | Modifier
ア | a | U+30A2 |
ィ | i | U+30A3 | Modifier
イ | i | U+30A4 |
ゥ | u | U+30A5 |
ウ | u | U+30A6 |
ェ | e | U+30A7 | Modifier
エ | e | U+30A8 |
ォ | o | U+30A9 | Modifier
オ | o | U+30AA |
カ | ka | U+30AB |
ガ | ga | U+30AC |
キ | ki | U+30AD |
ギ | gi | U+30AE |
ク | ku | U+30AF |
グ | gu | U+30B0 |
ケ | ke | U+30B1 |
ゲ | ge | U+30B2 |
コ | ko | U+30B3 |
ゴ | go | U+30B4 |
サ | sa | U+30B5 |
ザ | za | U+30B6 |
シ | shi | U+30B7 |
ジ | ji | U+30B8 |
ス | su | U+30B9 |
ズ | zu | U+30BA |
セ | se | U+30BB |
ゼ | ze | U+30BC |
ソ | so | U+30BD |
ゾ | zo | U+30BE |
タ | ta | U+30BF |
ダ | da | U+30C0 |
チ | chi | U+30C1 |
ヂ | di | U+30C2 | Deprecated - use 30B8
ッ | q | U+30C3 |
ツ | tsu | U+30C4 |
ヅ | du | U+30C5 | Deprecated - use 30BA
テ | te | U+30C6 |
デ | de | U+30C7 |
ト | to | U+30C8 |
ド | do | U+30C9 |
ナ | na | U+30CA |
ニ | ni | U+30CB |
ヌ | nu | U+30CC |
ネ | ne | U+30CD |
ノ | no | U+30CE |
ハ | ha | U+30CF |
バ | ba | U+30D0 |
パ | pa | U+30D1 |
ヒ | hi | U+30D2 |
ビ | bi | U+30D3 |
ピ | pi | U+30D4 |
フ | hu | U+30D5 |
ブ | bu | U+30D6 |
プ | pu | U+30D7 |
ヘ | he | U+30D8 |
ベ | be | U+30D9 |
ペ | pe | U+30DA |
ホ | ho | U+30DB |
ボ | bo | U+30DC |
ポ | po | U+30DD |
マ | ma | U+30DE |
ミ | mi | U+30DF |
ム | mu | U+30E0 |
メ | me | U+30E1 |
モ | mo | U+30E2 |
ャ | ya | U+30E3 | Modifier
ヤ | ya | U+30E4 |
ュ | yu | U+30E5 | Modifier
ユ | yu | U+30E6 |
ョ | yo | U+30E7 | Modifier
ヨ | yo | U+30E8 |
ラ | ra | U+30E9 |
リ | ri | U+30EA |
ル | ru | U+30EB |
レ | re | U+30EC |
ロ | ro | U+30ED |
ヮ | wa | U+30EE | Modifier
ワ | wa | U+30EF |
ヰ | wi | U+30F0 | Deprecated - use 30A4
ヱ | we | U+30F1 | Deprecated - use 30A8
ヲ | wo | U+30F2 |
ン | nn | U+30F3 |
ヴ | vu | U+30F4 |
ヵ | ka | U+30F5 |
ヶ | ke | U+30F6 |
ヷ | va | U+30F7 |
ヸ | vi | U+30F8 |
ヹ | ve | U+30F9 |
ヺ | vo | U+30FA |
・ |  | U+30FB | Middle dot
ー |  | U+30FC | Prolonged sound
ヽ |  | U+30FD | Iteration
ヾ |  | U+30FE | Voiced iteration


Universal Phone Set

The Speech API (SAPI) Universal Phone Set (UPS) is a machine-readable phone set that is based on the International Phonetic Alphabet (IPA).

UPS Design Principles

The following design principles were used to select SAPI labels and phone IDs for UPS.

  1. UPS covers the IPA 1993 Unicode character set, plus some extra SAPI phones including some suprasegmental labels that are used in speech synthesis markup but are not found in IPA.
    • In most cases there is a one-to-one mapping between UPS and IPA. In these cases, the SAPI Phone ID can simply use the IPA hex Unicode value.
    • In some cases UPS is a superset of IPA. For example, UPS includes some unique phone labels for commonly used sounds such as diphthongs and nasalized vowels, which the IPA treats as compounds. These compounds are represented using the compounding symbol "+". This symbol is treated just like any other phone, and so must be space delimited in a lexicon: the compound of A and B is written A + B, not AB or A+B. The SAPI Phone IDs of such compounds are formed from the sequence of phone IDs making up the compound.
  2. UPS pronunciations consist of a string of UPS phones, each separated by whitespace. SAPI makes no distinction between segmental phones and diacritics, suprasegmentals, and tones, and so these must also be separated by whitespace like any other SAPI phone.
  3. The UPS phone labels are not restricted to use the SAPI phone labels from US English, Spanish, French, German, Japanese, or Chinese; however, where possible, existing SAPI labels were re-used. Two sets of guidelines were used in creating the phone label names:
    • The UPS phone set reflects orthography where possible but is not biased too heavily towards English.
    • Phone labels adhere to labeling conventions that apply across phonetic classes (e.g., lax vowels use the character 'H' as in 'IH', 'UH' and 'AH').
  4. The UPS phone set is case-sensitive. UPS phone labels are all defined using ASCII character strings.
    • Segmental phones (Consonants, Vowels, Clicks and Ejectives) are represented by upper-case alphabetic symbols. These may vary in length from one to three characters. In general, shorter symbols are used for more frequent phones.
    • Diacritics are represented by three-character, lower-case, alphabetic symbols.
    • Suprasegmentals and Tones may vary in length and contain non-alphabetic characters.

The Universal Phone Set should be used for all Microsoft-supported languages except the seven languages currently supported by SAPI: Chinese, English (United States), French, German, Italian, Japanese, Spanish.

Compound Tying Symbol

UPS provides unique phone labels for common compound sounds such as affricates and nasal vowels. However, less frequent compound sounds may also exist in some languages and need to be represented in SAPI lexicons. The Universal Phone Set provides a compounding or tying symbol “+” that can be used to describe composite sounds from any two phones.

The German affricate "PF", diphthong "AI", and nasal vowel "AN" exist as unique phones in UPS. However, they could also be represented as compounds. The following example shows that "PF" and "P + F" are equivalent and are distinct from the phone sequence "P F".

Unique Phone | Compound
PF | P + F
AI | A + I

The nasal vowel "AN" can be described as the "A" vowel with a nasal diacritic. All diacritics must follow a segmental phone, so "A nas" and "A + nas" are equivalent. The former is preferred, though SAPI does not enforce any particular use of "+" or diacritics.

Unique Phone | Compound
AN | A nas
AN | A + nas

Consonants

This is a listing and cross reference of the consonant phones that are used by the three phonetic alphabets.

UPS Consonant Labeling Conventions

Consonant symbols are one, two, or three characters in length. Single character labels are used for highly frequent, language-universal consonants. In general the first character signifies place plus voicing, and the second signifies manner. Labeling conventions carry across phonetic classes in the following ways:

Conventions for place of articulation and voicing labeling:

  • Dentals and alveloars use D for voiced and T for voiceless
  • Alveolars use N for nasal and R for approximant
  • Labiodentals use V for voiced and F for voiceless
  • Velars use G for voiced and K for voiceless, NG for nasal
  • Bilabials use B for voiced and P for voiceless stops, M for nasal
  • Laterals use L
  • Uvulars use Q
  • Pharyngeals use H
  • Palatals use X for voiceless and Y for voiced

Conventions for manner of articulation labeling:

  • Single-character labels have manner encapsulated in choice of symbol: for example, M is nasal
  • Trills double up the first symbol
  • Fricatives use H
  • Approximants use X
  • Retroflex uses R

Consonant Tables

There are two tables, each listing a different category of consonant phones:

  • Consonants
  • Affricates

The table columns contain the following information:

  • UPS. The phone label specified in Microsoft’s Universal Phone Set (UPS).
  • IPA. The phone label specified in the International Phonetic Alphabet (IPA) phone set.
  • Unicode. The Unicode value from the IPA phone set.
  • IPA Description. This column describes the features of the phone, such as place of articulation, manner of articulation, phonation type, and airstream mechanism.
  • ASCII-IPA. The equivalent phone in ASCII-IPA phone set for reference.
  • X-SAMPA. The equivalent phone in X-SAMPA for reference.
  • Example. A word that uses the phone and illustrates its sound.
  • Language. The language of the example word.

Consonant Phones

Consonants are speech sounds that are articulated with complete (voiceless) or partial closure of the vocal tract.

UPS | IPA | Unicode | IPA Description | ASCII-IPA | X-SAMPA | Example | Language
P | p | U+0070 | {blb,stp,vls} | p | p | put | English
B | b | U+0062 | {blb,stp,vcd} | b | b | big | English
M | m | U+006D | {blb,nas} | m | m | mat | English
BB | ʙ | U+0299 | {blb,trl,vcd} | B<trl> | B\ |  |
PH | ɸ | U+0278 | {blb,frc,vls} | P | p\ |  |
BH | β | U+03B2 | {blb,frc,vcd} | B | B | kabra | Spanish
MF | ɱ | U+0271 | {lbd,nas} | M | F |  |
F | f | U+0066 | {lbd,frc,vls} | f | f | fork | English
V | v | U+0076 | {lbd,frc,vcd} | v | v | vat | English
VA | ʋ | U+028B | {lbd,apr,vcd} | r<lbd> | v\ |  |
TH | θ | U+03B8 | {dnt,frc,vls} | T | T | thin | English
DH | ð | U+00F0 | {dnt,frc,vcd} | D | D | then | English
T | t | U+0074 | {alv,stp,vls} | t | t | talk | English
D | d | U+0064 | {alv,stp,vcd} | d | d | dig | English
N | n | U+006E | {alv,nas} | N | n | no | English
RR | r | U+0072 | {alv,trl,vcd} | r<trl> | r | torre, rojo | Spanish
DX | ɾ | U+027E | {alv,flp,vcd} | * | 4 | butter | US English
S | s | U+0073 | {alv,frc,vls} | s | s | sit | US English
Z | z | U+007A | {alv,frc,vcd} | z | z | zap | US English
LSH | ɬ | U+026C | {alv,lat,frc,vls} |  | K |  |
LH | ɮ | U+026E | {alv,lat,frc,vcd} | z<lat> | K\ | caballo | Spanish/Zulu
RA | ɹ | U+0279 | {alv,apr} | r | r\ | puro | Spanish
L | l | U+006C | {alv,lat,apr,vcd} | l | l | lid | US English
L vel | ɫ | U+026B | {alv,lat,apr,vcd} vel |  | 5 |  |
SH | ʃ | U+0283 | {pla,frc,vls} | S | S | she | US English
SH pal | ʆ | U+0286 | {pla,frc,vls} pal |  |  |  |
ZH | ʒ | U+0292 | {pla,frc,vcd} | Z | Z | pleasure | US English
ZH pal | ʓ | U+0293 | {pla,frc,vcd} pal |  |  |  |
TR | ʈ | U+0288 | {rfx,stp,vls} | t. | t` |  |
DR | ɖ | U+0256 | {rfx,stp,vcd} | d. | d` |  |
NR | ɳ | U+0273 | {rfx,nas,vcd} | n. | n` |  |
DXR | ɽ | U+027D | {rfx,flp,vcd} | *. | r` |  |
SR | ʂ | U+0282 | {rfx,frc,vls} | s. | s` |  |
ZR | ʐ | U+0290 | {rfx,frc,vcd} | z. | z` |  |
R | ɻ | U+027B | {rfx,apr,vcd} | r. | r\` | red | US English
LR | ɭ | U+026D | {rfx,lat,vcd} | l. | l` |  |
RR rho | ɼ | U+027C | {rfx,trl} |  |  |  |
CT | c | U+0063 | {pal,stp,vls} | c | c |  |
JD | ɟ | U+025F | {pal,stp,vcd} | J | J\ |  |
NJ | ɲ | U+0272 | {pal,nas,vcd} | J |  | oignon | French
C | ç | U+00E7 | {pal,frc,vls} | C | C | sicher | German
CJ | ʝ | U+029D | {pal,frc,vcd} | C<vcd> | j\ |  |
J | j | U+006A | {pal,apr,vcd} | j | j | yard | US English
LJ | ʎ | U+028E | {pal,lat,apr,vcd} | l^ | L | gli | Italian
W | w | U+0077 | {lbv,apr,vcd} | w | w | with | US English
K | k | U+006B | {vel,stp,vls} | k | k | cut | US English
G | g | U+0067 | {vel,stp,vcd} | g | g | gut | US English
NG | ŋ | U+014B | {vel,nas} | N | N | sing | US English
X | x | U+0078 | {vel,frc,vls} | x | x | mujer | Spanish
GH | ɣ | U+0263 | {vel,frc,vcd} | Q | G | luego | Spanish
GA | ɰ | U+0270 | {vel,apr,vcd} | j<vel> | M\ |  |
GL | ʟ | U+029F | {vel,lat,vcd} | L | L\ |  |
QT | q | U+0071 | {uvl,stp,vls} | q | q |  |
QD | ɢ | U+0262 | {uvl,stp,vcd} | G | G\ |  |
QN | ɴ | U+0274 | {uvl,nas,vcd} | n" | N\ |  |
QQ | ʀ | U+0280 | {uvl,trl,vcd} | - | R\ |  |
QH | χ | U+03C7 | {uvl,frc,vls} | X | X |  |
RH | ʁ | U+0281 | {uvl,frc,vcd} | g" | R | rond | French
HH | ħ | U+0127 | {phr,frc,vls} | H | X\ |  |
HG | ʕ | U+0295 | {phr,frc,vcd} | H<vcd> | ?\ |  |
GT | ʔ | U+0294 | {glt,stp,vls} | ? | ? |  |
H | h | U+0068 | {glt,frc,vls} | h | h | help | US English
WJ | ɥ | U+0265 | {lbp,apr,vcd} | j<rnd> | H | huit;juin | French

Affricates

Affricates are consonants that begin as stops but release as a fricative.

The SAPI UPS includes explicit phones for the most frequent affricates in the highest priority languages. The IPA Unicode specification includes some of these phones, though not all of them.

The table shows the constituent phones (UPS Compound) that were combined to create the resulting explicit phone (UPS).

UPS | UPS Compound | IPA | Unicode | IPA Description | Example | Language
PF | P + F | p.f |  | {lbd,aff,vls} | Pfahl | German
TS | T + S | t.s / ʦ | U+02A6 | {den,aff,vls} | Zahl | German
CH | T + SH | t.ʃ / ʧ | U+02A7 | {pla,aff,vls} | chin | English
JH | D + ZH | d.ʒ / ʤ | U+02A4 | {pla,aff,vcd} | joy | English
JJ | J + J | j.j |  | {pal,aff,vcd} | hielo | Spanish
DZ | D + Z | d.z / ʣ | U+02A3 | {den,aff,vcd} | zona | Italian
CC | T + SC | t.ɕ / ʨ | U+02A8 | {pla,aff,vls} |  | Mandarin
TSR | T + SR | t.ʂ |  | {rfx,aff,vls} |  | Mandarin
JC | D + ZC | d.ʑ / ʥ | U+02A5 | {pla,aff,vcd} |  |

Many other affricates or compound consonants exist and may be required by other languages. For example, there are about 20 Italian geminate consonants (doubled consonants). UPS does not include dedicated phones for these, but allows them to be defined using the + symbol, or the length diacritic 'lng' in the case of geminates.

Vowels

This is a listing and cross reference of the vowel phones that are used by the three phonetic alphabets.

UPS Labeling Conventions for Vowels

The UPS labeling conventions for vowels were designed to make the phones more intuitive and maintain phonetic similarity across each class. The labels follow these conventions:

  • Cardinal or main vowels use single character labels
  • Non-cardinal vowels and common diphthongs use two characters
  • Maximum label length is three characters
  • Centralized vowel labels use X, as in AX, IX, UX
  • Checked vowel (usually must be followed by a consonant in a stressed syllable) labels use H, as in IH, UH
  • U or O signifies lip rounding, as in AU, AO, EU

Vowel Tables

There are four tables, each listing a different category of vowel phones:

  • Monophthong
  • Diphthong
  • German Diphthong
  • Nasal

Monophthong Vowel Phones

Monophthong (literally "one sound" or "one tone") vowels are those whose articulation at both beginning and end is relatively fixed, and which does not glide up or down towards a new position of articulation.

UPS | IPA | Unicode | IPA Description | ASCII-IPA | X-SAMPA | Example | Language
I | i | U+0069 | {hgh,fnt,unr,vwl} | I | i | feel | English
Y | y | U+0079 | {hgh,fnt,rnd,vwl} | Y | y | du | French
IX | ɨ | U+0268 | {hgh,cnt,unr,vwl} | i" | I\ |  |
YX | ʉ | U+0289 | {hgh,cnt,rnd,vwl} | U" | } |  |
UU | ɯ | U+026F | {hgh,bck,unr,vwl} | u- | M |  |
U | u | U+0075 | {hgh,bck,rnd,vwl} | u | u | too | English
IH | ɪ | U+026A | {smh,fnt,unr,vwl} | I | I | fill | English
YH | ʏ | U+028F | {smh,fnt,rnd,vwl} | I. | Y | hübsch | German
UH | ʊ | U+028ª | {smh,bck,rnd,vwl} | U | U | book | English
E | e | U+0065 | {umd,fnt,urd,vwl} | e | e | ses | French
EU | ø | U+00F8 | {umd,fnt,rnd,vwl} | Y | 2 | blöd | German
EX | ɘ | U+0258 | {umd,cnt,urd,vwl} | @<umd> | @\ |  |
OX | ɵ | U+0275 | {umd,cnt,rnd,vwl} |  | 8 |  |
OU | ɤ | U+0264 | {umd,bck,urd,vwl} | o- | 7 |  |
O | o | U+006F | {umd,bck,rnd,vwl} | o | o | go | English
AX | ə | U+0259 | {mid,cnt,unr,vwl} | @ | @ | ago | English
AX rho | ɚ | U+025ª | {mid,cnt,rho,vwl} | R |  | forensic | English
EH | ɛ | U+025B | {lmd,fnt,unr,vwl} | E | E | pet | English
OE | œ | U+0153 | {lmd,fnt,rnd,vwl} | W | 9 | plötzlich | German
ER | ɜ | U+025C | {lmd,cnt,unr,vwl} | V" | 3 | bird | UK English
ER rho | ɝ | U+025D | {lmd,cnt,unr,rho,vwl} | @. |  | bird | US English
UR | ɞ | U+025E | {lmd,cnt,rnd,vwl} | O" | 3\ |  |
H | ʌ | U+028C | {lmd,bck,unr,vwl} | V | V | cut | English
AO | ɔ | U+0254 | {lmd,bck,rnd,vwl} | O | O | dog | English
AE | æ | U+00E6 | {sml,fnt,unr,vwl} | & | { | cat | English
AEX | ɐ | U+0250 | {sml,cnt,unr,vwl} | 6 |  | Besser | German
A | a | U+0061 | {low,fnt,unr,vwl} | a | a | valle | Spanish
AOE | ɶ | U+0276 | {low,fnt,rnd,vwl} | &. | & |  |
AA | ɑ | U+0251 | {low,bck,unr,vwl} | A | A | father | English
Q | ɒ | U+0252 | {low,bck,rnd,vwl} | A. | Q | hot | English

Diphthong Vowel Phones

In addition to monophthongs, many languages contain diphthongs or even triphthongs. Diphthong (literally "two sounds" or "two tones") vowels are those that change quality during their pronunciation, or "glide", with a smooth movement of the tongue from one articulation to another, as in the English words eye, boy, and cow.

Diphthongs and triphthongs can be represented in UPS as vowel compounds, using the + symbol. However to make lexicons more readable, UPS also contains phones for common diphthongs. The table below shows both the compounding of two phones using the + symbol and the resultant UPS phone.

UPS Compound | UPS | IPA | X-SAMPA | Example | Language | Example | Language
E + I | EI | e.ɪ | eI | late | English | late | English
A + UH | AU | ɑ.ʊ | aU | foul | English | Haus | German
AO + I | OI | ɔ.ɪ | OI | toy | English | Kreuz | German
A + I | AI | ɑ.ɪ | ai | bite | English | Eis | German
I + AX | IYX | i.ə | i:6 | Tier | German | fear | English
Y + AX | UYX | y.ə | y:6 | Tür | German |  |
EH + AX | EHX | ɛ.ə | E6 | Berg | German | stairs | English
U + AX | UWX | u.ə | u:6 | Kur | German | lure | English
O + AX | OWX | o.ə | o:6 | Ohr | German | boa | English
AO + AX | AOX | ɔ.ə | O6 | dort | German | four | English

German Diphthong Vowels

The German language has several more centering diphthongs that must be represented as phone compounds and do not have explicit UPS phones assigned to them. The 'lng' diacritic is included for phonetic completeness.

UPS Compound | IPA | X-SAMPA | Example | Language
IH + AX | ɪ.ə | I6 | Wirt | German
YH + AX | ʏ.ə | Y6 | Türke | German
EY lng + AX | e.ə | e:6 | schwer | German
EH lng + AX | ɛ:.ə | E:6 | Bär | German
EU lng + AX | ø.ə | 2:6 | Föhr | German
OE + AX | œ.ə | 96 | Wörter | German
A lng + AX | a.ə | a:6 | Haar | German
A + AX | a.ə | a6 | hart | German
UH + AX | ʊ.ə | U6 | kurz | German

Nasal Vowel Phones

UPS contains phones for four nasal vowels. These are shown in the following table with French examples.

Compound | UPS | X-SAMPA | Example | Language
E nas | EN | e~ | vin | French
A nas | AN | a~ | vent | French
O nas | ON | o~ | bon | French
OE nas | OEN | 9~ | brun | French

Diacritics

This is a listing and cross reference of the diacritic phones that are used by the three phonetic alphabets.

Diacritic Phones

Diacritics are used to modify segmental phones (vowels, consonants, clicks, and ejectives) with additional phonetic detail. A diacritic cannot stand-alone. Diacritics must modify the preceding segmental phone. Any number of diacritics can follow a segmental symbol.

UPS | IPA | Unicode | IPA Description | ASCII-IPA | X-SAMPA
+ | ͡ | U+0361 | Tie bar |  | _
adv | o̟ | U+031F | Advanced |  | _+
api | t̺ | U+033A | Apical |  | _a
asp | tʰ | U+02B0 | Aspirated | ^lt;h> {asp} | _h
atr | e̘ | U+0318 | Advanced tongue root |  | _A
bvd | b̤ | U+0324 | Breathy voiced |  | _t
cen | ë | U+0308 | Centralized | " | _"
cvd | b̰ | U+0330 | Creaky voiced |  | _k
den | t̪ | U+032A | Dental | [ / {dnt} | _d
ejc | pʼ | U+02BC | Ejective | {ejc} | _>
lab | tʷ | U+02B7 | Labialised | <w> {lzd} | _w
lam | t̻ | U+033B | Laminal |  | _m
lar | dˡ | U+02E1 | Lateral release |  | _l
lla | n̼ | U+033C | Linguolabial |  | _N
low | e̞ | U+031E | Lowered |  | _o
lrd | o̜ | U+031C | Less rounded |  | _c
mcn | e̽ | U+033D | Mid-centralized |  | _x
mrd | o̹ | U+0339 | More rounded |  | _O
nar | d̚ | U+031A | No audible release |  | _}
nas | ñ | U+0303 | Nasalized | ~ / <nzd> | ~ / _~
nsr | oⁿ | U+207F | Nasal release |  | _n
nsy | n̯ | U+032F | Non-syllabic |  | _^
pal | tʲ | U+02B2 | Palatalized | ; / {pzd} | '
phr | nˤ | U+02E4 | Pharyngealized |  | _?\
rai | e̝ | U+031D | Raised |  | _r
ret | o̱ | U+0331 | Retracted |  | _-
rho | ə˞ | U+02DE | Rhoticity |  | `
rtr | e̙ | U+0319 | Retracted tongue root |  | _q
syl | n̩ | U+0329 | Syllabic | {syl} | = / _=
vcd | s̬ | U+032C | Voiced |  | _v
vel | tˠ | U+02E0 | Velarized | {vzd} | _G
vls | n̊ | U+030A | Voiceless |  | _0
vph | l̴ | U+0334 | Velarized or pharyngealized | {fzd} | _e

Suprasegmentals

This is a listing and cross reference of the suprasegmental phones that are used by the three phonetic alphabets.

Suprasegmental Phones

Suprasegmentals describe the features of a language above the level of individual consonants and vowels, such as prosody, tone, length, and stress.

The first set of suprasegmental symbols, up to and including “linking”, map directly to the IPA suprasegmental set and therefore have the IPA Unicode value. This set includes length diacritics for long, half-long, and extra-short. Length is often used phonemically, so length markers could also belong in the diacritics table. For this reason they are given the lower case label format of a diacritic.

The remaining suprasegmental symbols are used in UPS to describe intonation contours in text-to-speech markup (SSML prompt documents). These UPS symbols were formed by prefixing the original SAPI labels with an underscore. This makes them more easily identifiable as a class and removes any ambiguity with other IPA symbols. For example the old SAPI symbol '!' sentence terminator is the IPA symbol for an alveolar click.

UPS | IPA | Unicode | IPA Description | X-SAMPA | SAPI Equivalent
S1 | ˈ | U+02C8 | Primary stress | " | 1
S2 | ˌ | U+02CC | Secondary stress | % | 2
. | . | U+002E | Syllable break | . |
_| | | | U+007C | Minor (foot) group | | |
_|| | ‖ | U+2016 | Major (intonation) group | || |
lng | ː | U+02D0 | Long | : |
hlg | ˑ | U+02D1 | Half-long | :\ |
xsh | ˘ | U+02D8 | Extra-short | _X |
_^ | ‿ | U+203F | Linking (absence of a break) | -\ |
_! |  |  | Intonation - exclamation |  | ! Sentence terminator (exclamation mark)
_& |  |  | Intonation - continue |  | & Word boundary
_, |  |  | Intonation - incompletion rise |  | , Sentence terminator (comma)
_s |  |  | Silence |  | _ Silence (underscore)
_. | ↘ | U+2198 | Intonation – fall | <F> | . Sentence terminator (period)
_? | ↗ | U+2197 | Intonation - question rise | <R> | ? Sentence terminator (question mark)

Clicks and Ejectives

This is a listing and cross reference of the click and ejective phones that are used by the three phonetic alphabets.

Click and Ejective Phones

IPA uses a diacritic to describe ejectives, but has specific phones for clicks and implosives. Clicks and ejectives are voiceless consonants, although implosives may be partially voiced.

UPS | IPA | Unicode | IPA Description | X-SAMPA
PCK | ʘ | U+0298 | blb,clk | O\
TCK | ǀ | U+01C0 | dnt,clk | |\
NCK | ! | U+0021 | alv,clk | !\
CCK | ǂ | U+01C2 | pla,clk | =\
LCK | ǁ | U+01C1 | alv,lat,clk | |\|\
BIM | ɓ | U+0253 | blb,imp,vcd | b_<
DIM | ɗ | U+0257 | dnt-alv,imp,vcd | d_<
QIM | ʛ | U+029B | uvl,imp,vcd |
QIM vls | ʠ | U+02A0 | uvl,imp,vls |
GIM | ɠ | U+0260 | vel,imp,vcd | g_<
JIM | ʄ | U+0284 | pal,imp,vcd |
P ejc | pʼ | 0070 02BC | blb,ej | b_>
T ejc | tʼ | 0074 02BC | dnt-alv, ej | t_>
K ejc | kʼ | 006B 02BC | vel ej | g_>
S ejc | sʼ | 0073 02BC | alv fric ej | s_>
QT ejc | qʼ | 0071 02BC | uvl,ej |

Tones

This is a listing and cross reference of the tone phones that are used by the three phonetic alphabets.

Tone Phones

Tone describes the use of pitch in speech sounds to distinguish lexical or grammatical meaning. Lexical tones can follow a vowel or syllabic consonant. They can be made up of simple levels, on a universal scale which has a maximum of five level contrasts, or they can be contours composed of sequences of tones. A sequence of three tones should be sufficient to describe any tone contour.

IPA contains a mixture of lexical tones and contour tones. UPS covers the five lexical tones found in IPA, plus upstep and downstep. All contour tones can be represented in UPS by compound tones.

UPS does not include tonal symbols for the following IPA symbols: Rising, Falling, High Rising, Low Rising and Rising-Falling. These can all be defined in UPS using tone sequences. Global Rise and Global Fall are equivalent to "intonation – fall" and "intonation – question rise" in UPS ("Suprasegmentals").

UPS | IPA | Unicode | IPA Description | X-SAMPA
T5 | e̋ | U+030B | Extra high Level | _T
T4 | é | U+0301 | High Level | _H
T3 | ē | U+0304 | Mid Level | _M
T2 | è | U+0300 | Low Level | _L
T1 | ȅ | U+030F | Extra Low Level | _B
T- | ↓ | U+2193 | Downstep | !
T+ | ↑ | U+2191 | Upstep | ^

Other Phones

This is a listing and cross reference of the uncommon phones that are not listed in the other phone tables, but are used by the three phonetic alphabets.

Other Phones

UPS | IPA | Unicode | IPA Description | ASCII-IPA | X-SAMPA
WH | ʍ | U+028D | lbv,frc,vls | w<vls> | W
ESH | ʜ | U+029C | epl,frc,vls |  | H\
EZH | ʢ | U+02A2 | epl,frc,vcd |  | <\
ET | ʡ | U+02A1 | epl,stp |  | >\
SC | ɕ | U+0255 | pla,frc,vls |  | s\
ZC | ʑ | U+0291 | pla,frc,vcd |  | z\
LT | ɺ | U+027A | alv,lat,flp | *<lat> | l\
SHX | ɧ | U+0267 | simultaneous SH and X |  | x\
HZ | ɦ | U+0266 | glt,frc,vcd |  | h\