Reputation: 780
I was following the following post to configure the female voice to meSpeak JavaScript variation of eSpeak TTS framework.
But I am unable to get it to work with the female voice. My en-us-f.json file look as the following.
{
"voice_id":"en/en-us-f",
"dict_id":"en_dict",
"dict": <same as the dict base 64 encoded default>
"voice":"name english-us-f\nlanguage en-us 2\nlanguage en-r\nlanguage en 3\ngender female\nphonemes en-us\ndictrules 3 6\noption reduce_t 1\nstressLength 140 120 190 170 0 0 255 290\nstressAmp 17 16 19 19 19 19 21 19\nreplace 03 I i\nreplace 03 I2 i",
"voice_encoding": "text"
}
Please help me to configure this properly. What am I doing wrong?
Upvotes: 1
Views: 873
Reputation: 361
Here is the code used for the en-us voice in http://www.masswerk.at/eliza – it's made to sound a bit like the cliche of an about 50-ish female psychologist.
{
"voice_id":"eliza/en/en-us",
"dict_id":"en_dict",
"dict":"AAQAAECpAAANRUE(... snipp ...)",
"voice":"name eliza-english-us\nlanguage en-us 2\nlanguage en-r\nlanguage en 3\ngender female 50\nphonemes en-us\ndictrules 3 6\noption reduce_t 1\npitch 90 138.\necho 40 20\nintonation 3\nflutter 1\nroughness 1\nvoicing 80\nconsonants 103 120\ntone 600 160 1200 145 2000 120\nstressLength 145 125 190 170 0 0 260 290\nstressAmp 17 16 19 19 19 19 21 19\nstressAdd 0 0 -10 -10 0 0 10 40\nbreath 0 2 3 3 3 3 0 5\nbreathw 150 150 200 200 400 400\nformant 0 105 80 150\nformant 1 110 80 160\nformant 2 110 70 150\nformant 3 110 70 150\nformant 4 115 80 200\nformant 5 115 80 100\nformant 6 110 70 150\nformant 7 110 70 100\nformant 8 110 70 150\n",
"voice_encoding":"text"
}
For the full file see: http://www.masswerk.at/eliza/voices/eliza-en-us.json
Make sure to have at least meSpeak.js version 1.3.1 (see heading comment in mespeak.js; current version is 1.5, update recommended).
Editing Best Practice: The internal eSpeak core will just fail on a malformed voice-syntax. Try again with some of the more complex lines deleted and work from a working voice description forward to a more sophisticated one.
e.g. you could start with:
"voice": "name english-us-f\nlanguage en-us 2\nlanguage en-r\nlanguage en 3\ngender female\nphonemes en-us\ndictrules 3 6\noption reduce_t 1"
and start adding stress and replacements options to this.
Upvotes: 2