|
ВведениеПрежде всего автор выражает благодарность Дмитрию Падучих и Михаилу Пожидаеву за помощь и дельные советы, без которых эта статья не появилась бы на свет. В статье речь пойдёт о том, как установить речевой сервер VoiceMan на дистрибутивы Debian. Кое-какую информацию о VoiceMan можно почерпнуть на странице Speech — ALT Linux Wiki. Исходный код речевого сервера доступен на ftp://ftp.altlinux.org/pub/people/msp/voiceman/. В моём случае был использован VoiceMan версии 1.2.0pre3, который установился на моей машине и завелся с пол пинка во всех случаях. Продукт был испытан и одинаково прекрасно показал себя на дистрибутивах debian, таких как ubuntu8.10, ubuntu8.04.2, debian5.0-lenny. Сервер используется мной повседневно на постоянной основе. Внимание! Инструкция рассчитана на пользователей, установивших синтезаторы ru_tts , mbrola и сам emacspeak с тифлокомповского архива. В случае подключения VoiceMan к самостоятельно установленным синтезаторам или emacspeak, нужно сменить соответствующе указанные пути. Установка и начальная настройкаИтак, поехали... 1. Скачиваем сорци программы: $wget ftp://ftp.altlinux.org/pub/people/msp/voiceman/voiceman-1.2.0pre3.tar.gz 2. Разархивируем скачаный файл: $tar xf voiceman-1.2.0pre3.tar.gz 3. Перейдём в папку с исходными кодами, в которой и будем производить компиляцию и установку: $ cd voiceman-1.2.0pre3/ 4. установим необходимые зависимости. На дебиан мне понадобились лишь пакеты libao-dev и g++. На убунтах g++ уже был, поэтому доустановил лишь libao-dev. .$ sudo aptitude install libao-dev g++ скачать, помню, понадобилось сущие килобайты :) Также следует учесть, что для работы VoiceMan необходима программа aplay. 5. Теперь то, что принято называть "дальше как обычно". Набираем ряд последовательных стандартных команд, давая им время отработать: $ ./configure $ make $sudo make install Поздравляю, сервер должен установиться. Проверим: $ voicemand --say "privet-romashki" Если установка прошла успешно, то вы слышите текст, указанный в кавычках, произнесенный голосом espeak. О каких-либо других голосах сервер пока даже не догадывается. Следующие шаги призваны заполнить этот пробел. 1." Скачаем файл с соответствующей конфигурацией и путями к интересующим синтезаторам: $ wwget http://www.tiflocomp.ru/download/linux/voiceman.conf Это мой файл конфигурации, в котором пути к синтезаторам ru_tts и mbrola соответствуют путям к этим же синтезаторам, установленым из тифлокомповского архива. 2." Установим требуемую конфигурацию, заменив файл конфигурации на новый: $sudo cp -f voiceman.conf /usr/local/etc/ 3. Там же полезно будет создать папку voiceman.d: $sudo mkdir /usr/local/etc/voiceman.d Проверим удачность предприятия. Для этого откроем две консоли и в одной из них от root запустим непосредственно сам сервер: $sudo voicemand А во второй консоли -- его клиентскую часть: $voiceman в окне которого теперь, если набирать символы, посылая их на отработку клавишей RET, вы должны будете слышать голос mbrola или ru_tts (в зависимости от языка символов). Если у вас все происходит, как описываю, то можно переходить к следующему этапу ,а именно обеспечению его автозапуска с правами root при старте системы. Для автоматического запуска речевого сервера добавьте в файлetc/rc.local следующую строчку:
/usr/local/bin/voicemand -d пропишите ее где нибудь в конце файла, но перед строкой exit 0 так как все, что указано после этой строки, выполняться не будет. После указанных изменений в /etc/rc.local, voicemand будет загружатьса автоматически при каждом старте системы в фоновом режиме, О чем вам будет докладывать каждый раз при своем пуске голосом mbrola еще до старта иксов и ввода пароля с логином. Важно: не забыть указать в строке запуска ключ -d. Подключение к программам речевого доступаEmacspeakТеперь добавим VoiceMan в список речевых серверов emacspeak. Для этого выполним два нехитрых действия: 1. Сделаем симлинк в директории .../emacspeak/servers/: $sudo ln -sf /usr/local/bin/voiceman-espeak /usr/local/share/emacs/site-lisp/emacspeak/servers/voiceman-espeak 2. Добавим его имя в список серверов: sudo nano /usr/local/share/emacs/site-lisp/emacspeak/servers/.servers Откроется консольный редактор nano, в котором вам нужно будет добавить следующую новую строчку: voiceman-espeak Сохраните изменения и закройте редактор: Ctrl+X y. После произведенных дополнений в /emacspeak/servers/, работая в emacspeak, вы сможете переключиться на VoiceMan по команде: C-e d d voiceman-espeak RET Подобным образом вы можете переключаться между речевыми серверами, установленными в emacspeak. Для того чтобы запускать emacspeak в паре с voiceman,
в $sudo nano /usr/local/bin/emacsvoice Код скрипта: #!/bin/sh export EMACSPEAK=/usr/local/share/emacs/site-lisp/emacspeak/lisp/emacspeak-setup export DTK_PROGRAM=/usr/local/bin/voiceman-espeak exec emacs "$@" Сохраним файл и сделаем скрипт исполняемым: $sudo chmod +x /usr/local/bin/emacsvoice После этого команда emacsvoice будет запускать emacspeak, исправно транслирующим речь через voiceman. OrcaПоклонникам этого скринридера рекомендую обратить внимание на VoiceMan особо. VoiceMan поддерживает utf-8, поэтому при работе с Orca вам не придется загружать свою систему лишними процессами конвертации кодировок как в случае с multispeech. Для того чтобы получить возможность работать в Orca с Voiceman, нужно
добавить всего одну строчку в файл orca.espeechfactory._codeTable['voiceman-espeak'] = 'dectalk' Если у вас файла ~/.orca/orca-customizations.py не существует, создайте его с таким содержимым: import orca.espeechfactory orca.espeechfactory.SpeechServer.location = '/usr/local/share/emacs/site-lisp/emacspeak/servers/' orca.espeechfactory._codeTable['voiceman-espeak'] = 'dectalk' После вышеуказанных изменений можно выбрать VoiceMan в диалоге параметров Orca, на вкладке "Речь". YasrЕсли этой чудной программуленки у вас еще не стоит, немедля исправляем это: $sudo apt-get install yasr Затем в файл synthesizer port=|/usr/local/bin/voiceman-espeak При работе с yasr был замечен лишь один баг: при посимвольном чтении русских букв они не читались, но и кому это может понадобиться в консоли -- сложно представить. Заключительные замечанияНужно сказать, что, хотя интонирование речи включено, вам необходимо его
будет настроить. Для этого нужно закомментировать знаки препинания, которые
за это ответствены, в файле Подобным образом, редактируя файлы в каталоге
Простым редактированием файлов в VoiceMan можно настроить
многое в чтении синтезаторами. К примеру,подобным приемом у меня настроен уровень чтения символов пунктуации (это можно сделать файле |
||||||||
Распространение материалов сайта означает, что распространитель принял условия лицензионного соглашения. Идея и реализация: © Владимир Довыденков и Анатолий Камынин, 2004-2024 |
Социальные сети