Балаболка (Text-To-Speech)

Балаболка

Програма "Балаболка" призначена для читання вголос текстових файлів. Для відтворення звуків людського голосу можуть використовуватися будь-які мовні синтезатори, встановлені на комп'ютері. Для того, щоб відкрити файл у програмі, скористайтеся пунктом головного меню "Файл | Відкрити". Для створення нового текстового документу виберіть пункт меню "Файл | Новий".

Відтворення мови можна контролювати за допомогою стандартних кнопок, подібних тим, що присутні в будь-якій мультимедійній програмі ("відтворити", "призупинити", "зупинити"); ці кнопки розташовані на панелі у верхній частині програми "Балаболка". Програма також вміє:

  • читати вголос вміст буфера обміну;
  • показувати текст, що міститься в AZW, AZW3, CHM, DjVu (DjVu+OCR), DOC, DOCX, EML, EPUB, FB2 (FB2.ZIP, FBZ), FB3, HTML, LIT, MD, MOBI, ODP, ODS, ODT, PDB, PDF, PPT, PPTX, PRC, RTF, TCR, WPD, XLS та XLSX файлах;
  • змінювати налаштування шрифту та кольору;
  • керувати процесом читання з системного трея (області повідомлень) або за допомогою глобальних сполучень клавіш;
  • вимовляти набраний на клавіатурі текст;
  • перевіряти орфографію;
  • ділити текстовий файл на кілька файлів меншого розміру;
  • порівнювати пари файлів.

"Балаболка" надає можливість видалити з тексту всі знаки переносу на кінцях рядків; це дозволить уникнути запинань при читанні слів.

Текст може бути збережений у вигляді аудіофайлу (підтримуються формати WAV, MP3, MP4, OGG, OPUS та WMA); для цього необхідно скористатися пунктами меню "Файл | Зберегти аудіофайл" або "Файл | Зберегти як декілька аудіофайлів". Існує можливість перетворити в аудіофайли список текстових файлів (пункт меню "Інструменти | Перетворити в аудіофайли").

Програма вміє працювати з різними версіями пакету мовних функцій Microsoft Speech API (SAPI) і Microsoft Speech Platform. Він дозволяє змінювати швидкість мови і висоту звуку.

Користувач може використовувати спеціальний список замін для поліпшення якості відтворення мови. Це корисно в тих випадках, коли є необхідність змінити вимову слів або окремих складів; для цього деякий вираз в тексті замінюється на необхідний читаний вираз. Для запису подібних правил заміни використовується два види файлів:

  • правила заміни засновані на синтаксисі регулярних виразів; списки правил для голосових движків зберігаються у файлах з розширенням *.rex;
  • файли з розширенням *.dic; у зв'язку з великою популярністю серед російських користувачів програми "Говорілка", для якої створено кілька словників, коригуючих вимову слів, "Балаболка" також дозволяє використовувати даний формат словників.

Файли зі списками замін повинні зберігатися в каталозі Документы\Balabolka (або Мои документы\Balabolka в Windows XP). Якщо використовується словник для корекції вимови, то при читанні тексту підсвічується речення або абзац повністю; в іншому випадку програма виділяє лише поточне слово.

Примітка. У portable-версії словники знаходяться в підкаталозі Dictionaries в тій же папці, де і сама програма.

WWW: balabolka.site

E-mail: crossa@list.ru

© 2006-2020 Илья Морозов


Мовні синтезатори (голоси)

Speech Application Programming Interface або SAPI - це пакет мовних функцій, розроблений корпорацією Microsoft для того, щоб програми могли використовувати комп'ютерний синтез мови. Існують дві основні версії SAPI (SAPI 4 і SAPI 5), які не сумісні одна з одною.

SAPI 4 (Microsoft Speech API 4.0)

Все голоса, поддерживающие только SAPI 4, устарели и более не рекомендуются к использованию. Воспользуйтесь свежими версиями речевых синтезаторов.

SAPI 5 (Microsoft Speech API 5.x)

Ярослав Козак зі Львова створив український синтезатор мови UkrVox. За основу взято голос диктора українського радіо Ігоря Мурашко.

  • UkrVox

Ольга Яковлева разработала многоязычный синтезатор речи с открытым исходным кодом RHVoice (доступны украинский, английский, грузинский, киргизский, русский, татарский языки и эсперанто):

  • Описание синтезатора речи
  • Версия для Windows

Для одержання високої якості звучання слід використовувати платні комерційні синтезатори мови (Acapela Group, Cepstral, IVONA та ін.).

Комерційні синтезатори мови:

  • CyberMova - голоси для озвучення українських текстів
  • Acapela Group (demo)
  • Alfanum (demo)
  • Cepstral (demo)
  • IVONA (demo)
  • Nuance/Cerence (demo)
  • ReadSpeaker (demo)

Для російських користувачів інтерес представляють такі голоси:

  • Alyona (Acapela Group)
  • Katya, Milena і Yuri (Nuance)
  • Nicolai (Digalo - Acapela Elan Speech Cube)
  • Tatyana і Maxim (IVONA)

Microsoft Speech Platform

Microsoft Speech Platform - набор инструментов, позволяющих разработчикам строить решения с распознаванием голоса и перевода голоса в текст.

Для работы синтезатора речи необходимо загрузить и установить следующие компоненты Microsoft Speech Platform (версия 11.0):

  • Microsoft Speech Platform - Runtime – серверная часть платформы, предоставляющая API для программ (файл x86_SpeechPlatformRuntime\SpeechPlatformRuntime.msi).
  • Microsoft Speech Platform - Runtime Languages – набор языков для серверной части. На данный момент предлагаются голоса для 26 языков, в том числе русский голос Elena (файлы, чьи имена начинаются с "MSSpeech_TTS_").

Теги (управляющие команды), которые используются для голосов SAPI 5, могут применяться и для голосов Microsoft Speech Platform. Но следует помнить, голоса SAPI 5 и голоса Microsoft Speech Platform несовместимы друг с другом, поэтому нельзя переключаться между ними при помощи тегов Voice или Lang.


Командний рядок

"Балаболка" може отримувати параметри з командного рядка:

balabolka.exe [-опції] [ім'я_файлу] [аудіофайл] [голос]

Параметр голос вказується наступним чином:

ім'я_голосу [rШвидкість] [pВисота]

ім'я_файлу
відкрити текстовий файл

-c
прочитати вголос текст з буфера обміну

-c голос
вибрати голос і прочитати вголос текст з буфера обміну

-m
мінімізувати програму під час запуску

-r ім'я_файлу
відкрити файл і почати читання вголос з початку тексту

-r ім'я_файлу голос
відкрити файл, вибрати голос і почати читання вголос з початку тексту

-s ім'я_файлу аудіофайл
відкрити файл і зберегти текст у вигляді аудіофайлу (WAV, MP3, MP4, OGG або WMA)

-s ім'я_файлу аудіофайл голос
відкрити файл, вибрати голос і зберегти текст у вигляді аудіофайлу

-q
закрити програму після закінчення читання

Для того, щоб програма вибрала певний голос (мовний синтезатор), достатньо вказати одне слово з його назви; наприклад: Boris. Програма виконає пошук відповідного голосу спочатку в списку мовних "движків" SAPI 5, потім SAPI 4.

Можна одночасно вказати кілька опцій:

-rm ім'я_файлу
мінімізувати програму під час запуску і почати читання файлу

-rq ім'я_файлу
виконати читання файлу і закрити програму

Наприклад:

balabolka.exe book.txt

balabolka.exe book.txt "Speech Cube Russian"

balabolka.exe -rmq book.txt

balabolka.exe -sq "c:\my books\book.txt" "c:\my files\book.wav"

balabolka.exe -s "c:\my books\book.txt" "c:\my files\book.wav" Katerina

balabolka.exe -r "c:\my books\book.txt" Nicolai r2

balabolka.exe -c "Cepstral Callie"

Якщо у командному рядку необхідно вказати не ім'я текстового файлу, а рядок тексту для читання, слід додати в опції спеціальний параметр-модифікатор:

-n [рядок_тексту]
Присутність цього параметру означає, що у командному рядку замість імені файлу задано рядок тексту (текст має бути в "лапках")

Наприклад:

balabolka.exe -n "Це текст."

balabolka.exe -rn "Ще один приклад тексту." Igor

balabolka.exe -snq "Запис тексту в аудіофайл." "c:\my files\book.mp3"


Перевірка орфографії

Прикладна програма використовує для перевірки орфографії бібліотеку функцій Common Speller API (CSAPI) і словники, що входять до складу програмного продукту Microsoft Office 97/2000. Ви можете завантажити модуль перевірки орфографії з сайту програми "Балаболка".

Під час редагування тексту користувач може використовувати контекстне меню для перевірки правопису. Натиснувши правою кнопкою на помилковому слові, Ви можете вибрати правильне слово із запропонованих варіантів або, вибравши пункт контекстного меню "Додати слово до словника", вставити поточне слово до словника користувача.

Також існує можливість редагування опису з використанням діалогового вікна "Перевірка правопису" (щоб відкрити його, слід вибрати пункт меню "Текст | Перевірка правопису"). Вікно містить такі кнопки:

  • Замінити - замінити поточне слово правильним словом з запропонованого списку варіантів.
  • Замінити усе - замінювати у всіх випадках використання поточне слово на правильне слово із запропонованого списку варіантів.
  • Пропустити - ігнорувати поточне слово і перейти до наступного помилкового слова.
  • Пропустити усе - ігнорувати поточне слово в усіх випадках його використання. Дане слово не вважатиметься помилковим в ході всього сеансу роботи користувача з програмою "Балаболка".
  • Додати - вставити поточне слово до словника користувача.

"Словник користувача" являє собою список слів у формі текстового файлу; цей файл має розширення *.dic. Словник використовується під час перевірки орфографії для додавання тих слів, які користувач не вважає помилковими. Microsoft Office 97/2000 зберігає словник користувача тут: c:\Program Files\Common Files\Microsoft Shared\Proof\custom.dic.

"Балаболка" допускає одночасне застосування двох словників для перевірки орфографії (для цього слід поставити "галочку" в пункті Друга мова). У цьому випадку діалогове вікно для перевірки правопису буде недоступним; можна використовувати лише контекстне меню.

Програма може використовувати Hunspell (hunspell.github.io). Hunspell - це програма для перевірки орфографії, призначена для мов зі складною системою словотворення і великою морфологією. Hunspell використовується з пакетом офісних прикладних програм OpenOffice.org та у браузері Mozilla Firefox.

Словники для Windows можна завантажити з сайту "Балаболки".

Приложение позволяет использовать систему проверки правописания, встроенную в операционную систему. Spell Checking API доступен в Windows 8 и выше.


Пошук і заміна тексту

Программа позволяет использовать в окнах "Найти" и "Заменить" большинство из специальных кодов, которые применяются в Microsoft Word (регистр букв имеет значение):

^p
знак абзаца
^t
знак табуляции
^nnn
знак ASCII (где nnn - код знака)
^0 nnn
знак ANSI (где 0 - это ноль, а nnn - код знака)
^U nnnnn
знак в кодировке Юникод (где nnnnn - код знака)
^+
длинное тире ( — )
^=
короткое тире ( – )
^^
знак крышки
^s
неразрывный пробел
^?
любой знак (только в поле "Найти")
^#
любая цифра (только в поле "Найти")
^$
любая буква (только в поле "Найти")
^c
содержимое буфера обмена Windows (только в поле "Заменить на")
^&
содержимое поля "Найти" (только в поле "Заменить на")


Часті запитання

Отримую повідомлення про помилку "OLE error 80045042". Що це означає?

Ця помилка пов’язана з XML тегами, присутніми в тексті, що читається. Або відсутній завершальний тег, або SAPI помилково сприймає символи "<" чи ">" за частину XML тегу. Якщо Ви не хочете використовувати керуючі теги, видаліть усі символи "<" та ">" з тексту (або замініть їх на словосполучення "менее чем" та "более чем").

Де я можу знайти SAPI 4?

Для того, щоб використовувати голоси SAPI 4, необхідно завантажити та встановити пакет функцій Microsoft Speech API 4.0 (824 KB). Також, можна завантажити та встановити Microsoft Speech Control Panel (840 KB); після цього в панелі керування додасться іконка панелі налаштувань мови.

Де я можу знайти SAPI 5?

Windows XP (і більш пізні версії) вже містить SAPI 5.

Як дізнатися, які саме голоси встановлені на моєму комп'ютері?

Список встановлених голосів можна подивитися тут: Control Panel (Панель керування) -> Speech (Речь) -> Speech Properties (Властивості мови) -> Text To Speech (Перетворення тексту в мову) -> Voice selection (Вибір голосу).

Використовую програму "Балаболка" і голос Alyona. При читанні деяких слів чи словосполучень отримую повідомлення про помилку, в якому згадується "\MyCvs\ressynth\selection_pagel\src\selector_engine.cpp". Що це за помилка і як її позбавитися?

Це помилка в движку голосу Alyona. Спробуйте додати проблемне слово або словосполучення в Lexicon Manager, який входить до складу голосу. Також, рекомендується завантажити і встановити найостаннішу версію голоса з сайту Acapela Group.

Голос Nicolai вимовляє "пространство" кожного разу, коли в тексті зустрічається нерозривний пробіл (символ ALT+0160). Як це виправити?

Програма може автоматично замінювати нерозривні пробіли звичайними пробілами під час читання. Виберіть пункт головного меню "Налаштування | Загальні налаштування", у вікні "Загальні налаштування" (закладка "Читання") поставте "галочку" в пункті "Ігнорувати символи під час читання". Додайте нерозривний пробіл в список ігнорованих символів: натисніть клавішу ALT і надрукуйте "0160" на цифровому блоці клавіатури. Можна вказатий інші символи, які голоси вимовляють вголос ("лапки", "тире" і так далі).

Я відкриваю в програмі файл у форматі DjVu, але текст відсутній. У чім справа?

Формат DjVu було розроблено для зберігання сканованих документів. Тобто, в DjVu-файлах у стиснутому вигляді зберігаються графічні зображення сторінок книг, журналів тощо. Також, формат DjVu передбачає наявність текстового (OCR) шару, який містить текст зі сторінки. Файли з текстовим шаром інколи позначають як DjVu+OCR.

Програма "Балаболка" вміє витягувати дані лише з текстового шару. У випадку, якщо текстовий шар недоступний, єдиний метод отримання тексту - це виконання оптичного розпізнавання, наприклад, у FineReader.

У мене 64-бітна версія Windows. Встановив 64-бітний модуль Runtime для Microsoft Speech Platform, а також комп'ютерний голос. Але в списку доступних голосів у програмі "Балаболка" порожньо. У чому справа?

"Балаболка" є 32-бітною прикладною програмою. Тому необхідно встановити 32-бітний модуль Runtime для Microsoft Speech Platform.

Мне требуется удалить из текста тире, стоящие в начале строки. Как это сделать?

Ответ

Воспользуйтесь пунктом главного меню "Правка | Заменить". В строке "Найти" напишите ^p—, в строке "Заменить на" укажите ^p. Подробнее о специальных кодах, используемых для поиска и замены, можно узнать здесь.

Що таке Google Text-To-Speech?

При використанні сервісу перекладу на сайті Google, поряд з перекладеним текстом є кнопка "Listen" ("Слухати"). При її натисненні браузер викачує з сайту Google звуковий файл у форматі MP3 з озвученим перекладом. Доступний синтез мови для більш ніж 30 мов. Сервіс надає можливість озвучувати тексти завдовжки не більше 100 символів. Програма "Балаболка" дозволяє обійти це обмеження: великі тексти діляться на дрібні частини, для кожної частини тексту викачується звуковий файл, потім усі файли об'єднуються в один аудіофайл (підтримуються формати WAV, MP3 та OGG).

Відкриваю в програмі електронну книгу, але текст у вікні "Балаболки" відсутній. У чому справа?

Цьому може бути кілька пояснень. По-перше, файл може являти собою набір відсканованих зображень сторінок паперової книги. По-друге, електронна книга може мати захист DRM. Програма "Балаболка" не має можливості витягти текст з книги з таким захистом (це було б незаконно).

Мене не задовольняє, як програма "Балаболка" витягує текст з файлів формату PDF. Можу я використовувати інший спосіб для обробки файлів PDF?

Процес витягу тексту з файлів формату PDF є досить складним, оскільки файл PDF не містить звичайного тексту. Ви можете використовувати для витягу тексту зовнішню програму, що підтримує передачу параметрів в командному рядку. Наприклад, утиліту pdftotext.exe зі складу проекту Xpdf. Скопіюйте pdftotext.exe в підкаталог "utils" в папці програми "Балаболка", виберіть пункт головного меню "Налаштування | Імпорт тексту", закладку "Зовнішні програми для імпорту тексту", та натисніть кнопку "Додати". Задайте команду для використання pdftotext.exe:

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

Введіть ім'я для даного формату (наприклад, "Xpdf Converter"), розширення файлу ("PDF") і кодування тексту ("UTF-8"). Після того, як буде вибрано пункт Використовувати замість методу витягу тексту за замовчуванням для даного формату файлів, програма зможе використовувати зовнішню утиліту для витягу тексту з файлів формату PDF.

Що являє собою "читання за методом Spritz"?

Це технологія швидкого читання, розроблена американською компанією Spritz. Суть методу полягає в розбитті тексту на окремі слова та їх послідовному показі з кольоровим виділенням точки оптимального розпізнавання. Це дозволяє досягти швидкості читання до 1000 слів за хвилину без спеціальних тренувань. Основний принцип технології полягає в тому, що значна кількість часу втрачається на переміщення погляду від одного слова до іншого. Показуючи користувачеві слова, що замінюють одне одного на одному й тому ж місці, технологія Spritz домагається ефекту, коли рух очей зводиться майже до нуля. Залишається лише питання в швидкості, з якою мозок людини здатен обробляти прочитані слова та пов'язувати їх між собою.

Операционная система Windows 10, кроме голоса "Ирина", содержит также голос "Павел". Этот голос отображается в панели управления Windows, но в программе "Балаболка" в списке доступных голосов его нет. Как получить доступ к голосу "Павел" в Windows 10?

Голос Microsoft Pavel Mobile предназначен для использования в приложениях из магазина Windows Store. По умолчанию к голосу нельзя обратиться при помощи функций SAPI 5. Однако, есть простой способ решить данную проблему. Скачайте архив, извлеките из него файл для соответствующей версии операционной системы ("pavel_x86.reg" для 32-битной версии и "pavel_x64.reg" для 64-битной версии), кликните правой кнопкой мыши на имени файла и выберите пункт "Слияние" в контекстном меню. Параметры голоса будут добавлены в системный реестр Windows, и голос станет доступен в программе "Балаболка".

Файлы для других языков можно скачать отсюда.

В некоторых текстах встречаются длинные адреса в Интернете. Как сделать так, чтобы компьютерный голос читал вслух адреса упрощенным способом?

Можно решить эту проблему путем добавления правила в словарь формата REX. Это может быть, например, такое регулярное выражение:

((http|ftp|https)://)?(www\.)?([-a-zA-Z0-9@:%._\+~#\=]{2,256}\.[a-z]{2,6}\b)([-a-zA-Z0-9@:%_\+.~#?&//\=]*)=$4

В результате применения правила в тексте останется лишь имя домена (например, "test.ru").

Можно ли сделать так, чтобы при преобразовании документа в несколько звуковых файлов в качестве имени файла использовалась первая строка текста (например, "01 Глава первая.mp3", "02 Глава вторая.mp3")?

В окне "Разделить текст на части и преобразовать в аудиофайлы" в поле "Шаблон для имени файла" вставьте переменную %FirstLine%. При делении текста программа заменит переменную на содержимое первой строки каждой части текста. Для того, чтобы вставить порядковый номер файла внутрь имени, используйте переменную %Number%.

Как сохранять речь в виде звуковых файлов формата FLAC?

Программа позволяет использовать разные кодеки для создания звуковых файлов. Необходимо указать командную строку для вызова внешней программы; например, можно использовать утилиту FLAC.EXE, созданную некоммерческой организацией Xiph.Org Foundation. В программе "Балаболка" выберите пункт главного меню "Настройки | Аудиофайлы", закладку "Другие кодеки". Нажмите кнопку "Добавить" и укажите значения для параметров: название (например, "Аудиофайлы FLAC"), расширение файла (FLAC) и командную строку.

C:\Utils\flac.exe %Input% -o %Output%

Переменная %Input% обозначает имя входного файла с расширением WAV (файл формата RIFF WAVE), переменная %Output% - имя звукового файла в формате FLAC. Файл FLAC.EXE можно скопировать в ту же папку, где находится "Балаболка"; переменная %BFolder% обозначает путь к этой папке.

Что такое интерфейс IFilter?

Интерфейс IFilter - набор классов для извлечения текста из документов; фильтр IFilter реализован в виде плагина. Такие плагины используются для систем полнотекстового поиска. Некоторые фильтры устанавливаются автоматически с различными приложениями; другие плагины пользователь должен скачать и установить самостоятельно. Несколько бесплатных фильтров можно найти на сайте IFilter.org. Программа "Балаболка" является 32-битным приложением, поэтому необходимо установить 32-битные версии плагинов.

Как сменить голос во время чтения вслух?

Можно воспользоваться тегами SAPI 5. Рекомендуется вставлять стартовый тег и парный ему завершающий тег внутрь одного и того же абзаца. Например:

<voice required="Name=Microsoft Irina Desktop">Привет, как дела?</voice>
<voice required="Name=IVONA 2 Tatyana">Всё в порядке.</voice>

Могу ли я использовать в видео для YouTube звуковые файлы, созданные в программе "Балаболка"?

"Балаболка" является бесплатным программным продуктом, поэтому пользователь может использовать звуковые файлы, созданные приложением, по своему усмотрению. Но если применяется коммерческая версия компьютерного голоса, необходимо связаться с разработчиками этого голоса и приобрести специальную лицензию для его коммерческого использования. Такая лицензия позволит легально осуществлять распространение аудиоматериалов.

Фирмы, выпускающие компьютерные голоса, предоставляют два вида лицензий: для индивидуального использования (for personal use) и для коммерческого использования и распространения аудиоматериалов (for commercial use/audio broadcast). Если пользователь намерен использовать синтез речи в видео на YouTube или собирается включить звуковые файлы, созданные в программе "Балаболка", в состав своего программного продукта, необходимо приобрести у фирмы-изготовителя голоса соответствующую лицензию.

Например, вот что написано по этому поводу на сайте компании Cepstral: "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."

Вопрос

Как использовать программу "Балаболка" совместно с программой для изменения голоса в реальном времени (например, AV Voice Changer Diamond или Voxal Voice Changer)?

Ответ

Потребуется установка дополнительного программного обеспечения, "виртуального аудиокабеля": он называется так потому, что создает набор виртуальных звуковых устройств, которые можно соединять между собой виртуальным кабелем. Можно порекомендовать, например, Virtual Audio Cable или VB-Cable. После установки и настройки программного обеспечения, в Балаболке в окне "Выбор аудиоустройства" необходимо выбрать виртуальный аудиокабель, который соединит выход программы для чтения вслух со входом программы для изменения голоса. Таким образом, две звуковые программы будут соединены в цепочку так, что вторая программа получает звук непосредственно от первой программы.


Використання списків замін

Панель словників

Програма надає можливість використання спеціальних списків замін ("словників") для поліпшення вимови слів. Це текстові файли, кожен рядок яких містить по одному правилу заміни. У правилах можуть використовуватися регулярні вирази (імена таких файлів мають розширення *.rex) або шаблони (імена файлів з розширенням *.dic).

Коли користувач дає команду програмі прочитати текст вголос, "Балаболка" перевіряє за словником, які слова в тексті потребують корекції вимови, і застосовує відповідні правила заміни зі словника. Потім змінений текст пересилається до буферу комп'ютерного голосу, і голос читає текст вголос.

Щоб переглянути список словників, використовуваних програмою, необхідно вибрати пункт головного меню "Вигляд | Показувати | Панель словників" або натиснути клавішу F11. У правій частині головного вікна програми відобразиться список імен файлів; він розділений на дві частини:

  • верхня частина - файли зі списками замін;
  • нижня частина - файли зі списками омографів.

Різні комп'ютерні голоси можуть використовувати різні списки замін. Користувач може вибрати потрібні файли в списку за допомогою "галочок".

Для створення нового словника необхідно клацнути правою кнопкою миші на панелі словників, в контекстному меню вибрати пункт "Новий" і потім ввести ім'я файлу нового словника. Після цього файл буде створений на диску, і його ім'я відобразиться у списку на панелі.

Якщо необхідно внести зміни до списку замін, користувач повинен вибрати в списку потрібний файл і натиснути кнопку "Редагувати". Відкриється вікно редагування списку замін. Для додавання нового правила заміни необхідно заповнити поля "Вимовляти це:" і "як:", потім натиснути кнопку "Додати". По завершенню процесу редагування слід натиснути кнопку "Зберегти" і покинути вікно редактора.

Загальний список правил

Якщо одночасно відзначені "галочками" кілька імен файлів в списку, правила з цих словників автоматично об'єднуються програмою в єдиний список, що зберігається в пам'яті комп'ютера. Щоб подивитися цей список, необхідно клацнути правою кнопкою миші на панелі словників і вибрати пункт "Показати список" у контекстному меню.

Коли правила з різних файлів об'єднуються в загальний список, це відбувається наступним чином:

  • правила з файлів *.rex додаються послідовно, одне за іншим, як вони розташовані всередині словника; файли обробляються за алфавітним порядком їх імен.
  • усі правила з файлів *.dic упорядковано таким чином, що спочатку йдуть правила, чутливі до регістру літер, потім правила, не чутливі до регістру; після цього правила упорядковано ще раз за довжиною шаблону - ті, що мають найбільшу довжину шаблону в символах, розташовуються ближче до початку списку.

Порядок проходження правил всередині списку важливий у тих випадках, коли до одного і того ж слова в тексті можуть бути застосовані кілька правил. Програма "Балаболка" виконує заміни послідовно, тобто друге правило буде застосоване до тексту, який вже був змінений першим правилом зі списку. У цьому випадку порядок застосування правил відіграє велику роль.

Правила з файлів з розширенням *.rex будуть застосовані до тексту в першу чергу. Щоб перевірити результат застосування правил зі списків замін до тексту в поточному документі, можна скористатися пунктами головного меню "Налаштування | Корекція вимови | Показати змінений текст" та "Налаштування | Корекція вимови | Статистика замін".

Додаткові інструменти

Щоб знайти пари правил, які нададуть вплив на один і той же текст, необхідно вибрати пункт головного меню "Налаштування | Корекція вимови | Знайти пари правил". Це дозволить відшукати ті правила, які ніколи не будуть застосовані через те, що інше правило вже модифікувало даний вираз в тексті.

Найчастіше корекція вимови потрібна для імен людей, географічних назв, кличок тварин, назв організацій і т.д. Пошук таких слів у поточному документі можна полегшити за допомогою пункту головного меню "Налаштування | Корекція вимови | Знайти імена у тексті" . Програма "Балаболка" надає можливість переглянути три списки знайдених слів:

  • імена (слова, які в поточному документі завжди починаються з великої літери);
  • усі слова з першою великою літерою;
  • усі слова, виявлені в тексті документу.

При переміщенні за списком слів програма буде автоматично читати слово вголос. Якщо слово читається неправильно, його вимову можна виправити, додавши нове правило до словника. Список знайдених імен можна відсортувати або за алфавітним порядком, або за частотою використання слова в тексті. Також, можна заборонити показувати слова, які зустрічаються в тексті всього кілька разів; це дозволить прискорити перевірку списку імен, знайдених в поточному документі.

Профілі

Поточні налаштування панелі словників можуть бути збережені у вигляді "профілів". Для створення і редагування профілів необхідно використовувати пункт головного меню "Налаштування | Корекція вимови | Профілі".


REX-файли зі списками замін

Кожен рядок такого файлу містить шаблон регулярного виразу і текст, яким буде замінено даний шаблон в тексті; між ними стоїть знак рівності. Необхідно зауважити, що заміни здійснюються в тому порядку, в якому вони розташовані в REX-файлі. Наприклад, для двох рядків:

крыса=мышь
мышь=хомяк

слово "крыса" буде замінено на "хомяк". Слід бути уважними і звертати увагу не лише на синтаксис правил заміни, а й на послідовність їх розташування.

Рядки коментарів починаються зі знаку "решітка" (#).

За замовчуванням програма не враховує відмінностей між великими та малими літерами при розгляді шаблонів регулярних виразів. Якщо регістр літер має значення, необхідно додати символ "@" на початок рядка. Наприклад:

@МАГ=Міжнародна асоціація геодезії

Нижче наводиться список спеціальних символів, що застосовуються в регулярних виразах.

Символи | Опис
\ | Для символів, які зазвичай розглядаються літерально, вказує, що наступний символ є спеціальним символом і не інтерпретується літерально. Наприклад, "b" збігається з символом "b". Помістивши зворотну похилу риску перед "b", тобто "\b", надаємо символу спеціального значення - "межа слова". Або: Для символів, які зазвичай розглядаються як спеціальні, вказує, що наступний символ є не спеціальним символом і має інтерпретуватися літерально. Наприклад, "*" це спеціальний символ. Щоб шукати "*" літерально, поставте перед ним зворотну похилу риску; наприклад, "a\*" співпадає з "a*", "\=" співпадає з "=".
^ | Збіг з початку введення. Наприклад, "^A" не збігається з "A" у рядку "an A", але збігається з першою "A" у рядку "An A".
$ | Збіг наприкінці введення. Наприклад, "t$" не збігається з "t" в "eater", але збігається з ним у "eat".
* | Збіг з попереднім символом нуль або більше разів. Наприклад, "bo*" збігається з "boooo" в "A ghost booooed" і з "b" в "A bird warbled", але нічого не збігається в "A goat grunted".
+ | Збіг з попереднім символом один або більше разів. Еквівалентно {1,}. Наприклад, "a+" збігається з "a" в "candy" і з усіма "a" в "caaaaaaandy".
? | Збіг з попереднім символом нуль або один раз. Наприклад, "e?le?" збігається з "el" в "angel" і з "le" в "angle".
. | Збігається з будь-яким поодиноким символом, виключаючи символ нового рядка. Наприклад, ".n" збігається з "an" і "on" в "nay, an apple is on the tree", але не з "nay".
(x) | Збігається з "x" і запам'ятовує збіг. Це називається "захоплюючі дужки". Використовувати підрядок, що був запам'ятований, можна за допомогою спеціального символу $N, де N - це порядковий номер підрядка у шаблоні. Наприклад, "(foo)" збігається з і запам'ятовує "foo" в "foo bar".
x|y | Збігається з "x" або з "y". Наприклад, "green|red" збігається з "green" в "green apple" і з "red в "red apple".
{n} | Де n це позитивне ціле. Збігається точно з n появ попереднього елементу. Наприклад, "a{2}" не збігається з "a" в "candy", але збігається з усіма "a" в "caandy" і з першими двома "a" в "caaandy".
{n,} | Де n це позитивне ціле. Збігається з не менш, ніж n появ попереднього елементу. Наприклад, "a{2,}" не збігається з "a" в "candy", але збігається з усіма "a" в "caandy" і в "caaaaaaandy".
{n,m} | Де n і m це позитивні цілі. Збігається з мінімум n і з максимум m появ попереднього елементу. Наприклад, "a{1,3}" не збігається ні з чим в "cndy", збігається з "a" в "candy", з першими двома "a" в "caandy" і з першими трьома "a" в "caaaaaaandy". Зверніть увагу, що при збігу з "caaaaaaandy", збігається "aaa", хоча оригінальна рядок містить більше "a".
[xyz] | Набір символів. Збіг з одним із символів у дужках. Можна специфікувати діапазон символів за допомогою тире (дефиса). Наприклад, [abcd] це те ж саме, що [a-d]. Збігається з "b" в "brisket" і з "c" в "ache".
[^xyz] | Заперечний набір символів. Тобто збіг з тим, що не укладено в дужки. Можна специфікувати діапазон символів за допомогою тире (дефиса). Наприклад, [^abc] це те ж саме, що [^a-c]. З початку збігається з "r" в "brisket" і з "h" в "chop".
\b | Збігається з межею слова, такою як пробіл. Наприклад, "er\b" збігається з "er" в "never", але не з "er" в "verb".
\B | Збіг не в кінці слова. Наприклад, "ea*r\B" збігається з "ear" в "never early".
\d | Збігається з цифрою. Еквівалентно [0-9]. Наприклад, "\d" або "[0-9]" збігається з "2" в "B2 is the suite number".
\D | Збігається з символом, що не є цифрою. Еквівалентно [^0-9]. Наприклад, "\D" або "[^0-9]" збігається з "B" в "B2 is the suite number".
\f | Збігається з прогоном (form-feed) сторінки.
\n | Збігається з символом нового рядка.
\r | Збігається з "поверненням каретки".
\s | Збігається з поодиноким символом пробілу. Еквівалентно "[ \f\n\r\t\v]".
\S | Збігається з поодиноким символом, відмінним від пробілів. Еквівалентно "[^ \f\n\r\t\v]".
\t | Збігається із символом табуляції.
\v | Збігається з символом вертикальної табуляції.
\w | Збігається з будь-яким алфавітним або цифровим символом, включаючи символ підкреслення. Еквівалентно "[A-Za-z0-9_]". Наприклад, "\w" збігається з "a" в "apple", "5" в "5,28" і "3" в "3D".
\W | Збігається з будь-яким не-словом. Еквівалентно "[^A-Za-z0-9_]". Наприклад,"\W" або "[^$A-Za-z0-9_]" збігається з "%" в "50%".
\num | Де num це позитивне ціле. Зворотнє посилання на останній збіг підрядка. Наприклад,"(.)\1" збігається з двома однаковими символами, що стоять поруч.
\xhh | Збігається з символом з кодом hh (два шістнадцяткові числа). Наприклад, "\x41" збігається з літерою "A".
\x{hhhh} | Збігається з символом з кодом hhhh (чотири шістнадцяткові числа). Наприклад, "\x{00dc}" збігається з літерою "Ü".

Программа "Балаболка" поддерживает специальные символы для изменения регистра букв.

Символи | Опис
\U | Переводит все последующие буквы в верхний регистр, пока не встретятся символы \L или \E.
\L | Переводит все последующие буквы в нижний регистр, пока не встретятся символы \U или \E.
\E | Завершает действие символов \U и \L.
\u | Переводит следующую букву в верхний регистр.
\l | Переводит следующую букву в нижний регистр.

Например, выражение:

(тест)=\U$1\E

заменит слово "тест" на "ТЕСТ".


DIC-файли зі списками замін

Кожен рядок такого файлу містить шаблон і текст, яким буде замінено даний шаблон в тексті; між ними стоїть знак рівності (=). У першу чергу розглядаються шаблони з максимальною кількістю літер.

Рядки коментарів починаються зі знаку "решітка" (#).

За замовчуванням програма не враховує відмінностей між великими та малими літерами при розгляді шаблонів. Якщо регістр літер має значення, необхідно додати символ "$" на початок рядка. Наприклад:

$МАГ=Міжнародна асоціація геодезії

За замовчуванням шаблон являє собою окреме слово (або кілька слів), обмежене пробілами або розділовими знаками. Якщо шаблон є частиною слова, то для позначення того, що перед текстом або після нього можуть бути будь-які символи, використовується символ "*" (зірочка). Наприклад:

авто*=авта

Це правило буде застосовано до слів "автомобиль", "автокатастрофа" і т. д. Щоб використовувати в тексті спеціальні символи ("#", "*", "$", "="), необхідно записати їх двічі на відповідному місці, наприклад:

**=звёздочка

У цьому випадку окремий символ "*" в тексті буде читатися як "звёздочка".

Щоб поміняти наголос, в текст можна вставляти пробіли або подвійні голосні букви, наприклад: "бигудии", "про скакать". Прийоми зміни наголосів можуть бути різні і залежать від особливостей голосового движка. Іноді доводиться поекспериментувати, щоб домогтися потрібного результату.

Необхідно зауважити, що словники для Digalo Russian Nicolai не завжди вдасться використати для голосів SAPI 5, так як кутові дужки, що позначають наголос в словниках для голосів Digalo, використовуються для позначення службових тегів в SAPI 5.

Щоб уникнути пауз при читанні тексту, можна заздалегідь зменшити список замін, залишивши тільки ті з них, які дійсно будуть застосовані програмою. Для цього скористайтеся пунктом головного меню "Статистика замін"; програма покаже список тих замін, які були виконані в поточному тексті; даний список можна зберегти як новий словник корекції вимови та використовувати для читання тексту вголос.


Омографи

Слова, однакові за написанням, але різні за вимовою, називаються омографами, іноді їх також називають графічними омонімами. Однією з основних причин виникнення омографів в російській мові є різний наголос: зáмок – замóк. Омографи також виникають через те, що в текстах зазвичай не проставляють крапки над ё, наприклад: небо (нéбо і нёбо), берет (берéт і берёт).

Омографи іншого типу в російській мові досить рідкісні. Іноді вони виникають через різне прочитання літери ч: У него, сердечного, сердечная болезнь или Конечно, это множество конечно (обидва рази в першому випадку звук [ш], у другому - [ч']). Словоформи теста, тесту, тестом, в тесте можуть відноситися до різних слів і в зв'язку з цим по-різному читатися: пирожки из слоеного теста (з м'якою першою т), результаты психологического теста (з твердою т).

У програмі використовуються спеціальні словники омографів (файли з розширенням *.hmg). До складу "Балаболки" входять словники омографів для мовних движків Digalo Russian Nicolai (SAPI 4) і Loquendo Olga. Кожен рядок такого файлу містить шаблон і варіанти тексту, якими можна замінити даний шаблон; між ними стоїть знак рівності (=). Варіанти замін повинні бути перераховані через кому. Наприклад, у словнику для голосу Nicolai:

замок=за<мок,замо<к

У словнику для голосу Olga:

замки=з^амки,замки`
хлопок=хл^опок,хлоп^ок

За замовчуванням програма не враховує відмінностей між великими та малими літерами при розгляді шаблонів. Якщо регістр літер має значення, необхідно додати символ "$" на початок рядка:

$Толстой=Т^олстой,Толст^ой

Для кожного омографу програма "Балаболка" дозволяє додавати список фраз, заміна яких буде здійснюватися автоматично (закладка "Фрази з омографом" в редакторі омографів). Наприклад:

лихом=ли<хом,лихо<м

на лихом коне=лихо<м
не поминайте лихом=ли<хом

При виконанні пошуку омографів в тексті (пункт головного меню "Текст | Шукати омографи") ці вирази будуть автоматично замінюватися на нові. Якщо необхідно враховувати регістр букв усередині виразу, слід додати символ "$" до початку фрази:

$Толстой=Т^олстой,Толст^ой

$Лев Николаевич Толстой=Толст^ой

Подстановочный символ "*" может использоваться для обозначения целых слов или частей слова (несколько букв в начале или в конце слова). Например:

берега=бе<рега,берега<

*ые берега=берега<
у * берега=бе<рега


Теги SAPI 4

Для корекції вимови використовуються так звані теги (tags).Теги - це текстові керуючі команди, що вставляються в читаний текст, причому вони самі не читаються, а подають синтезатору (мовному движку) довідкову інформацію (команди) щодо зміни тих чи інших параметрів читання тексту. Теги обробляються мовним синтезатором і, як наслідок, не весь спектр тегів Speech API 4.0 напевне підтримується усіма движками. Однак найбільш часто вживані й розповсюджені теги, які існують починаючи з попередніх версій SAPI, можна використовувати без роздумів. Більш того, якщо введений тег помилковий або не підтримується движком, то модуль прочитає його як набір символів.

  • Синтаксис
  • Chr
  • Com
  • Ctx (деякі мовні движки можуть не підтримувати цей тег)
  • Dem (новий в SAPI 4.0 - деякі мовні движки можуть не підтримувати цей тег)
  • Emp (деякі мовні движки можуть не підтримувати цей тег)
  • Eng
  • Mrk
  • Pau
  • Pit
  • Pra (новий в SAPI 4.0 - деякі мовні движки можуть не підтримувати цей тег)
  • Prn (деякі мовні движки можуть не підтримувати цей тег)
  • Pro (деякі мовні движки можуть не підтримувати цей тег)
  • Prt (деякі мовні движки можуть не підтримувати цей тег)
  • RmS (новий в SAPI 4.0 - деякі мовні движки можуть не підтримувати цей тег)
  • RmW (новий в SAPI 4.0 - деякі мовні движки можуть не підтримувати цей тег)
  • RPit (новий в SAPI 4.0 - деякі мовні движки можуть не підтримувати цей тег)
  • RPrn (новий в SAPI 4.0 - деякі мовні движки можуть не підтримувати цей тег)
  • RSpd (новий в SAPI 4.0 - деякі мовні движки можуть не підтримувати цей тег)
  • Rst (новий в SAPI 4.0)
  • Spd
  • Vce (деякі мовні движки можуть не підтримувати цей тег)
  • Vol

Синтаксис

Так як теги є текстовими командами, які впроваджуються в текст, то вони повинні будуватися за певними правилами, щоб движок міг відокремити команди від основного тексту.

  • Всі теги починаються і закінчуються символом похилої риски ( "бекслеш") вліво (\).
  • Окремий бекслеш не допускається в межах тегу. Щоб включити бекслеш в текстовий параметр тегу, використовуйте подвійну похилу риску вліво (\\).
  • Теги сприймаються без урахування регістру. Наприклад, тег \vce\ - той же самий тег, що і \VCE\.
  • Теги сприйнятливі до тегів, тобто не допускають у собі зайвих пробілів. Наприклад, \Rst\ і \ Rst \ - не одне й те саме.

Chr

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

Змінює вираз голосу. Параметр може складатися з декількох значень, перерахованих через кому. Можливі значення:

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

Тип "Normal" відповідає звичайному голосу.

Приклад: \Chr="Angry"\

Параметр | Опис
string | Рядок, який визначає характеристики голосу.

Com

\Com=string\

Коментар. Коментарі не читаються.

Приклад: \Com="Це коментар."\

Параметр | Опис
string | Текст коментаря.

Ctx

\Ctx=string\
Примітка: Деякі мовні движки можуть не підтримувати цей тег.

Визначає зміст читаного тексту.

Приклад: \Ctx="Unknown"\

Параметр | Опис
string | Рядок, що визначає зміст читаного тексту.

Тег може мати одне з наступних значень:

Значення | Опис
"Address" | Адреса та/або номер телефону
"C" | Код мовою програмування C або C++
"Document" | Текст документу
"E-Mail" | Адреса електронної пошти
"Numbers" | Число, дата, час і т.д.
"Spreadsheet" | Електронна таблиця
"Unknown" | Невизначений зміст (значення за замовчуванням)
"Normal" | Нормальний режим читання

Emp

\Emp\
Примітка: Деякі мовні движки можуть не підтримувати цей тег.

Виділяє інтонацією слово, яке стоїть безпосередньо за тегом.

Приклад: the \Emp\truth, the \Emp\whole truth, and nothing \Emp\but the truth.

Dem

\Dem\
Примітка: Деякі мовні движки можуть не підтримувати цей тег.

Дія тегу зворотня попередньому.

Eng

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

Посилає спеціальну програму мовному движку з ідентифікатором GUID.

Параметр | Опис
GUID | Глобальний унікальний ідентифікатор мовного движка.
command | Текст команди.

Mrk

\Mrk=number\

Ставить в текст закладку.

Приклад: \Mrk=75000\

Параметр | Опис
number | Номер закладки.

Число 0 є зарезервованим (\Mrk=0\), тому не може використовуватися в якості номера закладки.

Pau

\Pau=number\

Встановлює паузу на вказану кількість мілісекунд.

Приклад: \Pau=1000\

Параметр | Опис
number | Кількість мілісекунд у паузі.

Pit

\Pit=number\

Вказує висоту звуку в герцах.

Приклад: \Pit=90\

Параметр | Опис
number | Висота звуку, в герцах.

Pra

\Pra=value\
Примітка: Деякі мовні движки можуть не підтримувати цей тег.

Встановлює діапазон для висоти звуку.

Параметр | Опис
value | Діапазон для висоти звуку, в герцах.

Prn

\Prn=text=pronunciation\
Примітка: Деякі мовні движки можуть не підтримувати цей тег.

Включає заміну деякого виразу на необхідний читаний вираз.

Приклад: \Prn=томат=томаат\

Параметр | Опис
text | Вираз.
pronunciation | Фонетичний еквівалент для тексту, що вимовляється.

Текст виразу пишеться без лапок. Тег (\Prn=томат\) скасовує зроблену заміну.

Слова замінюються з урахуванням регістру, тобто слово "Томат" перевизначатися не буде.

Pro

\Pro=number\
Примітка: Деякі мовні движки можуть не підтримувати цей тег.

При значенні 0 вимикає правила читання. Текст буде читатися без урахування керуючих тегів і правил зміни інтонації. Теги будуть читатися по символам, а вирази - монотонно. При значенні 1 даний режим вимикається.

Приклад: \Pro=0\

Параметр | Опис
number | Код увімкнення/вимкнення.

Prt

\Prt=string\
Примітка: Деякі мовні движки можуть не підтримувати цей тег.

Вказує, до якої частини мови відноситься наступне слово.

Приклад: \prt="Abbr"\

Параметр | Опис
string | Частина мови.

Тег може мати одне з наступних значень:

Значення | Опис
"Abbr" | Скорочення
"Adj" | Прикметник
"Adv" | Прислівник
"Card" | Кількісний числівник
"Conj" | Сполучник
"Cont" | Скорочення, наприклад, "can't" замість "cannot"
"Det" | Іменник перед прикметником
"Interj" | Вигук
"N" | Іменник
"Ord" | Порядковий числівник
"Prep" | Прийменник
"Pron" | Займенник
"Prop" | Іменник у вигляді власної назви
"Punct" | Пунктуація
"Quant" | Іменник, який виражає кількість і передує прикметнику, наприклад, "сім зелених яблук"
"V" | Дієслово

RmS

\RmS=number\
Примітка: Деякі мовні движки можуть не підтримувати цей тег.

При значенні 1 відбувається читання слів по літерах, при значенні 0 - по словам.

Параметр | Опис
number | Код перемикання

RmW

\RmW=number\
Примітка: Деякі мовні движки можуть не підтримувати цей тег.

При значенні 1 між словами вставляються невеликі паузи, значення 0 відновлює режим без пауз.

Параметр | Опис
number | Код перемикання

RPit

\RPit=value\
Примітка: Деякі мовні движки можуть не підтримувати цей тег.

Встановлює відносне значення висоти звуку.

Параметр | Опис
value | Відносне значення висоти звуку. 100 - значення за замовчуванням.

RPrn

\RPrn=value\
Примітка: Деякі мовні движки можуть не підтримувати цей тег.

Встановлює відносний діапазон для висоти звуку.

Параметр | Опис
value | Відносний діапазон для висоти звуку. 100 - значення за замовчуванням.

RSpd

\RSpd=value\
Примітка: Деякі мовні движки можуть не підтримувати цей тег.

Встановлює відносну швидкість мовлення.

Параметр | Опис
value | Відносна швидкість. 100 - значення за замовчуванням.

Rst

\Rst\

Скидає усі встановлені до нього керуючі теги.

Spd

\Spd=number\

Змінює швидкість мовлення.

Приклад: \Spd=120\

Параметр | Опис
number | Швидкість мовлення (кількість слів за хвилину).

Vce

\Vce=charact=value[[,charact=value]]\
Примітка: Деякі мовні движки можуть не підтримувати цей тег.

Змушує движок змінити синтезатор на інший відповідно до параметрів.

Параметр | Опис
charact | Параметр мовного движка.
value | Значення параметру.

У тезі може брати участь декілька параметрів зі вказаними значеннями. Наприклад, зміна поточного голосу на чоловічий англійський задається так:

\Vce=Gender="Male",language="British English"\

Тег дає команду движку використовувати синтезатор англійської мови з чоловічим голосом.

У charact=value можливі наступні параметри:

  • Language=мова. Мова в спеціальному форматі движка.
  • Accent=акцент. Акцент. Наприклад, якщо Language="English" та Accent="French", то движок буде говорити англійською мовою з французьким акцентом.
  • Dialect=діалект. Діалект (так само в спеціальному форматі движка).
  • Gender=стать. Стать (звичайно: "Male", "Female" або "Neutral").
  • Speaker=диктор. Ім’я голосу синтезатора.
  • Age=вік. Вік.
  • Style=стиль. Стиль голосу. Наприклад: "Business", "Casual", "Computer", "Excited" або "Singsong".
Вік | Опис
"Baby" | 1 рік
"Toddler" | 3 роки
"Child" | 6 років
"Adolescent" | 14 років
"Adult" | 20-60 років
"Elderly" | Старше 60 років

Vol

\Vol=number\

Змінює гучність мови.

Приклад: \Vol=32768\

Параметр | Опис
number | Рівень гучності.

Значення від 0 до 65535 лінійно змінюють гучність на обох каналах. Якщо потрібно змінити гучність на різних каналах, то треба взяти число типу подвійного слова (double word) і в старшу частину (ліве слово) записати значення для лівого каналу, а в молодшу (праве слово) - для правого. Наприклад, значення 65536 встановлює максимальну гучність на лівому каналі і мінімальну на правому.


Теги SAPI 5

Для корекції вимови використовуються так звані теги (tags).Теги - це текстові керуючі команди, що вставляються в читаний текст, причому вони самі не читаються, а подають синтезатору (мовному движку) довідкову інформацію (команди) щодо зміни тих або інших параметрів читання тексту. В SAPI 5 для запису тегів використовується формат XML (eXtensible Markup Language). Різні мовні синтезатори можуть підтримувати різні набори тегів; список підтримуваних тегів слід шукати в документації мовного движка.

Кожен елемент XML складається зі стартового тегу <тег>, завершального тегу </тег> і тексту між цими двома тегами. Якщо елемент порожній і текст відсутній, то тег може бути записано так: <тег/>.

Volume

Встановлює гучність мови. Цей тег може бути порожнім. В такому випадку він діє на весь наступний текст. Якщо тег обмежує фрагмент тексту, то він діє тільки на цей фрагмент. Тег має один обов'язковий атрибут: Level. Значення атрибуту повинно бути цілим і перебувати між 0 та 100.

<volume level="50"> Цей текст читається з гучністю 50. <volume level="100"> Цей текст читається з гучністю 100. </volume> </volume>
<volume level="80"/> Весь наступний текст читається з гучністю 80.

Значення 100 відповідає нормальній гучності голосу. Нижчі значення представляють відсоток від норми. Тобто 50 дає 50% від повної гучності.

Rate

Встановлює швидкість читання. Цей тег може бути порожнім; в такому випадку він діє на весь наступний текст. Якщо тег обмежує фрагмент тексту, то він діє тільки на цей фрагмент. Тег має два атрибути, один з яких повинен бути присутнім - Speed або AbsSpeed. Значення атрибутів повинні бути цілими і перебувати між -10 і 10. AbsSpeed керує абсолютною швидкістю голосу, Speed працює щодо поточної швидкості.

<rate absspeed="5"> Цей текст читається зі швидкістю п'ять. <rate absspeed="-5"> Цей текст читається зі швидкістю мінус п'ять. </rate> </rate>
<rate absspeed="10"/> Весь наступний текст читається зі швидкістю десять.

Атрибут Speed керує відносною швидкістю. Загальна швидкість виходить підсумовуванням усіх значень атрибутів Speed з поточною абсолютною швидкістю.

<rate speed="5"> Цей текст читається зі швидкістю п'ять. <rate speed="-5"> Цей текст читається зі швидкістю нуль. </rate> </rate>

Значення 0 відповідає нормальній швидкості, позитивні значення дають прискорений темп, негативні - уповільнений.

Pitch

Встановлює висоту голосу. Цей тег може бути порожнім. У такому випадку він діє на весь наступний текст. Якщо тег обмежує фрагмент тексту, то він діє тільки на цей фрагмент. Тег має два атрибути, один з яких повинен бути присутнім - Middle або AbsMiddle. Значення атрибутів повинні бути цілими і перебувати між -10 і 10. AbsMiddle керує абсолютною висотою голосу.

<pitch absmiddle="5"> Цей текст читається на висоті п'ять. <pitch absmiddle="-5"> Цей текст читається на висоті мінус п'ять. </pitch> </pitch>
<pitch absmiddle="10"/> Весь наступний текст читається на висоті десять.

Атрибут Middle керує відносною висотою голосу. Загальна висота виходить підсумовуванням усіх значень атрибутів Middle з поточною абсолютною висотою.

<pitch middle="5"> Цей текст читається на висоті п'ять. <pitch middle="-5"> Цей текст читається на висоті нуль. </pitch> </pitch>

Значення 0 відповідає нормальній висоті голосу, позитивні значення дають підвищений тон, негативні - знижений.

Emph

Виділяє фрагмент тексту за допомогою зміненої вимови. Тег не може бути порожнім.

<emph> Ура </emph>!

Способи виділення можуть бути різними залежно від особливостей того чи іншого голосу.

Spell

Читає фрагмент тексту по літерах. Тег не може бути порожнім.

<spell> Цей текст буде прочитано по літерах. </spell>
Цей текст буде читатися нормально.

Silence

Вставляє паузу. Тег повинен бути порожнім і містити один обов'язковий параметр Msec - тривалість паузи в мілісекундах.

Дві секунди тиші <silence msec="2000"/> і читання продовжується.

Pron

Здійснює заміну фрагменту тексту на необхідний читаний вираз. Вираз являє собою набір фонем.

Тег містить атрибут Sym - це набір фонем, розділених пробілами.

<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

Ставить в текст закладку. Тег повинен бути порожнім і містити один параметр Mark, що представляє собою опис закладки.

Закладки потрібні для того, щоб прикладні програми, які працюють з мовними синтезаторами, отримували інформацію про те, що прочитаний той чи інший фрагмент тексту.

Наприклад, програма отримає повідомлення від мовного синтезатора, коли при читанні буде досягнута ця закладка:

<bookmark mark="bookmark_one"/>

а потім ця закладка:

<bookmark mark="bookmark_two"/>

PartOfSp

Вказує, до якої частини мови належить слово. Тег не може бути порожнім.

Тег має один атрибут Part - назва частини мови:

Значення | Опис
"Unknown" | Невідома частина мови
"Noun" | Іменник
"Verb" | Дієслово
"Modifier" | Модифікатор
"Function" | Функція
"Interjection" | Вигук

<partofsp part="noun"> А </partofsp> - це перша буква алфавіту.

Context

Визначає контекст слова.Тег не може бути порожнім і має один атрибут Id - це рядок, що визначає зміст читаного тексту (дата, час, адреса електронної пошти і т.д.). Можливі значення атрибуту містяться в документації мовного синтезатора.

<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

Змушує движок змінити синтезатор на інший відповідно до параметрів (Age, Gender, Language, Name,Vendor і VendorPreferred). Тег може бути порожнім (тоді його дія поширюється на весь наступний текст) або не бути порожнім (тоді дія тегу обмежується лише фрагментом тексту).

Тег має два атрибути: Required ("обов'язковий") і Optional ("можливий"). Буде обрано мовний движок, який найбільшою мірою відповідає заданим параметрам. Якщо жодного підходящого голосу не знайдено, то жодних змін не відбудеться.

Це речення буде прочитано голосом за замовчуванням. <voice required="Gender=Female;Age!=Child"> Це речення буде прочитано жіночим дорослим голосом, якщо такий встановлено на комп'ютері. <voice required="Age=Teen"> Це речення буде прочитано дитячим голосом, якщо такий є. </voice> </voice>

Lang

Змушує движок змінити синтезатор на інший відповідно до заданої мови. Тег може бути порожнім (тоді його дія поширюється на весь наступний текст) або не бути порожнім (тоді дія тегу обмежується лише фрагментом тексту).

Тег має лише один атрибут LangId - це ідентифікатор мови, наприклад, 422 (українська), 419 (російська), 409 (американська англійська) або 411 (японська). Хоча ці числа є шістнадцяткові, вони записуються без приставки "0x".

Тег Lang є усіченим варіантом тегу Voice з атрибутом Required, який містить рядок "Language = xxx".

<voice required="Language=409"> A U.S. English voice should speak this. </voice>
<lang langid="422"> Це речення буде прочитано українським голосом. </lang>


Использование тега Context (SAPI 5)

Тег CONTEXT предоставляет голосу информацию о том, как интерпретировать специальные элементы текста: даты, числа, денежные единицы, адреса. Тег содержит атрибут ID, определяющий содержание текста внутри тега при помощи одного из возможных значений.

Например:

<context id="мой_контекст"> текст </context>

Реализация применения тега зависит от конкретного синтезатора речи. Также, некоторые голоса могут дополнительно иметь свои предопределенные значения для атрибута тега.

Тег может содержать больше одной строки текста. Например:

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

будет прочитан как "двадцать первое декабря девяносто девятого года двадцать первое ноября девяносто девятого года двадцать первое октября девяносто девятого года".

SAPI поддерживает следующие виды контекста:

  • Дата
  • Время
  • Число
  • Интернет
  • Электронная почта
  • Адрес

Дата

Этот контекст обозначает, что числа, передаваемые голосу, представляют собой дату. Даты обычно имеют формат "число [разделитель] число [разделитель] число", где разделителем могут быть символы '.', '/' или '-', а числа варьируются от 01 до 12 для месяцев, от 01 до 31 для дней. Год представляет собой две или четыре цифры.

Атрибут тега может принимать значения:

date_mdy

Если присвоить атрибуту это значение, первая группа цифр будет воспринята голосом как месяц, вторая группа - день месяца, третья группа - год. В том случае, если год записан двумя цифрами, голос может прочесть его как число из двух цифр или четырех цифр.

Например:

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

будет прочитан как "двадцать первое декабря девяносто девятого года"
или "двадцать первое декабря тысяча девятьсот девяносто девятого года"

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

будет прочитан как "двадцать первое декабря тысяча девятьсот девяносто девятого года"

date_dmy

Первая группа цифр будет воспринята как день, вторая группа - месяц, третья группа - год. Если год записан двумя цифрами, голос прочтет его как число из двух цифр или четырех цифр. Если год записан четырьмя цифрами, голос прочтет его как число из четырех цифр.

Например:

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

будет прочитан как "двадцать первое декабря девяносто девятого года"
или "двадцать первое декабря тысяча девятьсот девяносто девятого года"

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

будет прочитан как "двадцать первое декабря тысяча девятьсот девяносто девятого года"

date_ymd

Первая группа цифр будет воспринята как год, вторая группа - месяц, третья группа - день месяца. Если год записан двумя цифрами, голос прочтет его как число из двух цифр или четырех цифр. Если год записан четырьмя цифрами, голос прочтет его как число из четырех цифр.

Например:

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

будет прочитан как "двадцать первое декабря девяносто девятого года"
или "двадцать первое декабря тысяча девятьсот девяносто девятого года"

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

будет прочитан как "двадцать первое декабря тысяча девятьсот девяносто девятого года"

date_ym

Первая группа цифр будет воспринята как год, вторая группа - месяц. Если год записан двумя цифрами, голос прочтет его как число из двух цифр или четырех цифр. Если год записан четырьмя цифрами, голос прочтет его как число из четырех цифр.

Например:

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

будет прочитан как "декабрь девяносто девятого года"
или "декабрь тысяча девятьсот девяносто девятого года"

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

будет прочитан как "декабрь тысяча девятьсот девяносто девятого года"

date_my

Первая группа цифр будет воспринята как месяц, вторая группа - год. Если год записан двумя цифрами, голос прочтет его как число из двух цифр или четырех цифр. Если год записан четырьмя цифрами, голос прочтет его как число из четырех цифр.

Например:

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

будет прочитан как "декабрь девяносто девятого года"
или "декабрь тысяча девятьсот девяносто девятого года"

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

будет прочитан как "декабрь тысяча девятьсот девяносто девятого года"

date_dm

Первая группа цифр будет воспринята как день месяца, вторая группа - месяц.

Например:

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

будет прочитан как "двадцать первое декабря"

date_md

Первая группа цифр будет воспринята как месяц, вторая группа - день.

Например:

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

будет прочитан как "двадцать первое декабря"

date_year

Группа цифр будет воспринята синтезатором речи как год.

Например:

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

будет прочитан как "тысяча девятьсот девяносто девятый год"

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

будет прочитан как "две тысячи первый год"

chs_date_ymdhm

Текст будет воспринят как дата и время: первая группа цифр - год, вторая - месяц, третья - день, четвертая - часы, пятая - минуты. Если год записан двумя цифрами, голос прочтет его как число из двух цифр или четырех цифр. Если год записан четырьмя цифрами, голос прочтет его как число из четырех цифр. Часы должны быть представлены как число между 00 и 23 (для 12-часового формата времени перед числом от 01 до 12 должны стоять буквы "PM" или "AM"). Минуты должны быть представлены как число между 01 и 59.

Это значение атрибута используется синтезаторами речи для китайского языка.

Время

Этот контекст обозначает, что числа, передаваемые голосу, представляют собой время. Обычно данные выглядят как "число [разделитель] число [разделитель] число" или "число [разделитель] число", где разделителем могут быть символы ':', ' ' ' или ' " ', а числа варьируются от 01 до 24 для часов и от 01 до 59 для минут и секунд.

Если в числах от 01 до 09 присутствует ноль, английский голос может игнорировать его или произносить как "oh". Синтезатор речи может вставить союз "и" между значениями для минут и секунд.

time

Например:

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

будет прочитан как "двенадцать тридцать"

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

будет прочитан как "час двадцать одна"

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

будет прочитан как "одна минута двадцать одна секунда"
или "одна минута и двадцать одна секунда"

chs_time_hms

Текст будет воспринят как время: первая группа цифр - часы, вторая - минуты, третья - секунды.

Это значение атрибута используется синтезаторами речи для китайского языка.

chs_time_hm

Текст будет воспринят как время: первая группа цифр - часы, вторая - минуты.

Это значение атрибута используется синтезаторами речи для китайского языка.

Число

number_cardinal

Текст будет воспринят как количественное числительное.

Например:

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

будет прочитан как "три тысячи четыреста тридцать два"

number_digit

Текст будет воспринят как набор отдельных цифр.

Например:

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

будет прочитан как "три четыре три два"

number_fraction

Текст будет воспринят как дробное числительное.

Например:

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

будет прочитан как "три пятнадцатых"

number_decimal

Текст будет воспринят как действительное число. Целая часть может отделяться от дробной части запятой или точкой, в зависимости от языка компьютерного голоса. Если десятичным разделителем является запятая, в этом случае точка может являться разделителем групп разрядов (групп из трех цифр в больших числах слева от знака десятичного разделителя).

Например:

<context id="number_decimal">423,124</context>

будет прочитан как "четыреста двадцать три целых сто двадцать четыре тысячных"

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

будет прочитан как "четыреста двадцать три тысячи сто двадцать четыре"

phone_number

Текст будет воспринят как телефонный номер. Реализация этого контекста зависит от конкретного синтезатора речи и может быть изменена в будущих версиях SAPI.

currency

Текст будет воспринят как денежная сумма. Реализация этого контекста зависит от конкретного синтезатора речи и может быть изменена в будущих версиях SAPI.

Например:

<context id="currency">$34,90</context>

будет прочитан как "тридцать четыре доллара и девяносто центов"

chs_number_percentage

Текст будет воспринят как величина в процентах.

Это значение атрибута используется синтезаторами речи для китайского языка.

chs_number_scientific

Текст будет воспринят как научная величина.

Это значение атрибута используется синтезаторами речи для китайского языка.

chs_phone_postal

Текст будет воспринят как телефонный номер и почтовый адрес. Чтение текста не отличается от чтения количественного числительного; единственное отличие: "1" читается как "yao1".

Это значение атрибута используется синтезаторами речи для китайского языка.

Интернет

Текст будет воспринят как адрес страницы сайта (URL). Реализация этого контекста зависит от конкретного синтезатора речи и может быть изменена в будущих версиях SAPI.

web_url

Например:

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

будет прочитан как "w w w точка Microsoft точка com"

Электронная почта

Текст будет воспринят как адрес электронной почты. Реализация этого контекста зависит от конкретного синтезатора речи и может быть изменена в будущих версиях SAPI.

e-mail_address

Например:

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

будет прочитан как "someone собачка Microsoft точка com"

Адрес

Этот контекст обозначает, что текст, передаваемый голосу, представляет собой почтовый адрес (название страны, почтовый индекс, название населенного пункта и т.д.). Структура адреса для разных стран будет отличаться.

address

Текст будет воспринят как адрес. Реализация этого контекста зависит от конкретного синтезатора речи и может быть изменена в будущих версиях SAPI.

Например:

<context id="address">153002, Иваново, ул. Громобоя, 13</context>

будет прочитан как "сто пятьдесят три тысячи два Иваново улица Громобоя тринадцать"

address_postal

Текст будет воспринят как почтовый адрес. Реализация этого контекста зависит от конкретного синтезатора речи и может быть изменена в будущих версиях SAPI.

Например:

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

будет прочитан как "A два C четыре X пять"


Універсальні теги

Для управления синтезом речи рекомендуется использовать теги для SAPI 4 и SAPI 5. В добавление к этому "Балаболка" поддерживает собственные универсальные теги.

Audio

Програма дозволяє вставляти посилання на зовнішні звукові файли (аудіокліпи) до тексту документів. Використовуйте пункт головного меню "Текст | Аудіокліп" для вибору аудіофайлу. Підтримуються формати WAV, MP3, OGG.

Тег вставки аудіокліпу буде виглядати так:

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

Також, може бути заданий відносний шлях до звукового файлу. Відносний шлях - це шлях, що вказується щодо самого документу, з якого виробляється посилання на файл:

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

Під час читання вголос, коли в тексті зустрінеться посилання на аудіокліп, "Балаболка" буде призупиняти процес читання, відтворювати аудіокліп, а потім продовжувати читання. При запису мови в файл програма вставить аудіодані з зовнішнього звукового файлу всередину нового файлу.

Voice

Если необходимо изменить голос или его атрибуты, специальный тег может быть использован для SAPI 5 и Microsoft Speech Platform (голоса SAPI 4 будут игнорировать этот тег).

Формат тега:

{{Voice=Назва;Швидкість;Висота;Гучність}}

  • Назва - название голоса (достаточно одного слова или даже части слова);
  • Швидкість - скорость чтения (значение должно находиться между -10 и 10);
  • Висота - высота звука (значение должно находиться между -10 и 10);
  • Гучність - громкость речи (значение должно находиться между 0 и 100).

Область действия тега распространяется на весь последующий текст. Значения атрибутов внутри тега разделены точкой с запятой. Например:

Программа прочитает этот текст основным голосом. {{Voice=Alyona;0;0;100}} Голос 'Алёна' прочитает остальной текст.

Содержимое тега не зависит от регистра букв. Значения некоторых атрибутов могут быть пропущены:

{{voice=yuri;;;50}}

{{Voice=Hans;-1}}

{{Voice=Anatol}}

Чтобы вернуться к основному голосу, выбранному в программе, используйте этот тег:

{{Voice=}}

Внимание! При помощи тегов невозможно переключиться между голосами SAPI 5 и голосами Microsoft Speech Platform.

Pause

Когда программа преобразует текст в речь, с помощью тега можно вставить паузу. Длительность паузы должна быть указана в миллисекундах.

Тишина продлится две секунды. {{Pause=2000}} Затем чтение возобновится.


Фонетические алфавиты

Фонетический алфавит представляет собой набор букв, цифр и других символов, используемых для записи фонетической транскрипции. Для этого используются "фонемы" - минимальные различимые звуковые единицы, которые являются строительными блоками в словах. Синтезаторы речи поддерживают три фонетических алфавита:

  • Международный фонетический алфавит (МФА, International Phonetic Alphabet, IPA);
  • Фонетический алфавит SAPI (SAPI Phone Set);
  • Универсальный фонетический алфавит (Universal Phone Set, UPS).

Международный фонетический алфавит был разработан Международной фонетической ассоциацией для стандартизации изображения звуков человеческой речи. МФА используется лексикографами, певцами, актерами, авторами искусственных языков и переводчиками.

Первые синтезаторы речи, которые работали через SAPI 5, использовали фонетический алфавит SAPI (SAPI Phone Set). В этом алфавите для отображения каждой фонемы применялись одна или несколько латинских букв; фонемы были отделены друг от друга пробелами. Фонетический алфавит SAPI был разработан для следующих языков: английский (США), испанский, итальянский, китайский, немецкий, французский, японский.

Позднее корпорация Microsoft разработала универсальный фонетический алфавит (Universal Phone Set), основанный на Международном фонетическом алфавите и пригодный для использования в компьютерных системах. По сравнению со старым фонетическим алфавитом SAPI, новый алфавит позволяет создавать фонетические транскрипции для любого языка, а также легко конвертировать символы UPS в другие системы записи знаков (такие как X-SAMPA, SAMPA или ASCII-IPA) и наоборот.

При чтении текста вслух с помощью голосов SAPI 5 тег PRON позволяет изменить произношение слова. Вот два примера использования фонетической транскрипции для того, чтобы голос произнес слово "hello" на английском языке:

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

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

Первый пример использует фонемы для американского английского языка из фонетического алфавита SAPI. Цифра "1" обозначает ударение в слове. Фонемы отделены друг от друга пробелами, а символ "-" применяется для обозначения границы между слогами. Второй пример использует символы из универсального фонетического алфавита Microsoft. Буквы обозначают фонемы, из которых составлено слово. Символы "S1" показывают ударный слог в слове.

Примечание. Фонетический алфавит SAPI считается устаревшим, но он по-прежнему используется для записи фонем в синтезаторах речи для семи перечисленных выше языков. Это означает, что первый пример для тега PRON может быть прочитан только американским английским голосом, второй пример - голосами для всех остальных диалектов английского языка (британского, австралийского и т.д.).

Существующие версии голосов IVONA не поддерживают фонетический алфавит SAPI. Тег PRON игнорируется речевым движком. Поэтому для голосов IVONA рекомендуется использовать язык разметки Speech Synthesis Markup Language (SSML) для настройки произношения отдельных слов и фраз.

<phoneme alphabet="ipa" ph="səmɐlʲˈɵt">самолёт</phoneme>

Тег PHONEME можно записать в сокращенном виде:

<phoneme alphabet="ipa" ph="ɐɪrɐplˈan"/>

Тег использует фонетические алфавиты:

  • Международный фонетический алфавит (IPA);
  • Расширенный фонетический алфавит методов оценки речи (X-SAMPA).

Символы из алфавита IPA сложно вводить с клавиатуры. Балаболка позволяет выбирать символы из списка поддерживаемых фонем.

Для некоторых языков доступно автоматическое преобразование текста в символы IPA. Программа будет использовать язык текущего выбранного голоса. Поддерживается преобразование для следующих языков:

  • английский;
  • испанский;
  • итальянский;
  • немецкий;
  • польский;
  • португальский;
  • русский;
  • турецкий;
  • украинский;
  • французский.

Текст должен быть написан маленькими буквами; большие гласные используются для обозначения ударения в словах (например, замОк). Для русского и украинского языков ударение также можно указать с помощью знака ударения: за́мок, сѐльсове́т.


Фонетичний алфавіт SAPI

Фонетичний алфавіт - це система знаків для запису транскрипції на основі латинського алфавіту. Microsoft Speech API використовує фонетичний алфавіт для запису слів у вигляді фонем. Тег PRON, що використовується у SAPI 5, дозволяє замінювати одне слово або декілька слів на фонемний рядок.

Приклад. Фонемний вигляд слова "hello":

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

Фонеми відокремлені один від одного пробілами. У деяких фонетичних алфавітах можуть застосовуватися спеціальні символи, наприклад, для позначення наголосу (1) чи у якості розділювача між складами (-).

Приклад. Фонемний вигляд слова "hello" з використанням позначення наголосу (1):

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

Оберіть мову зі списку для перегляду фонетичного алфавіту:

  • Англійська
  • Іспанська
  • Італійська
  • Німецька
  • Французська
  • Китайська
  • Японська

Фонеми англійської мови

Символ фонеми | Приклад | Транскрипція
1 | Первинний наголос |
2 | Вторинний наголос |
- | Межа складу (дефіс) |
& | Межа слова (амперсанд) |
! | Розділювач (знак оклику) |
, | Розділювач (кома) |
. | Розділювач (крапка) |
? | Розділювач (знак питання) |
_ | Пауза (підкреслення) |
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

Фонеми іспанської мови

Символ фонеми | Приклад | Транскрипція
1 | Первинний наголос |
2 | Вторинний наголос |
- | Межа складу (дефіс) |
& | Межа слова (амперсанд) |
! | Розділювач (знак оклику) |
, | Розділювач (кома) |
. | Розділювач (крапка) |
? | Розділювач (знак питання) |
_ | Пауза (підкреслення) |
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

Фонеми італійської мови

Символ фонеми | Приклад | Транскрипція
1 | Первинний наголос |
2 | Вторинний наголос |
- | Межа складу (дефіс) |
& | Межа слова (амперсанд) |
! | Розділювач (знак оклику) |
, | Розділювач (кома) |
. | Розділювач (крапка) |
? | Розділювач (знак питання) |
_ | Пауза (підкреслення) |
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

Фонеми німецької мови

Символ фонеми | Приклад | Транскрипція
1 | Первинний наголос |
2 | Вторинний наголос |
- | Межа складу (дефіс) |
& | Межа слова (амперсанд) |
! | Розділювач (знак оклику) |
, | Розділювач (кома) |
. | Розділювач (крапка) |
? | Розділювач (знак питання) |
_ | Пауза (підкреслення) |
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

Фонеми французської мови

Символ фонеми | Приклад | Транскрипція
1 | Первинний наголос |
2 | Вторинний наголос |
- | Межа складу (дефіс) |
& | Межа слова (амперсанд) |
! | Розділювач (знак оклику) |
, | Розділювач (кома) |
. | Розділювач (крапка) |
? | Розділювач (знак питання) |
_ | Пауза (підкреслення) |
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

Фонеми китайської мови

Символ фонеми | Приклад
- | Межа складу (дефіс)
! | Розділювач (знак оклику)
& | Межа слова (амперсанд)
, | Розділювач (кома)
. | Розділювач (крапка)
? | Розділювач (знак питання)
_ | Пауза (підкреслення)
+ | Первинний наголос
* | Вторинний наголос
1 | Тон 1
2 | Тон 2
3 | Тон 3
4 | Тон 4
5 | Тон 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)

Фонеми японської мови (катакана)

Символ | Фонема | Значення у таблиці Юнікод | Примітка
' |  | U+0027 | Позиція наголосу
+ |  | U+002B | Межа області наголосу
| |  | U+007C | Межа фрази
. |  | U+002E | Кінець речення (загальний)
? |  | U+003F | Кінець речення (питальний)
! |  | U+0021 | Кінець речення (окличний)
_ |  | U+005F | Пауза тривалістю в одну мору
゜ |  | 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\