У меня проблема с реч-диспетчером.Как сказано: перестал работать речевой диспетчер
. spd-say
запускается, но останавливается после нескольких слов.
Точнее:
spd- say -l de -r 50 -t male1 "$ (cat temp.txt)"
всех диспетчеров речи
. Вот что на самом деле доставило мне неприятности. перезапуск речевого диспетчера службы sudo
. Затем spd-say -l en -r 50 -t male1 "$ (cat temp.txt)"
Второе предложение никогда не заканчивается. Функция чтения вслух в Firefox также больше не работает. Я думаю, что использовать killall в целом не лучшая идея, и я пропустил следующие параметры для spd-say:
-w, --wait Wait till the message is spoken or discarded
-S, --stop Stop speaking the message being spoken
-C, --cancel Cancel all messages
Может кто-нибудь, пожалуйста, помогите мне снова заставить диспетчер речи работать без перезагрузки или выхода из системы и, возможно, скажу мне, как он интегрирован в сеанс gnome, что, кажется, является проблемой здесь, поскольку общесистемный речевой диспетчер отключен.
Редактировать 1: Только что загрузил виртуальную машину, и она терпит неудачу с тем же образцом текста, а также с другими. Я попытался скормить ему немного меньше текста, убрав начальные пробелы и звездочки, но он все равно прерывается в середине второго предложения. В другом примере он останавливается после первого предложения (здесь: https://docs.ansible.com/ansible/latest/network/dev_guide/developing_plugins_network.html ).С хорошей стороны: я начал использовать эту команду, когда не нашел в Firefox опции чтения текста на странице или в файле. Я только что заметил, что он, по крайней мере, может нормально читать журнал изменений systemd.
Правка 2: Firefox снова работает, ему просто потребовался перезапуск после всех моих попыток решить исходную проблему.
Вам понадобится -w с spd-say, чтобы предотвратить это.
Без этого spd-say отправит запрос на сообщение в Speech-dispatcher, Speech-dispatcher скажет "хорошо , Я это сделаю!" и вскоре после этого spd-say выйдет. Если диспетчер речи не закончил говорить на этом этапе, он останавливается, как только spd-say выходит.
Я не знаю, почему было принято архитектурное решение, сделайте это так. Поскольку это было так, для меня более логично, что spd-say будет иметь --no-wait, чем --wait, но я думаю, что мы оба согласимся с тем, что документация не так ясна по этому вопросу, как это, вероятно, должно быть.