Is it possible to control the speed on eSpeak text to speech? And if possible - how to do it?
It depends on what you mean by "speed", and how you access the program. Via the command-line, the easiest ways to do this are -s<words per minute>
and -g<gap in milliseconds>
, details below. The GUI only allows setting values of -s
and within the recommended range of 80-450.
If you are using the command line, the number of words spoken per minute can be changed as Kara mentioned, with the option -s <words per minute>
. The default according to espeak --help
is 175 words per minute.
The minimum value is listed as 80 words per minute, supplying a lower value at the command line simply defaults to 80. The maximum listed speed is 450 but it is possible to exceed this in the command line, whether it is sensible to do so is entirely a user decision.
If you mean the pause between words, -g <gap in milliseconds>
can be used to affect the spacing. Again, the default is listed as 10mS. Giving a value of -g1000
sets a five-second gap between words, however; I suspect this is an error in the documentation and needs further investigation.
Reading espeak --help
is strongly recommended, you may have to find the correct path to the espeak
executable first.
If you have access to a GUI, for instance TTSApp.exe as compiled from the espeak installer, then shifting the Rate slider will allow you to move between -s80 and -s450.
It does not seem to be possible to change the word gap using the Microsoft GUI.