[Homeros] I: Экспериментальная сборка voiceman со включёнными синтезаторами

tolyangin на mail.ru tolyangin на mail.ru
Ср Май 12 12:26:04 UTC 2010


Всем привет.

On 12 Май 2010, msp на altlinux.ru wrote:


>
> По ссылке ниже очень пробная сборка voiceman для установки в /opt с
> синтезаторами mbrola + ru_tts. Привожу подробное описание положения
> вещей. Прошу прочитать до конца, если есть желание попробовать.

Попробывал, очень даже работает ).

Насколько смотрю, вы взяли за основу и правили пути,  в моем 
эксперементальном конфиге, который был в пересланном архиве. Там по
умолчанию для русского языка был подключен голос espeak и
в секциях для проигрывания перед aplay стоит exec.

Для переключения чтения русского текста голосом ru_tts нужно в файле
/opt/voiceman/etc/voiceman.conf в строке 
default rus = espeak
заменить espeak на normal.

и прибить пульса
$killall pulseaudio

Как понимаю  сервер еще не может менять параметры на лету , обрабатывая
аргументы  посылаемые из командной строки, без надобности
правки конфига?

Еще  в архиве старая версия ru_tts, темп чтения речи в которой не высок.  


> Требования к системе:
>
> 1. должны быть доступны команды iconv и aplay. Они почти
> стандартные, поэтому должны быть доступны без дополнительных
> манипуляций. Проще всего попытаться их запустить в консоли и
> посмотреть, чтобы не было сообщения, что они не найдены;
>
> 2. должны быть две библиотеки libgdbm и libao. Тут лучше спросить у
> пакетного менеджера, что эти библиотеки доступны;
>
> 3. ещё должна быть libstdc++, но эта точно должна быть в системе,

 > т.к. слишком много на неё завязано.

Надеюсь в отличных от debian-base  дистрибутивах эти библиотеки
именуются так же...


>
> Как установить и запустить:
>
> 1. загружаем архив:
>
> ftp://devel.altlinux.org/msp/voiceman/binary/voiceman-1.5.0pre2-binary-full-tts.tar.gz
>
> Размер: 15 Мб.
>
> 2. распаковываем его:
>
> tar zxf voiceman-1.5.0pre2-binary-full-tts.tar.gz
>
> 3. получаем директорию voiceman, которую переносим в /opt. Для этого
> нужны права рута, следовательно, используем sudo, где это работает:
>
> sudo mv voiceman /opt/voiceman
>
> 4. пробуем запускать. Для этого переходим в /opt/voiceman/bin. Там
> для пользователя сделаны три команды: ./daemon, ./run и
> ./test. Сначала стоит запустить ./test. В случае успеха должно
> проговорить приветствие. Команда ./run запускает сервер в терминале,
> где его можно прибить нажатием Ctrl+C (не будет работать в
> emacspeak), команда ./daemon запускает демон в фоновом режиме,
> оставляя командную строку свободной.
>
> 5. если сервер запустился, то команда ./voiceman даёт простейшего
> клиента. Его можно запустить и пописать туда текст. Должно говорить;
>
> 6. запуск emacspeak: как известно, emacspeak выбирает сервер для
> работы на основе значения переменной DTK_PROGRAM. Следовательно,
> наша цель - задать ей ссылку на voiceman-espeak, который лежит тоже
> в директории /opt/voiceman/bin. Последовательность команд может быть
> такой:
>
>> export DTK_PROGRAM=/opt/voiceman/bin/voiceman-espeak 
>> emacs 
>
> Должна срабатывать и укороченная запись:
>
> DTK_PROGRAM=/opt/voiceman/bin/voiceman-espeak emacs 
>
> Внимание! Указание сервера для работы может и переопределяться
> нестандартными скриптами внутри emacs или emacspeak. В этом случае
> нужно знать, как им дать правильное значение. Переменная DTK_PROGRAM
> предложена автором emacspeak и будет работать в случаях, когда
> частная сборка этого не отключает;
>
Хорошо  будет просто сопроводить бинарник соответствующим скриптом для
запуска emacspeak  и файликом orca-customizations.py с подключенным в
них к скринридерам сервером vm).
И написать для юзера скрипт который добавит voiceman-espeak в список
речевых серверов emacspeak и скопирует файл настроек для orca в
~/.orca/.

Пользователю останется только  запустить такой скрипт.

.
.





> Что пока не так:
>
> тут только один пункт: утилиту freephone я взял из своей системы,
> что может быть потенциально не очень хорошо. Прошу кинуть в меня
> этой утилитой из Ubuntu со словарём. В Интернете доступны только
> deb-пакеты, что не зер гуд.
>
> Прошу пробовать на всех системах и докладывать о результатах. Многие

Сейчас собираюсь на тренировку, вернусь ночью посмотрю как бинарник
будет запускаться на livecd,  с флешки примонтированной к /opt/ ).

А там глядишь вот вот и маме  на нетбук установим убунту  :))

Проверим и на нем.

> проблемы отлаживаемы и решаемы. Только с зависимостями на библиотеки
> может оказаться всё плохо. Анатолий говорил, что запущенный
> pulseaudio может давать проблемы. Нужно про это помнить.

При запущенном пульсе ru_tts совсем не говорит,  и медленно происходит
переключение между синтезаторами языков.
Возможно б стоит подумать над тем что бы снабдить бинарник и
синтезатором newfon? Пусть пользователь выбирает что ему больше
понравится, да и при запущенном пульсе newfon хоть с тормозами но
информацию транслирует.   . 



>
> По части моего предыдущего письма про библиотеки есть уточнение. Я
> слегка забыл, что libstdc++ и libao нет в моём biarch. Когда
> развернул i586 среду в chroot'е, то libstdc++ подключился, а вот
> libao -- нет. Поэтому проблема уполовинилась, но осталась.


Подробная информация о списке рассылки Homeros