Как добавить текст в речь в GoldenDict?

Как добавить текстовый речевой сервис или другие подобные сервисы в GoldenDict для автономного использования?

Я использую Ubuntu 13.10 и хочу научиться произносить английские слова, которых я не знаю.

8 ответов

Вы можете использовать вкладку " Программы ", чтобы подключить программное обеспечение преобразования текста в речь (например, espeak) в "золотой диск".

Вот шаги:

  1. Установите espeak:

    sudo apt-get install espeak
    
  2. Откройте GoldenDict и нажмите F3, чтобы открыть окно Словари (или выберите меню " Правка / Словари").

  3. На вкладке Источники выберите вкладку Программы.

  4. Нажмите кнопку " Добавить", выберите " Аудио" для столбца " Тип", введите espeak для имени и espeak -v en %GDWORD% для столбца командной строки.

  5. Не забудьте установить флажок " Включено".

  6. Нажмите ОК

  7. Закройте окно GoldenDict и снова откройте его.

Теперь в ваших словарях и результатах перевода есть элемент espeak. Нажав на значок динамика перед словом в espeak результат, прочитает слово для вас.

В последних версиях GoldenDict есть вкладка " Программы " в меню настроек, где вы можете добавлять собственные команды, которые будут выполняться по вашему запросу.

В этом сообщении на форуме от wissam описывается, как настроить Google TTS с GoldenDict, используя метод, описанный выше:

Если вы хотите использовать Google TTS в GD, вы можете сделать это, выполнив следующие действия:

  1. Правка -> Словари -> Программы.

  2. нажмите кнопку Добавить и выберите "Аудио" в поле типа.

  3. в поле "Командная строка" скопируйте и вставьте эту команду:

    bash -c "p=$(echo "%GDWORD%" |sed 's/ /+/g'); wget -q -U Mozilla -O - translate.google.com.vn/translate_tts?ie=UTF-8\&q=$p\&tl=en\&client=tw-ob | mpg123 -"
    
  4. нажмите ОК

    для языков, отличных от английского, в команде измените tl = en, например fr для французского или es для испанского

Теперь это, конечно, онлайн-TTS и не обязательно то, что вы ищете, но вы можете использовать тот же метод для добавления любого типа программного обеспечения TTS в GoldenDict (например, espeak %GDWORD% в командной строке).

Проверьте это Q&A для хороших приложений TTS на Linux.

Google Text-To-Speech (TTS)

Не забудьте создать символическую ссылку для simple_google_tts на ваш PATH (например, ~/bin или /usr/local/bin), чтобы упростить доступ.

bash -c "p=$(echo "%GDWORD%" |sed 's/ /+/g'); wget -q -U Mozilla -O - https://translate.google.com.vn/translate_tts?ie=UTF-8\&q=$p\&tl=en\&client=tw-ob | mpg123 -"

это сработало для меня.

Если вам нужен родной женский акцент, такой как Google, загрузите отсюда (+500 тыс. слов ~ 2 ГБ):https://github.com/yousefvand/pronunciations

Что сработало для меня:

  1. Установить Crow Translate
  2. В GoldenDict добавьте crow -s en -u “%GDWORD%”на вкладку "Программы". Тип должен быть "Аудио". См. Рисунок ниже.

введите описание изображения здесь

Вы можете изменить язык TTS, изменив часть -s en к другому коду, например it для итальянского, fr для французского и т. д. Подробнее см. документацию по Crow translate.

  • Установите translate-shell (https://github.com/soimort/translate-shell) с sudo apt install translate-shell
  • Перейдите в раздел программы golddict и используйте bash trans -b -p :en %GDWORD%в разделе команд введите audio.

Это переведет все, что вы ищете, на английский, а затем произнесет английский перевод. Вы можете изменить en в коде, чтобы сказать это на другом языке. Для корректной работы требуется подключение к Интернету .

Вы можете использовать быструю программу.

Пример:

      padsp /opt/swift/bin/swift -p "speech/rate=150,voice/cache-size=240000,audio/deadair=100" -n Diane "%GDWORD%"

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