Lex:
Le> 1. Подключал ru_tts к speech-dispatcher при помощи модуля sd_generic. В
Le> качестве проигрывателя использовал pacat. Для этого пришлось написать
Le> маленькую утилитку на c++ (моя первая программа под linux) для
Le> конвертации 8 bit signed в 8 bit unsigned, ибо первый не поддерживается
Le> pacat'ом, да и вобще pulseaudio. Результат - отклик так себе (я
Le> сравниваю с тем, что имею под windows),
Надеюсь, что в утилите конвертации Вы позаботились об уменьшении задержки.
При построении цепочки процессов, объединённых в конвейер, задержка всей
цепочки, очевидно, не меньше, чем у составляющих процессов. Хотя задержка
может быть вызвана и pacat плюс Pulseaudio, конечно.
Ещё имеет значение, о каком отклике Вы говорите. Задержка в случае
прерывания звука - это одно, а задержка в начале - другое. Выше я писал о
той задержке, которая может быть в начале.
[...]
Le> 3. Собрал voiceman. Опять же, без правки исходников не обошлось: в файле
Le> utils/trim.cpp нехватает инклуда stdio.h. gcc ругается на perror
Le> (undefined in this scope)
Я вроде бы писал об этом Михаилу.
Le> Ну да я уже привык.
Хорошо. :-)
[...]
Le> Вобще, voiceman работает достаточно странно. Переключение с русского на
Le> английский в середине фразы (без знаков пунктуации) на мой взгляд не
Le> обосновано, паузы после каждой запятой тоже бъют по уху. Думаю, что
Le> voiceman вызывает синтезатор после каждого куска фразы, это так?
Про Voiceman не скажу, но Multispeech 1, как я помню, вызывает синтезатор
для каждой команды q {...} отдельно. А Emacspeak определяет конец фрагмента
для q {...} после знака пунктуации, за которым идёт знак пробела. В
некоторых конфигурациях после знаков препинания были заметные паузы, но в
той конфигурации, которая у меня сейчас, паузы практически не заметны.
[...]
Le> Возможно, хорошего отклика можно добится написав нативный вывод на
Le> pulseaudio без создания кучки процессов на каждое нажатие клавишь. Но
Le> это значит создание еще одного велосипеда "yet-another-speech-server",
Le> чего делать не хочется. Или это и есть пресловутый linux way?
Что именно? Создание yet another? Если это наиболее адекватное решение, или
если есть желание и возможность это сделать, то почему бы и нет.
Кстати, если кто-то решит-таки создать свой речевой сервер, то могу
предложить для него название - Multicheeps. :-)
--
Дмитрий Падучих
--
Blinux-rus mailing list
[email protected]
http://www.a11ywiki.org/cgi-bin/mailman/listinfo/blinux-rus