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

    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.
    Поделиться публикацией
    Похожие публикации
    Ой, у вас баннер убежал!

    Ну, и что?
    Реклама
    Комментарии 23
    • +2
      Спасибо, хороший обзор!
      Acapela рулит по качесту, сначала даже кажется, что текст, который пишу там живой человек читает. Да и на сайте у них все удобно, понятно и без лишней петушни.

      eSpeak — тоже, в принципе, понравился
      • 0
        Акапела пока один из самых лучших движков. Только есть один недостаток — подписание договора может занять до полугода. Их менеджеры любят зависнуть на месяц-другой с ответом.
      • +1
        В iPhone тоже свое встроенное решение. Настройки — Основные — Универсальный доступ — VoiceOver. Можно повесить его включение на тройное нажатие Home, и использовать для почты, веба, чтения книг (с трудом). Русский поддерживает, качество не ахти, да еще и какие-то странные шумы иногда во время произнесения речи проскакивают.
        • +2
          Не знаю, на чём Вы проверяли но встроенный синтезатор в Symbian очень даже работает с русским языком (Nokia 5800XM). Качество я назвал бы «чуть ниже среднего», тем не менее он успешно озвучивает имя звонящего, а также отлично работает во встроенном симбиановском словаре (там я тестил на русском, украинском, польском и английском языках, на английском звучание приличное, на остальных всё то же «чуть ниже среднего»).
          • –1
            А вы другие пробовали чтоб сравнить?
            • 0
              Причём тут сравнить? Автор пишет, что русский язык встроенным синтезатором Symbian вообще не поддерживается.
            • 0
              тоже был смарт на симбе и вполне разборчиво читал русские контакты и смски, на английском качество чтения было конечно лучше. правда голос по умолчанию я менял на более приятный.
              • 0
                Спасибо за информацию!
                Я тестировал на Nokia 5530 XpressMusic. Причина, видимо, в предустановленных голосовых пакетах. В ближайшее время попробую на других аппаратах и отпишусь о результатах в комментах.
                • 0
                  Проверил на Nokia 5800 — то же самое, русскую речь он не синтезирует.
                  Судя по тому, что Вы говорите о качестве «чуть ниже среднего» для русского и «хорошего» для английского, как бы странно это не звучало, но встроенные приложения используют не встроенный синтезатор речи. Если нужно, я могу выложить куда-нибудь файл с примером синтезированной англ. речи встроенного TTS движка, Вы убедитесь, что оно очень низкое.
                  • 0
                    Странно. Возможно, это какие-то ограничения API?
                    А тестировать синтезатор в упомянутых приложениях Вы пробовали?
                    Действительно, выложите пример, я по крайней мере смогу сразу точно сказать, тот же это голос или нет.
                    • 0
                      К сожалению на 5530 в мессенджере нет функции прочтения сообщений, а на 5800 тестировал не я, а мой знакомый.
                      Пример синтеза английской речи моим тестовым приложением.
                      • 0
                        Я говорил не про прочтение сообщений, а про произнесение имени звонящего вам. Эта функция включается в настройках, и по идее есть и в 5530.

                        Интересно. Голос — тот же, что и у меня, так что движок явно один. Но при этом качество у Вас заметно хуже, я с трудом разобрал только слово «софтваре». У меня же произносимый текст разобрать довольно легко.
                • 0
                  Заняться что ли созданием движка?
                  Это я про цены…
                  • 0
                    Если получится нормальное качество, то думаю затраты будут такими, что цены приведенные выше мало что окупят. По крайней мере качество движка сакраметнта, который не требует роялти — существенно ниже Акапелы.
                  • 0
                    Acapela и Loquendo действительно очень недурственно синтезируют речь. Послушал и даже удивился немного.
                    • 0
                      TT S понравилось)
                      • 0
                        В андроиде неплохо воспроизводит английские предложения, но конечно не хватает русского языка.
                        • 0
                          Спасибо за обзор!

                          Мы в нашем проекте Toozla остановились на Acapela. Сейчас движок используется для озвучивания статей из Wikipedia, в планах и другие источники контента. Уже подключено несколько десятков языков.

                          Вот тут можно послушать пример toozla.com/ru/toozla/streams/wiki-stream либо установить приложение на телефон и просто погулять по городу :)
                          • 0
                            Что то не впечатляет.
                            • 0
                              А мне проект понравился. Идея, конечно, не нова, но на мой взгляд, при правильном продвижении он будет успешен.
                            • 0
                              Пользовался сакраментом несколько лет для чтения книг на winmobile-телефоне и качество озвучки там было принципиально лучше еспикского (коий доступен мне на android-телефоне). Странно, что в данном обзоре они отмечены на одном уровне.

                              Жду сакраментовской читалки книжек на андроид. В ответ на мой вопрос об оном, они сообщили, что работают над портированием и намерены закончить в самое ближайшее время.
                              • 0
                                Не дождался сакраментовской читалки. Использую SVOX. Русский язык там только женский и звучит хуже сакрамента, но хорошо что хоть что-то уже есть. Надеюсь дальше будет лучше.
                              • 0
                                А не расскажете ли, каково состояние их на 2013й год? Спасибо.

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

                                Самое читаемое