Настройка синтеза речи в linux Ubuntu

Простой рецепт по установке и использованию синтезатора речи Festival в Ubuntu:

Устанавливаем festival и сопутствующие утилиты:

   sudo apt-get install festival speech-tools

Cтавим пакет с голосом, которые занимает 186 Мб.
В репозитории universe Ubuntu 9.10 уже есть готовый пакет festvox-ru:

   sudo apt-get install festvox-ru

Если используется Ubuntu 9.04 в /etc/apt/sources.list добавляем:
   deb http://ppa.launchpad.net/sergey-udaltsov/ppa/ubuntu jaunty main
   deb-src http://ppa.launchpad.net/sergey-udaltsov/ppa/ubuntu jaunty main

Ставим:

   sudo apt-get install festvox-ru

В остальных дистрибутива можно установить/распаковать deb-пакет с голосом из Ubuntu 9.10:

   sudo wget http://ubuntu.mirrors.tds.net/ubuntu/pool/universe/f/festvox-ru/festvox-...
   sudo dpkg --install festvox-ru_0.5-1_all.deb

Проверяем (русский текст воспринимается только в кодировке UTF-8):

   festival

   >(SayText "Hello!")

Активируем русский голос

   >(voice_msu_ru_nsh_clunits)

Произносим русский текст:

   >(SayText "Привет!")
   >(exit)

Читаем содержимое файла:

   festival -b '(begin (voice_msu_ru_nsh_clunits) (tts_file "./file.txt"))'

Сохранить результат в файл:

   text2wave -eval '(voice_msu_ru_nsh_clunits)' ./file.txt -o ./file.wav

Чтобы заработало:

   cat file.txt | festival --tts --language russian
или
   festival --tts --language russian file.txt

Нужно в файл /usr/share/festival/languages.scm перед строкой "(define
(select_language language)" добавить (по аналогии с другими языками):

   (define (language_russian)
   "(language_russian)
   Set up language parameters for Russian"
      (set! male1 voice_msu_ru_nsh_clunits)
      (male1)
      (Parameter.set `Language `russian)
   )

В блок "(define (select_language language)" добавляем:

   ((equal? language `russian)
   (language_russian))

Добавить комментарий

Обратная связь

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

пишите мне на netdm@mail.ru