Как уменьшить скорость речи в Расширении для чтения текста в Libreoffice?

Я установил расширение чтения текста для libreoffice. Я хочу замедлить скорость речи. Я открыл ->tools->add ons->read selection и обнаружил следующее всплывающее меню

#read with an external program
/usr/bin/python2.7
#command line options
"(ESPEAK_READ_TEXT_PY)" --language=(SELECTION_LANGUAGE_COUNTRY_CODE) --output "(HOME)(NOW).wav" "(TMP)"

Следующая команда, приведенная выше, открывает тотемное видео и воспроизводит временный предварительно записанный аудиофайл выбранного текста. Я не могу найти опцию уменьшения скорости воспроизведения звука в Totem Video. Я изменил мои программы по умолчанию на VLC, что не повлияло на приведенный выше код. Я добавил строку vlc рядом с --output, который не открыл vlc.

Как уменьшить скорость речи в Расширении для чтения текста в Libreoffice?

2 ответа

Решение

Вам нужно изменить файл, установленный расширением Read text, espeak_read_text_file.py,

Сначала найдите этот файл в вашей системе:

$ sudo updatedb
$ locate espeak_read_text_file.py
/home/sylvain/.config/libreoffice/4/user/extensions/tmp/extensions/lukglria.tmp_/read_text.0.8.20.oxt/python/espeak_read_text_file.py
/home/sylvain/.config/libreoffice/4/user/uno_packages/cache/uno_packages/lukglrib.tmp_/read_text.0.8.20.oxt/python/espeak_read_text_file.py

Откройте тот, который находится в ~/.config/libreoffice/4/user/uno_packages,

В строке 155 вы должны увидеть команду, подобную приведенной ниже:

s1='"'+sCommand+'" -v '+sVoice+' -w "'+sTMP1+'" '+sTXT

Измените это для этого вместо этого:

s1='"'+sCommand+'" -s 120 -v '+sVoice+' -w "'+sTMP1+'" '+sTXT

Это будет использовать -s <integer> вариант espeak (Скорость в словах в минуту, по умолчанию 160)

дополнительная заметка linuxfreebird

Код чувствителен к пространству.

    if "windows" in platform.system().lower():
      sCommand=readtexttools.getWinFullPath("eSpeak/command_line/espeak.exe")
#    s1='"'+sCommand+'" -v '+sVoice+' -w "'+sTMP1+'" '+sTXT
    s1='"'+sCommand+'" -s 140 -v '+sVoice+' -w "'+sTMP1+'" '+sTXT
    readtexttools.myossystem(s1)
    readtexttools.ProcessWaveMedia(sB,sTMP1,sIMG1,sOUT1,sAUDIBLE,sVISIBLE)

Убедитесь, что строка начинается с s1 находится в соответствии с readtexttools указано в коде выше. Если это смещение пробела, код не будет выполнен правильно.

После прочтения выше и изучения правильного файла я обнаружил, что могу изменить скорость и высоту звука в диалоговом окне " Чтение текста". Я не изменил сам файл. Я только добавил --rate=35% --pitch=65% в код в диалоговом окне.

"(PICO_READ_TEXT_PY)" --language=(SELECTION_LANGUAGE_COUNTRY_CODE) --visible=false --rate=35% --pitch=65% "(TMP)"

Смотрите снимок экрана диалогового окна "Чтение текста" с добавленным кодом: https://ask-ubuntu.ru/images/6da8f12380436716f2c7dd346dd91336e439b893.png

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