eSpeak

eSpeak
eSpeak
Тип

синтезатор речи

Автор

Джонатан Даддингтон (англ. Jonathan Duddington)

Написана на

C++

Операционная система

Linux и др. UNIX-подобные, Windows

Первый выпуск

2006[1]

Последняя версия

1.46.02 (6 января 2012[1])

Состояние

активное

Лицензия

GNU GPL

Сайт

espeak.sourceforge.net

eSpeak это компактный свободный программный синтезатор речи, поддерживающий Speech Synthesis Markup Language (SSML).

Содержание

Операционные системы

Версии eSpeak существуют под такие операционные системы как Microsoft Windows, Mac OS X, Linux, RISC OS, а также доступен его исходный код на языке C++. Кроме того в официальной документации синтезатора даётся инструкция по его компиляции под Windows Mobile. Программа имеет одно существенное ограничение — генерация голоса возможна только в WAV файл.[2]

Помимо этого, eSpeak используется в мобильных операционных системах Android, начиная с версии 1.6, и Maemo, но эти проекты не курируются лично разработчиком, и на официальном сайте eSpeak соответствующие пакеты отсутствуют, да и Android-версия обладает рядом существенных ошибок при работе на некоторых языках, в частности и русском.[3]

Версии под Windows и Linux регулярно обновляются вместе с исходным кодом, а Mac- и RISC-варианты уже долгое время не поддерживаются.

Windows-версия eSpeak написана под платформу Microsoft Speech API 5.x, а также поставляется в виде консольной утилиты. Вариант под Mac OS X представляет собой отдельное приложение, которое не встраивается в системную речевую службу Apple и требует ручной настройки. Однако, существует вариант ускоренной установки при помощи специального пакета eSpeak Macintosh Installer.[4]

Поддерживаемые языки

eSpeak поддерживает около пяти десятков различных языков. При инсталляции, пользователю требуется указать, поддержка каких именно диалектов его интересует.[5]

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

  • Албанский — sq
  • Английский (американский) — en-us
  • Английский (британский с северным акцентом) — en-n
  • Английский (британский с Уэст-Мидлендским акцентом) — en-wm
  • Английский (классический британский) — en
  • Английский (общепринятый разговорный) — en-rp
  • Английский (шотландский) — en-sc
  • Армянский (западный) — hy-west
  • Армянский (классический) — hy
  • Африкаанс — af
  • Боснийский — bs
  • Валлийский — cy
  • Венгерский — hu
  • Вьетнамский — vi
  • Голландский — nl
  • Голоса MBROLA (голос xxx) — mb-xxx
  • Греческий — el
  • Древнегреческий — grc
  • Индонезийский — id
  • Исландский — is
  • Испанский (классический) — es
  • Испанский (латиноамериканский) — es-la
  • Итальянский — it
  • Каталанский — ca
  • Китайский (кантонский диалект) — zh-yue
  • Китайский (путунхуа) — zh
  • Курдский — ku
  • Латинский — la
  • Латышский — lv
  • Ложбан — jbo
  • Македонский — mk
  • Немецкий — de
  • Норвежский — no
  • Польский — pl
  • Португальский (бразильский) — pt
  • Португальский (европейский) — pt-pt
  • Румынский — ro
  • Русский — ru
  • Сербский — sr
  • Словацкий — sk
  • Словенский — sw
  • Тамильский — ta
  • Турецкий — tr
  • Финский — fi
  • Французский — fr
  • Хинди — hi
  • Хорватский — hr
  • Чешский (разговорный) — cs
  • Шведский — sv
  • Эсперанто — eo

Список поддерживаемых языков также может быть расширен при помощи использования голосовых библиотек MBROLA, которые можно подключить к eSpeak.

eSpeak и MBROLA

MBROLA — это особый дифонный алгоритм синтеза речи, на основе которого создано множество различных программных продуктов с включением технологии преобразования текста в речь (TTS). Данный проект является рекордсменом среди прочих технологий синтеза речи по количеству различных языков, для которых он использовался. Хотя для некоторых распространённых языков MBROLA-голоса не созданы до сих пор, в том числе и для русского.[6]

eSpeak может работать в связке с MBROLA, что обеспечивает возможность использовать голосовые библиотеки этого проекта как составную часть самого eSpeak. Это позволяет ещё больше расширить список поддерживаемых языков для синтезирования речи по тексту.

Использовать связку eSpeak и MBROLA можно на таких операционных системах как Windows, Linux[6] и Mac OS X[4].

Однако интеграцию с eSpeak поддерживают не все голосовые библиотеки MBROLA.

Принципы реализации

Слова входного текста для синтезирования проходят два этапа обработки:

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

Правила для получения последовательности фонем хранятся в виде «A, B, C = D». Где B — это рассматриваемая буква, A и C — контекст окружения этой буквы в слове, и D — это фонема, в которую эта буква может быть преобразована. Контекст окружения может задаваться как конкретными буквами, так и специальными символами, обозначающими группы букв. Правила синтезатора допускают неоднозначное определение таких цепочек. Для разрешения этой неоднозначности синтезатор назначает приоритет каждому правилу, который вычисляется на основе количества букв, задействованных в правиле, и степени конкретности определения контекста окружения. В правилах также можно указывать различия в трансляции в зависимости от ударения.

В eSpeak гласные звуки всегда синтезируются, звонкие согласные получаются путём смешивания синтезируемых звуков с предварительно записанными шумами голоса, а все остальные звуки просто записаны, например, [ш].

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

Вместе с синтезатором поставляется утилита eSpeak Edit. Это GUI-приложение, написанное при помощи библиотеки WXLib. Оно позволяет визуально редактировать готовые фонемы. Фонема представляется в виде графика кривой, где последовательно можно выбирать форманты и изменять их значения, такие как частота, высота и ширина. Благодаря этим возможностям, на основе уже готовых фонем можно получать новые, более верные звуки для некоторого языка. В то же время, некоторые из фонем получить модификацией существующих не получается. Например, при разработке русскоязычной части eSpeak был специально записан звук [р], так как для него не нашлось достойного аналога в других языках.[7]

Проекты с использованием eSpeak

eSpeak является open source проектом, благодаря этому, некоторые разработчики интегрировали его в свои продукты.

NVDA

eSpeak использован в качестве основного синтезатора речи в некоммерческой программе экранного доступа с открытым исходным кодом NVDA. При его помощи озвучен процесс установки инсталляционной версии программы, а также он является голосом по умолчанию, при её первом запуске.

Речевой Синтезатор «Капитан»

В другом синтезаторе речи — Капитан, разработанным Анатолием Камыниным и Геннадием Нефедовым, на базе eSpeak построен дополнительный пакет, который обеспечивает раздельное чтение многоязычных текстов: русский или украинский текст читается синтезатором Капитан, а английский, французский или немецкий синтезатором eSpeak. Данная функция реализована в Речевом синтезаторе Капитан как в версии под MS Speech API 4[8], так и в версии под MS Speech API 5.x[9].

Сторонние дополнения

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

Помимо русского, сторонние компоненты коррекции речи eSpeak ещё есть для китайского (путунхуа и кантонский).

Скачать эти словари можно с официального сайта проекта.

См. также

  • Система синтеза речи Festival
  • FreeTTS

Примечания

Ссылки


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Полезное


Смотреть что такое "eSpeak" в других словарях:

  • ESpeak — Тип Синтезатор речи Разработчик Jonathan Duddington Написана на C++ ОС Linux Windows Mac OS X RISC OS …   Википедия

  • ESpeak — Infobox Software name = eSpeak caption = collapsible = author = developer = Jonathan Duddington released = latest release version = 1.36.02 latest release date = March 8, 2008 latest preview version = latest preview date = frequently updated =… …   Wikipedia

  • Chinese speech synthesis — is the application of speech synthesis to the Chinese language (usually Standard Chinese). It poses additional difficulties due to the Chinese characters (which frequently have different pronunciations in different contexts), the complex prosody… …   Wikipedia

  • Comparison of speech synthesizers — Here is a non exhaustive comparison of speech synthesis programs : Creator(s) First public release date Latest stable version Software license Cost Apple PlainTalk Apple Inc. 1984 2007, October 26 Bundled with Mac OS X Bundled AT T Natural… …   Wikipedia

  • NonVisual Desktop Access — Entwickler NVDA Team Aktuelle Version NVDA 2010.2 (29. Oktober 2010) Betriebssystem Microsoft Windows Kategorie …   Deutsch Wikipedia

  • Синтез речи — Синтез речи  в широком смысле  восстановление формы речевого сигнала по его параметрам[1]; в узком смысле  формирование речевого сигнала по печатному тексту. Синтезом речи  прежде всего называется все, что связано с… …   Википедия

  • Экранный диктор — Синтез речи  в широком смысле  восстановление формы речевого сигнала по его параметрам*; в узком смысле  формирование речевого сигнала по печатному тексту. Содержание 1 История 2 Способы синтеза речи …   Википедия

  • ADRIANE — ist eine freie für Blinde konzipierte Desktop Oberfläche für GNU/Linux Betriebssysteme, die auch ohne graphische Ausgabe auskommt. Als Benutzerschnittstellen werden Sprachausgabe und Braillezeilen mittels des Screenreaders SBL[1], ursprünglich… …   Deutsch Wikipedia

  • Speech synthesis — Stephen Hawking is one of the most famous people using speech synthesis to communicate Speech synthesis is the artificial production of human speech. A computer system used for this purpose is called a speech synthesizer, and can be implemented… …   Wikipedia

  • Microsoft Agent — Microsoft provides examples on its website for the use of Agent. Microsoft Agent is a technology developed by Microsoft which employs animated characters, text to speech engines, and speech recognition software to enhance interaction with… …   Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»