Open tady159 opened 7 years ago
This is reproducible on Linux also.
You need to specify one of the mbrola voices, e.g.:
src/espeak-ng "hello world" --pho -v mb-en1
The program should really report a sensible error message if the voice does not support --pho
output.
I didn't know I should specify an mbrola voice. Maybe this should be added to the --help output?
For now, I'm having trouble to specify the desired voice. All I get is
Error: The specified espeak-ng voice does not exist.
I'm not sure if espeak-ng has the mbrola voices bundled with it, or if I should install them by myself manually. In any case I have already installed mbrola and registered a few voices (en1 being one of them), but I still don't know how to make espeak-ng find it.
A little late to the party, but if anyone else comes across this: Just came across this myself. You can find mbrola voices here: https://github.com/numediart/MBROLA-voices
There are install instructions for Windows in the README, basically you copy the voice data into C:/Program Files/eSpeak/espeak-ng-data/voices/mb
.
According to this something like sudo apt-get install mbrola mbrola-en1
could work under (apt-based) Linuxes.
However on Windows then I got:
C:\>espeak-ng -v en1 cat
Bad voice attribute: MBROLA2.060D
Bad voice attribute: A:
Unknown phoneme table: ''
This is also documented here where it is unanswered, and since this was the only search engine result I guess, I'm trying espeak
and mbrola
on Linux next.
I am using espeak-ng version 1.49.2 on Windows 10 and tried to use the argument --pho to check its output. A simple command that I've tried is
espeak-ng "hello world" --pho
For me, espeak-ng only outputs the audio data, with no text output, which would correspond to the .pho data to my stdout. --phonout leaves an empty file.