Pull to refresh

Обзор мобильных Text-To-Speech движков

Reading time 4 min
Views 48K
imageЕсли Ваш родной язык не английский и Вы не пишете приложения только для iPhone, то Вам придется достаточно трудно, если Вы захотите найти подходящий инструментарий для разработки т.н. мобильных «voice-enabled» приложений.

В данном обзоре приведена классификация и описаны самые достойные из рода mobile TTS engine.

Я занимаюсь исследованиями в области проектирования интерфейсов мобильных устройств для людей с ограниченными возможностями зрения. Для реализации одного из моих проектов мне потребовался движок генерации голоса с мультиязыковой поддержкой (как минимум два языка – английский и русский). Это и послужило причиной поиска синтезатора речи.

Для удобства разделим движки TTS на три класса:
  • коммерческие;
  • свободные (решения лицензированные по GPL, LGPL и более «мягким» лицензиям типа BSD License или wxWindows Licence, которые допускают коммерческую разработку продуктов);
  • встроенные (средства, предоставляемые самой операционной системой).

Коммерческие движки


SVOX Mobile TTS
SVOX logo
Цена: n/a
Языки: 26, включая русский
Субъективная оценка качества звучания: высокое
Мобильные ОС: Android, Symbian, Windows CE/Windows Mobile, BREW
Возможность разработки коммерческих продуктов: есть


Компания SVOX имеет наиболее «вкусный» с технической точки зрения продукт — SVOX Mobile TTS. Однако, поскольку компания работает в основном в B2B сегменте, на мои два письма с запросом цены они так и не ответили.

Acapela TTS
Acapela logo
Цена: 2800€ плюс так называемая run-time license, за которую в самом лучшем случае придется платить по 49€ за каждое распространенное приложение
Языки: 23, включая русский
Субъективная оценка качества звучания: высокое
Мобильные ОС: Symbian, Windows CE/Windows Mobile, Embedded Linux, iOS
Возможность разработки коммерческих продуктов: есть


Сотрудники Acapela Group оказались намного более общительными и ответили буквально через полчаса после заполнения вот этой заявки.

Цена, указанная в шапке, относится к таким операционным системам как Windows Mobile и Symbian, однако бизнес-модель Acapela разнится в зависимости от выбранной ОС. К примеру, наиболее сильно они продвигают направление iOS, для которого сделан отдельный сайт. Там можно зарегистрироваться и бесплатно получить evaluation версию их движка. Цена голого SDK для бывшей iPhone OS составляет 250€. Так же с каждого проданного Вами в App Store приложения снимаются немалые проценты.

Отмечу, что Acapela предоставляет «облачный» синтез речи, а так-же портирование SDK под любую платформу.

Loquendo Embedded TTS
Loquendo logo
Цена: 3000€ плюс проценты с каждого проданного Вами мобильного приложения
Языки: 26, включая русский
Субъективная оценка качества звучания: высокое
Мобильные ОС: Android, Symbian, Windows CE/Windows Mobile, Embedded Linux, iOS, Maemo, Moblin, MeeGo, PalmOS
Возможность разработки коммерческих продуктов: есть


Движок Loquendo обладает специальными тегами, позволяющими делать речь более естественной, подмешивая такие не совсем «речевые» фишки как кашель, смех и прочее.

Их движок отвечает спецификации SSML 1.0 рекомендованной W3C.

Sakrament TTS
Sakrament logo
Цена: 1500€ для одной ОС, при покупке пакета сразу для двух языков предоставляется скидка в размере 25%, что составляет 2250€
Языки: английский, русский
Субъективная оценка качества звучания: среднее
Мобильные ОС: Symbian, Windows Mobile
Возможность разработки коммерческих продуктов: есть


Качества синтеза речи Sakrament TTS вполне достаточно, что бы озвучивать короткие фразы типа номеров телефонов или названий приложений. Описание всех версий SDK можно получить здесь.

Свободные движки


Flite
Цена: нет
Языки: английский плюс возможность компиляции языков FestVox
Субъективная оценка качества звучания: низкое
Мобильные ОС: Android, Windows CE/Windows Mobile, iOS, PalmOS
Возможность разработки коммерческих продуктов: есть (CMU licence)


В мире настольных систем хорошо известен синтезатор речи Festival. Он имеет порт под названием Flite для мобильных устройств и встраиваемых систем, который распространяется под их собственной X11-like лицензией, позволяющей свободно распространять данное ПО кому угодно, а так же строить на его основе как коммерческие, так и свободные приложения. Существуют порты для Windows CE/Windows Mobile, PalmOS, Android и iOS.

eSpeak
eSpeak logo
Цена: нет
Языки: 39, включая русский
Субъективная оценка качества звучания: среднее
Мобильные ОС: Android, Windows CE/Windows Mobile
Возможность разработки коммерческих продуктов: нет (GNU GPL)


Инструкция для компиляции движка под WM включена в дистрибутив, однако на этой платформе eSpeak имеет одно существенное ограничение – генерация голоса возможна только в WAV файл. Собранный TTS engine для Windows Mobile можно получить здесь.

eSpeak портирован на Android. Самый простой способ его попробовать — это установить из Android Market’а приложение TTS Service Extended, которое позволяет переключаться между встроенным движком и eSpeak. Данный TTS движок распространяется на условиях GNU GPL.

Встроенные решения


Встроенные решения присутствуют только в Symbian и Android. По какой-то неизвестной причине Microsoft лишила свою мобильную ОС соответствующего программного интерфейса (MS SAPI).

Symbian
Symbian logo
Цена: нет
Языки: английский
Субъективная оценка качества звучания: крайне низкое
Возможность разработки коммерческих продуктов: есть


Встроенный TTS от Symbian Foundation скрывается в классе CMdaAudioPlayerUtility. Хотя в его документации ничего об этом не сказано, он все же позволяет синтезировать речь. К сожалению, русский язык не поддерживается. Качество генерации английской речи очень низкое. Без подготовки довольно трудно понять, что именно он произнес.

Дополнительные языковые пакеты можно загрузить здесь, однако список поддерживаемых телефонов крайне мал. Установка пакетов для русского языка на устройство под управлением Symbain OS S60 5th не дала ожидаемых результатов, встроенный TTS так и не заговорил по-русски.

Отмечу, что имеется достаточно удобное расширение API под названием NSS TTS Utility API, описание которого можно найти здесь.

Android
Android robot
Цена: нет
Языки: английский, французский, немецкий, итальянский, испанский
Субъективная оценка качества звучания: среднее
Возможность разработки коммерческих продуктов: есть

Встроенная функциональность синтеза речи в Android доступна с версии 1.6. Прекрасное введение в тему можно найти в блоге разработчиков. Android TTS API является не чем иным, как оберткой над SVOX Pico, русский язык, которым, к сожалению, не поддерживается.

Заключение


Выводы каждому придется делать в зависимости от требований к разрабатываемому продукту. Для коммерческих решений крайне важно качество синтеза речи, поэтому выбирать стоит из двух движков – Acapela TTS и Loquendo Embedded TTS. При выборе движка для open source проекта крайне важную роль будет играть список целевых ОС.

Лично для себя я выбрал eSpeak, поскольку мой проект академического толка и я могу себе позволить использование продукта лицензированного по GNU GPL.
Tags:
Hubs:
+29
Comments 23
Comments Comments 23

Articles