5 способов заставить терминал Linux разговаривать

Я всегда ищу забавные и интересные команды или инструменты Linux, которые помогают мне выполнять различные задачи, не выходя из терминала. Например, есть несколько инструментов командной строки, которые позволяют вашему терминалу Linux разговаривать с вами. Давайте изучим эти инструменты и дадим вашему терминалу голос.

1. ESpeak

eSpeak – это легкий синтезатор речи с открытым исходным кодом, который является фаворитом на протяжении многих лет. Отличительной чертой eSpeak является его скорость и низкое потребление ресурсов. Кроме того, он поддерживает несколько языков и акцентов, что делает его удобным для пользователей.

Запустить eSpeak очень просто. В большинстве систем на базе Debian/Ubuntu вы можете просто открыть Терминал и набрать:

sudo apt install espeak

Для других дистрибутивов используйте менеджер пакетов вашей системы, например DNF, YUM или Pacman.

После установки использовать eSpeak невероятно просто. Вы можете просто набрать espeak, а затем текст, который вы хотите, чтобы он произнес:

espeak "Hello from your Linux terminal!"

Вот и все! Теперь ваш компьютер будет приветствовать вас (или то, что вы набрали) вслух. Если в вашей системе хранится текстовый файл, и вы хотите прочитать его содержимое вслух, используйте опцию -f вместе с именем файла.

espeak -f filename.txt

Вы также можете настроить такие параметры, как высота тона -p и скорость -s, чтобы получить роботизированный, но настраиваемый вывод.

espeak "Task completed successfully" -p=30 -s=150

Не нравится голос по умолчанию? eSpeak поддерживает различные голоса. Список доступных голосов можно посмотреть с помощью опции --voices:

espeak --voices

После выбора конкретного голоса можно указать имя голоса с помощью команды eSpeak:

espeak -v en-us "Hello, this is eSpeak"

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

ls -l | espeak --stdin

Примечание: Существует множество других опций и настроек, которые вы можете изучить. Чтобы ознакомиться со всеми доступными опциями, я рекомендую вам просмотреть страницу руководства инструмента eSpeak с помощью команды espeak --help.

2. Festival

Ищете инструмент с широкими возможностями настройки? Festival – это то, что вам нужно. Это полноценная система преобразования текста в речь с широким набором голосов. Она более совершенна, чем eSpeak, и предлагает больший контроль над голосами и синтезом речи.

Вы можете установить Festival с помощью стандартного менеджера пакетов в вашей системе Linux, например Debian, или пользователи Ubuntu могут получить его из менеджера пакетов APT.

sudo apt install festival

Чтобы использовать Festival из командной строки для базового преобразования текста в речь, выполните следующее:

echo "Festival is a powerful text-to-speech system." | festival --tts

Кроме того, вы можете прочитать любой текстовый файл с помощью Festival, выполнив следующее:

festival --tts textfile.txt

Инструменты командной строки Festival позволяют настраивать голос, корректировать произношение и многое другое. Подробную информацию о различных опциях можно найти на странице festival --help man. Это отличная альтернатива, если вы хотите получить больше контроля над синтезом речи.

3. Google Speech (gTTS)

В отличие от традиционных автономных инструментов, этот вариант использует облачные технологии, задействуя мощные возможности синтеза речи Google. Благодаря четкому произношению и естественному звучанию голоса Google Speech идеально подходит для тех, кто ставит во главу угла высококачественный результат и не возражает против подключения к Интернету.

Однако это не прямая команда, как в eSpeak. Вместо этого мы будем использовать библиотеку Python под названием gTTS (Google Text-to-Speech). Сначала убедитесь, что Python и pipx (программа установки пакетов Python) установлены. Если они установлены, установка gTTS будет простой:

pipx install gtts

Вам также понадобится Аудиоплеер, например mpg123 или VLC. Если у вас нет никакого плеера, то вы можете установить его с помощью этого:

sudo apt install mpg123

После установки gTTS и mpg123 вы можете использовать однострочник в терминале, чтобы заставить голос Google говорить:

gtts-cli "Hello and Welcome to Linux!" --output.txt temp.mp3 && mpg123 temp.mp3

Чтобы перечислить все доступные языки, используйте опцию --all, после чего можно указать язык с помощью опции --lang. Например, чтобы переключиться на французский, используйте опцию --lang fr перед опцией --output:

gtts-cli "Hello and Welcome to Linux!" --lang fr --output.txt temp.mp3 && mpg123 temp.mp3

Google Speech требует немного больше настроек, чем более простые инструменты, но если качество голоса является приоритетом, gTTS – это отличный вариант!

4. Say (речевой диспетчер)

Если вы пользовались MacOS, вам может быть знакома команда say. Хотя она не является стандартной командой Linux, вы можете добиться аналогичной функциональности с помощью Speech Dispatcher и его команды spd-say.

Для работы spd-say вам, скорее всего, потребуется установить сам Speech Dispatcher и, возможно, речевой движок вроде eSpeak, если у вас его еще нет. Чтобы установить его на Debian/Ubuntu, используйте стандартный менеджер пакетов APT:

sudo apt install speech-dispatcher

Speech Dispatcher действует как единый интерфейс для различных синтезаторов речи, позволяя вам использовать различные TTS-движки (включая eSpeak и Festival) с последовательной структурой команд. Это облегчает переключение между TTS-движками без существенного изменения скриптов.

После установки используйте spd-say, чтобы заставить ваш терминал Linux говорить:

spd-say "Hello and Welcome to Linux!"

Эта команда должна использовать Speech Dispatcher для произнесения текста, используя речевой движок по умолчанию, настроенный в Speech Dispatcher.

Вы также можете настроить темп, шаг и громкость речи, используя опции -r, -p и -v вместе с командой spd-say. Если вы хотите получить доступ к дополнительным опциям настройки, ознакомьтесь с man-страницей, выполнив эту команду spd-say --help.

Примечание: Существует также инструмент GNUstep под названием say, который позволяет преобразовать заданный текст в звуковую речь и воспроизвести ее через звуковое устройство. К сожалению, этот инструмент имеет ограниченный набор опций и не имеет расширенных возможностей настройки.

5. Flite

Ищете что-то еще более легкое, чем eSpeak? Познакомьтесь с Flite. Он разработан как небольшой и быстрый движок для синтеза речи. По сути, это уменьшенная версия Festival, что делает его идеальным для ситуаций, когда ресурсы ограничены, например для встраиваемых систем или старых компьютеров.

Для установки вы можете использовать стандартный менеджер пакетов, например apt, Dnf, Pacman. Например, в Debian/Ubuntu введите следующее:

sudo apt install flite

Использование Flite очень похоже на eSpeak по своей простоте. Просто наберите flite, а затем текст, который вы хотите произнести:

flite -t "Flite is a small and fast speech synthesis engine."

Flite прочитает текст прямо в вашем терминале. Если вы работаете над Raspberry Pi или системой с низким уровнем ресурсов, Flite стоит рассмотреть.

Ну вот и все! Теперь у вас есть несколько способов сделать ваш терминал Linux говорящим! Хотите ли вы создать доступную систему, автоматизировать объявления или просто развлечься – эти инструменты найдут что-то для себя.

Я рекомендую начать с eSpeak или Flite за их простоту. Затем изучите другие варианты в зависимости от ваших потребностей. Кроме того, вы можете сделать свой терминал более интересным, используя другие инструменты или играя с различными забавными командами.

Зарубин Иван Эксперт по Linux и Windows

Парашютист со стажем. Много читаю и слушаю подкасты. Люблю посиделки у костра, песни под гитару и приближающиеся дедлайны. Люблю путешествовать.

Похожие статьи

Комментарии (0)