gooofy / py-espeak-ng

Some simple wrappers around eSpeak NG intended to make using this excellent TTS for waveform and IPA generation as convenient as possible.
Apache License 2.0
38 stars 7 forks source link

esng.g2p -> voice does not exist #10

Open jabowery opened 3 years ago

jabowery commented 3 years ago

I'm getting "The specified espeak-ng voice does not exist." on the IPA generation example.

$ espeak-ng --version
eSpeak NG text-to-speech: 1.50  Data at: /usr/lib/x86_64-linux-gnu/espeak-ng-data
In [63]: esng.voices
Out[63]: 
[{'pty': '5',
  'language': 'af',
  'age': '--',
  'gender': 'M',
  'voice_name': 'Afrikaans',
  'file': 'gmw/af'},
 {'pty': '5',
  'language': 'am',
  'age': '--',
  'gender': 'M',
  'voice_name': 'Amharic',
  'file': 'sem/am'},
 {'pty': '5',
  'language': 'an',
  'age': '--',
  'gender': 'M',
  'voice_name': 'Aragonese',
  'file': 'roa/an'},
 {'pty': '5',
  'language': 'ar',
  'age': '--',
  'gender': 'M',
  'voice_name': 'Arabic',
  'file': 'sem/ar'},
 {'pty': '5',
  'language': 'as',
gooofy commented 3 years ago

espeak-ng voice names seem to have changed

use

$ espeak-ng --voices

to list available voices:

[..]
 5  en-gb-x-gbcwmd  --/M      English_(West_Midlands) gmw/en-GB-x-gbcwmd   (en-gb 9)(en 9)
 5  en-gb-x-rp      --/M      English_(Received_Pronunciation) gmw/en-GB-x-rp       (en-gb 4)(en 5)
 2  en-us           --/M      English_(America)  gmw/en-US            (en 3)
[...]

and use a voice file from that list, e.g.

esng.voice = 'gmw/en-US'

jabowery commented 3 years ago

Do you know what the man page for espeak-ng means when it says "the default English voice"? How can one find out which it is using other than going through each of them, one at a time, to see which one outputs the same phonemes as when the voice is unspecified in the command line?