Как я могу изменить речь, используемую Представлением Читателя Firefox (Рассказчик) в Ubuntu?

**how to change firefox reader view voice in ubuntu**

Речь по умолчанию, а также всю альтернативную речь очень трудно понять.

Я не могу найти документацию о том, как эта функция обеспечена электричеством.

13
задан 27 May 2018 в 14:57

4 ответа

Мне удалось использовать festival речь как значение по умолчанию на Firefox.

enter image description here

Чтобы сделать это, мы должны изменить некоторые конфигурации на файле /etc/speech-dispatcher/speechd.conf. Но сначала, я должен объяснить основную идею о том, как она работает. Мы можем всегда видеть то, чем речь является значением по умолчанию один используемый speech-dispatcher использование команды spd-say:

spd-say "Hello. How are you?"

На Ubuntu, речь Texto к речи (TTS) по умолчанию, которая идет speech-dispatcher espeak. Таким образом, мы слышим точно ту же речь, когда мы используем эту другую команду:

espeak "Hello. How are you?"

Это происходит потому что spd-say просто использует espeak речь, как произведено. И хорошо, Firefox делает то же, он использует любую речь, настроен в speech-dispatcher как произведено для чтения веб-страниц в читателе просматривают режим (Ctrl+Alt+R).

Так, что мы должны сделать, здесь должен изменить речь, которая стала выводом в spd-say команда и, после того как мы делаем это, Firefox, собирается использовать другое TTS voice как значение по умолчанию также. Я собираюсь описать процесс того, чтобы заставлять это работать с festival речь, но я полагаю, что процедура является тем же, если Вы хотите выполнить другое TTS voice. Во-первых, мы должны установить фестиваль:

sudo apt-get install festival

Мы можем протестировать его речь в командной строке путем ввода:

echo "Hello. How are you?" | festival --tts

Теперь мы должны изменить файл speechd.conf. Таким образом, мы вводим sudo vi /etc/speech-dispatcher/speechd.conf на терминале и вокруг строки 205 мы будем видеть следующую часть прокомментированных конфигураций:

#AddModule "espeak"       "sd_espeak"   "espeak.conf"
AddModule "festival"     "sd_festival"  "festival.conf"
#AddModule "flite"        "sd_flite"     "flite.conf"
#AddModule "ivona"    "sd_ivona"    "ivona.conf"
#AddModule "pico"        "sd_pico"     "pico.conf"
#AddModule "espeak-generic" "sd_generic" "espeak-generic.conf"
#AddModule "espeak-mbrola-generic" "sd_generic" "espeak-mbrola-generic.conf"
#AddModule "swift-generic" "sd_generic" "swift-generic.conf"
#AddModule "epos-generic" "sd_generic"   "epos-generic.conf"
#AddModule "dtk-generic"  "sd_generic"   "dtk-generic.conf"
#AddModule "pico-generic"  "sd_generic"   "pico-generic.conf"
#AddModule "ibmtts"       "sd_ibmtts"    "ibmtts.conf"
#AddModule "cicero"        "sd_cicero"     "cicero.conf"

# DO NOT REMOVE the following line unless you have
# a specific reason -- this is the fallback output module
# that is only used when no other modules are in use
#AddModule "dummy"         "sd_dummy"      ""

# The output module testing doesn't actually connect to anything. It
# outputs the requested commands to standard output and reads
# responses from stdandard input. This way, Speech Dispatcher's
# communication with output modules can be tested easily.

# AddModule "testing"

# The DefaultModule selects which output module is the default.  You
# must use one of the names of the modules loaded with AddModule.

#DefaultModule espeak
DefaultModule festival

Необходимо внести два изменения здесь:

  1. Не прокомментируйте строку AddModule "festival" "sd_festival" "festival.conf"
  2. Добавьте строку DefaultModule festival

Мы должны работать festival как сервер для создания speech-dispatcher используйте его в качестве значения по умолчанию. Мы можем сделать это путем добавления следующей строки в конце файла, это открыто, когда мы используем команду sudo crontab -e:

@reboot /usr/bin/festival --server

Теперь это сделано!! После перезагрузки системного Firefox и spd-say будет использовать festival речь, как произведено.


Дополнительная информация

Я полагаю что процедура заставлять новую речь работать в Firefox всегда будет то же:

  1. Не прокомментируйте модуль новой речи TTS, которую мы установили (/etc/speech-dispatcher/speechd.conf).

  2. Установите новую строку по умолчанию для речи TTS, которую мы хотим (/etc/speech-dispatcher/speechd.conf).

  3. Выполните сервер на порте, указанном на файлах в папке /etc/speech-dispatcher/modules/.

Что названный моим вниманием на это то, что существует модуль для речи Ivona там. Ivona является собственным продуктом и сегодня единственным способом использовать его (насколько я знаю), как сервис с оплатой по мере использования на AWS, но его речь действительно хороша, и они звучат очень естественными.

Файл /etc/speech-dispatcher/modules/ivona.conf настроен для слушания сервера на порте 9123. Я думаю, возможно, существует способ выполнить локальный сервер, который получает речь Ivona с помощью моего AWS APIs (Я не уверен, но возможно использование части этого приложения Node.js, это уже разрабатывается)... И если это возможно, это означает, что также возможно выполнить Ivona на Ubuntu как речь по умолчанию системы и следовательно использовать его с reader view mode на Firefox. Хотя я не знаю, как сделать это теперь, это похоже на интересную возможность.

11
ответ дан 23 November 2019 в 03:19

Речь, используемая рассказывать функцией режима читателя Firefox, зависит от платформы, Вы работаете на нем. На Linux Firefox будет использовать speech-dispatcher представлять текст к искусственной речи.

Так независимо от того, что Вы настроили в своих настройках речевого диспетчера (/etc/speech-dispatcher/speechd.conf) должен браться и использоваться Firefox. Существуют различные механизмы и речь, доступная речевому диспетчеру, некоторые из которых могут быть установлены через пакеты Ubuntu, например. speech-dispatcher-espeak-ng или speech-dispatcher-festival.

Там ограничен поддержка выбора речи/языков из читателя Firefox GUI, но большинство настроек должно быть установлено на стороне ОС, которая является speechd.conf на Linux.

Некоторые настройки доступны через about:config диалоговое окно, если Вы ищете, "рассказывает":

enter image description here

Я экспериментировал вполне немного с различными настройками в обоих, about:config и speechd.conf, но не мог заставить ничего работать, но значение по умолчанию, которое идет с Ubuntu. Чувство, которое я получаю, состоит в том, что интерфейс между Firefox и речевым диспетчером не очень стабилен, но возможно Вы - более удачное экспериментирование.

Этот парень: https://bbs.archlinux.org/viewtopic.php? id=217411, кажется, имел больше успеха на Archlinux, настраивающем вещи использовать фестиваль в качестве вывода. Я пытался воспроизвести это на Ubuntu 18.04, но никогда не мог заставлять Firefox работать с ним.

6
ответ дан 23 November 2019 в 03:19

Благодаря Rafael Muynarsk для ответа за запуск меня. Вот то, что я сделал

Зависимости от установки

apt install festival speech-dispatcher-festival festvox-{rablpc16k,kallpc16k,kdlpc16k} sox
  • festvox-{rablpc16k,kallpc16k,kdlpc16k} речевые языки для английского языка
  • sox, без него только некоторая часть текста, где считано

Конфигурация редактирования

sudo vim /etc/speech-dispatcher/speechd.conf

Отключить espeak- связанная конфигурация и включает festival один

#AddModule "espeak-ng"    "sd_espeak-ng" "espeak-ng.conf"
AddModule "festival"     "sd_festival"  "festival.conf"

#DefaultModule espeak-ng
DefaultModule festival

Запустить festival сервер

Без него я получил только некоторый syntences.

/usr/bin/festival --server

Firefox перезапуска

Затем перейдите к режиму представления читателя и попробуйте его.

1
ответ дан 23 November 2019 в 03:19

Mbrola (более простой метод, 20.04 LTS, адаптировано Эдуардом Лопесом)

  1. sudo apt-get install espeak mbrola-us1 (или, чтобы получить список доступных голосов и языков, запустите apt- cache search mbrola. Обратите внимание на «us1». Он будет установлен по умолчанию на шаге 4, и шаг 7 необходимо повторить для каждого установленного голоса!)

В /etc/speech-dispatcher/speechd .conf

  1. Включить espeak-mbrola-generic модуль:

    sudo sed -i '/#AddModule "espeak-mbrola-generic/s/^#//g' /etc/speech- диспетчер /speechd.conf
    
  2. Установите Mbrola в качестве модуля по умолчанию:

     sudo sed -i '/DefaultModule espeak-ng/s/-ng/-mbrola-generic/g' /etc/speech-dispatcher/speechd.conf
    
  3. Используйте язык en1:

    sudo sed -i '/#LanguageDefaultModule "en" "espeak"/s//LanguageDefaultModule "en1" "espeak-mbrola-generic"/g' /etc /speech-dispatcher/speechd.conf
    

В /etc/speech-dispatcher/modules/espeak-mbrola-generic.conf

  1. Отключить общий язык:

    sudo sed -i '/GenericLanguage/s/^/#/g'/ etc/speech-dispatcher/modules/espeak-mbrola-generic.conf
    
  2. Отключить добавление голосов

    sudo sed -i '/AddVoice/s/^/#/g' /etc/speech-dispatcher/modules/espeak-mbrola-generic.conf
    
  3. Включить голоса США

    sudo sed -i '/#AddVoice.*us1"$/s/^#//g' /etc/speech-dispatcher/modules/espeak-mbrola-generic.conf`
    

Теперь неразличимый голос по умолчанию будет заменен приемлемым голосом, который подходит для автономных файлов.Приятного прослушивания!

1
ответ дан 3 September 2020 в 21:50

Другие вопросы по тегам:

Похожие вопросы: