Как получить речевой вывод из введенного текста с помощью командной строки?
Также возможно изменить скорость передачи, шаг, громкость и т. д. с помощью простой команды .
Как получить речевой вывод из введенного текста с помощью командной строки?
Также возможно изменить скорость передачи, шаг, громкость и т. д. с помощью простой команды .
В порядке убывания популярности :
скажем , преобразует текст в звуковую речь с использованием речевого механизма GNUstep.
sudo apt-get install gnustep-gui-runtime
say "hello"
фестиваль Общая многоязычная система синтеза речи.
sudo apt-get install festival
echo "hello" | festival --tts
spd-say отправляет запрос вывода текста в речь в речь -dispatcher р>
sudo apt-get install speech-dispatcher
spd-say "hello"
espeak - многоязычный программный речевой синтезатор.
sudo apt-get install espeak
espeak "hello"
От man spd-say
:
NAME spd-say - send text-to-speech output request to speech-dispatcher SYNOPSIS spd-say [options] "some text" DESCRIPTION spd-say sends text-to-speech output request to speech-dispatcher process which handles it and ideally outputs the result to the audio system. OPTIONS -r, --rate Set the rate of the speech (between -100 and +100, default: 0) -p, --pitch Set the pitch of the speech (between -100 and +100, default: 0) -i, --volume Set the volume (intensity) of the speech (between -100 and +100, default: 0)
Следовательно, вы можете получить текст в речь, выполнив следующую команду:
spd-say "<type text>"
Пример:
spd-say "Welcome to Ubuntu Linux"
Вы также можете установить скорость передачи, шаг, громкость и т. д. , см. man-страницу.
Для festival
(голос кажется мне более естественным):
sudo apt-get install festival
р>
echo "hello" | festival --tts
р>
Конфигурация скорости и скорости:
Создать ~/.festivalrc
:
(Parameter.set 'Audio_Command "play -b 16 -c 1 -e signed-integer -r $SR -t raw $FILE tempo 1.5 pitch -100")
(Parameter.set 'Audio_Method 'Audio_Command)
р>
См. также Ссылка
Обновление: попробовали на другом компьютере ubuntu. Если бы установить английский речевой пакет для работы с фестивалем должным образом:
sudo apt-get install festvox-kallpc16k
р>
Также play
является командой cli, которая поставляется с пакетом sox
:
sudo apt-get install sox
р>
Ноябрь 2017 Ubuntu 16.04
Для моего проекта, cron
заданий, которые могут говорить, espeak
является самым простым.
sudo apt-get update
sudo apt-get install espeak
Для первой части, заставляя систему говорить, что время требует одной записи cron
0 * * * * /home/username/scripts/saytime
saytime:
#!/bin/bash
echo "\'$(date +%H)\' Hundred" | espeak
Он может принимать входные данные через stdio, например:
cat textfile | espeak -s 100
Для справки здесь приведены параметры командной строки для eSpeak:
espeak [опции] [""]
-a
Amplitude, 0 to 200, default is 100
-g
Word gap. Pause between words, units of 10mS at the default speed
-k
Indicate capital letters with: 1=sound, 2=the word "capitals", higher values indicate a pitch increase (try -k20).
-l
Line length. If not zero (which is the default), consider lines less than this length as end-of-clause
-p
Pitch adjustment, 0 to 99, default is 50
-s
Speed in words per minute, 80 to 450, default is 175
-v
Use voice file of this name from espeak-data/voices
-w
Write speech to this WAV file, rather than speaking it directly
-z
No final sentence pause at the end of the text
- голоса = р>
List the available voices for the specified language. If <language> is omitted, then list all voices.