Как уменьшить скорость речи в Расширении для чтения текста в 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?

3 ответа

Решение

Вам нужно изменить файл, установленный расширением 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

Спасибо за приведенные выше предложения, это помогло мне понять, что, по крайней мере, в последней версии (Чтение текста 0.8.70) разработчики предложили ряд выбираемых параметров в поле «Параметры командной строки», например:

"(TTS_WSCRIPT_VBS)" /язык:"(SELECTION_LANGUAGE_COUNTRY_CODE)" /rate:-2 "(TMP)".

изменить скорость чтения. Скорость меняется от 0 (очевидно, никаких изменений) до -10 (невыносимо медленно). Вы можете ускориться, используя положительные целые числа. Здесь также есть все варианты тарифов для французского языка. Хороший!

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