Browse Source

Don't allow the gender property to be set in language files (they are only relevant in voice files).

master
Reece H. Dunn 8 years ago
parent
commit
36a2872b4b
67 changed files with 10 additions and 95 deletions
  1. 0
    1
      espeak-ng-data/lang/aav/vi
  2. 0
    1
      espeak-ng-data/lang/aav/vi-VN-x-central
  3. 0
    1
      espeak-ng-data/lang/aav/vi-VN-x-south
  4. 0
    1
      espeak-ng-data/lang/art/eo
  5. 0
    1
      espeak-ng-data/lang/art/lfn
  6. 0
    1
      espeak-ng-data/lang/azc/nci
  7. 0
    2
      espeak-ng-data/lang/bat/lt
  8. 0
    1
      espeak-ng-data/lang/bat/lv
  9. 0
    1
      espeak-ng-data/lang/bnt/sw
  10. 0
    1
      espeak-ng-data/lang/bnt/tn
  11. 0
    1
      espeak-ng-data/lang/cel/cy
  12. 0
    1
      espeak-ng-data/lang/dra/ml
  13. 0
    1
      espeak-ng-data/lang/dra/ta
  14. 0
    3
      espeak-ng-data/lang/gmq/da
  15. 0
    2
      espeak-ng-data/lang/gmq/is
  16. 0
    1
      espeak-ng-data/lang/gmq/no
  17. 0
    2
      espeak-ng-data/lang/gmq/sv
  18. 0
    1
      espeak-ng-data/lang/gmw/af
  19. 0
    3
      espeak-ng-data/lang/gmw/de
  20. 0
    1
      espeak-ng-data/lang/gmw/en
  21. 0
    1
      espeak-ng-data/lang/gmw/en-029
  22. 0
    1
      espeak-ng-data/lang/gmw/en-GB-scotland
  23. 0
    3
      espeak-ng-data/lang/gmw/en-GB-x-gbclan
  24. 0
    1
      espeak-ng-data/lang/gmw/en-GB-x-gbcwmd
  25. 0
    1
      espeak-ng-data/lang/gmw/en-GB-x-rp
  26. 0
    2
      espeak-ng-data/lang/gmw/en-US
  27. 0
    1
      espeak-ng-data/lang/gmw/nl
  28. 0
    3
      espeak-ng-data/lang/grk/el
  29. 0
    2
      espeak-ng-data/lang/grk/grc
  30. 0
    1
      espeak-ng-data/lang/inc/bn
  31. 0
    1
      espeak-ng-data/lang/inc/hi
  32. 0
    1
      espeak-ng-data/lang/inc/ne
  33. 0
    1
      espeak-ng-data/lang/ine/hy
  34. 0
    2
      espeak-ng-data/lang/ine/hy-arevmda
  35. 0
    1
      espeak-ng-data/lang/ine/sq
  36. 0
    1
      espeak-ng-data/lang/ira/ku
  37. 0
    1
      espeak-ng-data/lang/itc/la
  38. 0
    1
      espeak-ng-data/lang/jpx/jp
  39. 0
    1
      espeak-ng-data/lang/ko
  40. 0
    1
      espeak-ng-data/lang/poz/id
  41. 0
    1
      espeak-ng-data/lang/poz/ms
  42. 0
    1
      espeak-ng-data/lang/roa/an
  43. 0
    2
      espeak-ng-data/lang/roa/ca
  44. 0
    1
      espeak-ng-data/lang/roa/es
  45. 0
    1
      espeak-ng-data/lang/roa/es-419
  46. 0
    1
      espeak-ng-data/lang/roa/fr
  47. 0
    1
      espeak-ng-data/lang/roa/fr-BE
  48. 0
    2
      espeak-ng-data/lang/roa/it
  49. 0
    1
      espeak-ng-data/lang/roa/pt-BR
  50. 0
    1
      espeak-ng-data/lang/roa/pt-PT
  51. 0
    1
      espeak-ng-data/lang/roa/ro
  52. 0
    1
      espeak-ng-data/lang/sem/ar
  53. 0
    1
      espeak-ng-data/lang/sit/cmn
  54. 0
    1
      espeak-ng-data/lang/sit/yue
  55. 0
    2
      espeak-ng-data/lang/trk/tr
  56. 0
    1
      espeak-ng-data/lang/trk/tt
  57. 0
    2
      espeak-ng-data/lang/urj/fi
  58. 0
    1
      espeak-ng-data/lang/urj/hu
  59. 0
    1
      espeak-ng-data/lang/zls/bs
  60. 0
    2
      espeak-ng-data/lang/zls/cs
  61. 0
    1
      espeak-ng-data/lang/zls/hr
  62. 0
    2
      espeak-ng-data/lang/zls/mk
  63. 0
    1
      espeak-ng-data/lang/zls/pl
  64. 0
    1
      espeak-ng-data/lang/zls/ru
  65. 0
    2
      espeak-ng-data/lang/zls/sk
  66. 0
    1
      espeak-ng-data/lang/zls/sr
  67. 10
    8
      src/libespeak-ng/voices.c

+ 0
- 1
espeak-ng-data/lang/aav/vi View File

name Vietnamese (Northern) name Vietnamese (Northern)
language vi language vi
gender male


words 1 words 1
pitch 80 118 pitch 80 118

+ 0
- 1
espeak-ng-data/lang/aav/vi-VN-x-central View File

language vi-vn-x-central language vi-vn-x-central
phonemes vi-hue phonemes vi-hue
dictrules 1 dictrules 1
gender male


words 1 words 1
pitch 82 118 //80 118 pitch 82 118 //80 118

+ 0
- 1
espeak-ng-data/lang/aav/vi-VN-x-south View File

language vi-vn-x-south language vi-vn-x-south
phonemes vi-sgn phonemes vi-sgn
dictrules 2 dictrules 2
gender male


words 1 words 1
pitch 82 118 //80 118 pitch 82 118 //80 118

+ 0
- 1
espeak-ng-data/lang/art/eo View File

name Esperanto name Esperanto
language eo language eo
gender male


apostrophe 2 apostrophe 2

+ 0
- 1
espeak-ng-data/lang/art/lfn View File

name Lingua Franca Nova name Lingua Franca Nova
language lfn language lfn
gender male
phonemes base2 phonemes base2
l_unpronouncable 0 l_unpronouncable 0

+ 0
- 1
espeak-ng-data/lang/azc/nci View File

name Nahuatl (Classical) name Nahuatl (Classical)
language nci language nci
gender male


intonation 3 intonation 3
stressrule 2 stressrule 2

+ 0
- 2
espeak-ng-data/lang/bat/lt View File

name Lithuanian name Lithuanian
language lt language lt
gender male


+ 0
- 1
espeak-ng-data/lang/bat/lv View File

name Latvian name Latvian
language lv language lv
gender male
maintainer Valdis Vitolins <[email protected]> maintainer Valdis Vitolins <[email protected]>
status mature status mature
words 0 2 words 0 2

+ 0
- 1
espeak-ng-data/lang/bnt/sw View File

name Swahili name Swahili
language sw language sw
gender male


status testing status testing

+ 0
- 1
espeak-ng-data/lang/bnt/tn View File

name Setswana name Setswana
language tn language tn
gender male


status testing status testing

+ 0
- 1
espeak-ng-data/lang/cel/cy View File

name Welsh name Welsh
language cy language cy
gender male


intonation 4 intonation 4

+ 0
- 1
espeak-ng-data/lang/dra/ml View File

name Malayalam name Malayalam
language ml language ml
gender male


intonation 2 intonation 2
//consonants 80 //consonants 80

+ 0
- 1
espeak-ng-data/lang/dra/ta View File

name Tamil name Tamil
language ta language ta
gender male


intonation 2 intonation 2
consonants 80 consonants 80

+ 0
- 3
espeak-ng-data/lang/gmq/da View File

name Danish name Danish
language da language da
gender male


tunes s2 c2 q2 e2 tunes s2 c2 q2 e2



+ 0
- 2
espeak-ng-data/lang/gmq/is View File

name Icelandic name Icelandic
language is language is
gender male


+ 0
- 1
espeak-ng-data/lang/gmq/no View File

name Norwegian name Norwegian
language no language no
language nb language nb
gender male


intonation 4 intonation 4

+ 0
- 2
espeak-ng-data/lang/gmq/sv View File

name Swedish name Swedish
language sv language sv
gender male


+ 0
- 1
espeak-ng-data/lang/gmw/af View File

name Afrikaans name Afrikaans
language af language af
gender male


maintainer Christo de Klerk <[email protected]> maintainer Christo de Klerk <[email protected]>
status mature status mature

+ 0
- 3
espeak-ng-data/lang/gmw/de View File

name German name German
language de language de
gender male



+ 0
- 1
espeak-ng-data/lang/gmw/en View File

name English (Great Britain) name English (Great Britain)
language en-gb 2 language en-gb 2
language en 2 language en 2
gender male


maintainer Reece H. Dunn <[email protected]> maintainer Reece H. Dunn <[email protected]>
status mature status mature

+ 0
- 1
espeak-ng-data/lang/gmw/en-029 View File

name English (Caribbean) name English (Caribbean)
language en-029 language en-029
language en 10 language en 10
gender male


maintainer Reece H. Dunn <[email protected]> maintainer Reece H. Dunn <[email protected]>
status mature status mature

+ 0
- 1
espeak-ng-data/lang/gmw/en-GB-scotland View File

name English (Scotland) name English (Scotland)
language en-gb-scotland language en-gb-scotland
language en 4 language en 4
gender male


maintainer Reece H. Dunn <[email protected]> maintainer Reece H. Dunn <[email protected]>
status mature status mature

+ 0
- 3
espeak-ng-data/lang/gmw/en-GB-x-gbclan View File

language en-gb-x-gbclan language en-gb-x-gbclan
language en-gb 3 language en-gb 3
language en 5 language en 5
gender male


maintainer Reece H. Dunn <[email protected]> maintainer Reece H. Dunn <[email protected]>
status mature status mature
replace 00 i@3 i@ replace 00 i@3 i@
replace 03 N n replace 03 N n
replace 03 i I2 replace 03 i I2



+ 0
- 1
espeak-ng-data/lang/gmw/en-GB-x-gbcwmd View File

language en-gb-x-gbcwmd language en-gb-x-gbcwmd
language en-gb 9 language en-gb 9
language en 9 language en 9
gender male


phonemes en-wm phonemes en-wm



+ 0
- 1
espeak-ng-data/lang/gmw/en-GB-x-rp View File

language en-gb-x-rp language en-gb-x-rp
language en-gb 4 language en-gb 4
language en 5 language en 5
gender male


maintainer Reece H. Dunn <[email protected]> maintainer Reece H. Dunn <[email protected]>
status mature status mature

+ 0
- 2
espeak-ng-data/lang/gmw/en-US View File

name English (America) name English (America)
language en-us 2 language en-us 2
language en 3 language en 3
gender male


maintainer Reece H. Dunn <[email protected]> maintainer Reece H. Dunn <[email protected]>
status mature status mature


replace 03 I i replace 03 I i
replace 03 I2 i replace 03 I2 i


+ 0
- 1
espeak-ng-data/lang/gmw/nl View File

name Dutch name Dutch
language nl language nl
gender male

+ 0
- 3
espeak-ng-data/lang/grk/el View File

name Greek (Modern) name Greek (Modern)
language el language el
gender male



+ 0
- 2
espeak-ng-data/lang/grk/grc View File

name Greek (Ancient) name Greek (Ancient)
language grc language grc
gender male


stressLength 170 170 190 190 0 0 230 240 stressLength 170 170 190 190 0 0 230 240
dictrules 1 dictrules 1
words 3 words 3


+ 0
- 1
espeak-ng-data/lang/inc/bn View File

name Bengali name Bengali
language bn language bn
gender male

+ 0
- 1
espeak-ng-data/lang/inc/hi View File

name Hindi name Hindi
language hi language hi
gender male

+ 0
- 1
espeak-ng-data/lang/inc/ne View File

name Nepali name Nepali
language ne language ne
gender male


dictrules 1 dictrules 1

+ 0
- 1
espeak-ng-data/lang/ine/hy View File

name Armenian (East Armenia) name Armenian (East Armenia)
language hy language hy
gender male

+ 0
- 2
espeak-ng-data/lang/ine/hy-arevmda View File

name Armenian (West Armenia) name Armenian (West Armenia)
language hy-arevmda language hy-arevmda
language hy 8 language hy 8
gender male


dictrules 1 dictrules 1


replace 00 k g replace 00 k g


replace 00 R2 R // ?? replace 00 R2 R // ??


+ 0
- 1
espeak-ng-data/lang/ine/sq View File

name Albanian name Albanian
language sq language sq
gender male


// add this line to remove 'ë' at the end of words // add this line to remove 'ë' at the end of words
// replace 00 @/ NULL // replace 00 @/ NULL

+ 0
- 1
espeak-ng-data/lang/ira/ku View File

name Kurdish name Kurdish
language ku language ku
gender male


//words 1 48 //words 1 48



+ 0
- 1
espeak-ng-data/lang/itc/la View File

name Latin name Latin
language la language la
gender male
stressrule 2 33 0 2 stressrule 2 33 0 2
// rule=penultimate // rule=penultimate
// flags=0100001 (no automatic secondary stress + don't stres monosyllables) // flags=0100001 (no automatic secondary stress + don't stres monosyllables)

+ 0
- 1
espeak-ng-data/lang/jpx/jp View File

name Japanese name Japanese
language jp language jp
phonemes jp phonemes jp
gender male


intonation 4 intonation 4

+ 0
- 1
espeak-ng-data/lang/ko View File

name Korean name Korean
language ko language ko
gender male
pitch 80 118 pitch 80 118
intonation 2 intonation 2



+ 0
- 1
espeak-ng-data/lang/poz/id View File

name Indonesian name Indonesian
language id language id
gender male


stressLength 160 200 180 180 0 0 220 240 stressLength 160 200 180 180 0 0 220 240
stressAmp 16 18 18 18 0 0 22 21 stressAmp 16 18 18 18 0 0 22 21

+ 0
- 1
espeak-ng-data/lang/poz/ms View File

// Last updated: 14 October 2010, Jason Ong ([email protected]) // Last updated: 14 October 2010, Jason Ong ([email protected])
name Malay name Malay
language ms language ms
gender male
phonemes id phonemes id


translator id translator id

+ 0
- 1
espeak-ng-data/lang/roa/an View File

name Aragonese name Aragonese
language an language an
gender male

+ 0
- 2
espeak-ng-data/lang/roa/ca View File

name Catalan name Catalan
language ca language ca
gender male


+ 0
- 1
espeak-ng-data/lang/roa/es View File

name Spanish (Spain) name Spanish (Spain)
language es language es
gender male
dictrules 1 dictrules 1
tunes s6 c6 q6 e6 tunes s6 c6 q6 e6

+ 0
- 1
espeak-ng-data/lang/roa/es-419 View File

language es-419 language es-419
language es-mx 6 language es-mx 6
language es 6 language es 6
gender male


phonemes es-la phonemes es-la
dictrules 2 dictrules 2

+ 0
- 1
espeak-ng-data/lang/roa/fr View File

name French (France) name French (France)
language fr-fr language fr-fr
language fr language fr
gender male


dictrules 1 dictrules 1
tunes s3 c3 q3 e3 tunes s3 c3 q3 e3

+ 0
- 1
espeak-ng-data/lang/roa/fr-BE View File

name French (Belgium) name French (Belgium)
language fr-be language fr-be
language fr 8 language fr 8
gender male


dictrules 2 dictrules 2
tunes s3 c3 q3 e3 tunes s3 c3 q3 e3

+ 0
- 2
espeak-ng-data/lang/roa/it View File

name Italian name Italian
language it language it
gender male


maintainer Christian Leo M <[email protected]> maintainer Christian Leo M <[email protected]>
status mature status mature


tunes s4 c4 q4 e4 tunes s4 c4 q4 e4


+ 0
- 1
espeak-ng-data/lang/roa/pt-BR View File

name Portuguese (Brazil) name Portuguese (Brazil)
language pt-br language pt-br
language pt language pt
gender male


dictrules 2 dictrules 2
stressLength 200 115 230 230 0 0 250 270 stressLength 200 115 230 230 0 0 250 270

+ 0
- 1
espeak-ng-data/lang/roa/pt-PT View File

name Portuguese (Portugal) name Portuguese (Portugal)
language pt-pt language pt-pt
language pt 6 language pt 6
gender male
phonemes pt-pt phonemes pt-pt


dictrules 1 dictrules 1

+ 0
- 1
espeak-ng-data/lang/roa/ro View File

name Romanian name Romanian
language ro language ro
gender male

+ 0
- 1
espeak-ng-data/lang/sem/ar View File

name Arabic name Arabic
language ar language ar
phonemes ar phonemes ar
gender male
pitch 160 120 pitch 160 120
roughness 0 roughness 0
speed 70 speed 70

+ 0
- 1
espeak-ng-data/lang/sit/cmn View File

name Chinese (Mandarin) name Chinese (Mandarin)
language zh language zh
gender male
words 1 words 1
pitch 80 118 pitch 80 118



+ 0
- 1
espeak-ng-data/lang/sit/yue View File

translator zhy translator zhy
phonemes zhy phonemes zhy
dictionary zhy dictionary zhy
gender male


// interpret English letters as 1=English words, 2=jyutping // interpret English letters as 1=English words, 2=jyutping
dictrules 1 dictrules 1

+ 0
- 2
espeak-ng-data/lang/trk/tr View File

name Turkish name Turkish
language tr language tr
gender male


+ 0
- 1
espeak-ng-data/lang/trk/tt View File

name Tatar name Tatar
language tt language tt
gender male

+ 0
- 2
espeak-ng-data/lang/urj/fi View File

name Finnish name Finnish
language fi language fi
gender male


+ 0
- 1
espeak-ng-data/lang/urj/hu View File

name Hungarian name Hungarian
language hu language hu
gender male
option bracket 0 0 option bracket 0 0
pitch 81 117 pitch 81 117



+ 0
- 1
espeak-ng-data/lang/zls/bs View File

language bs language bs
phonemes hr phonemes hr
dictionary hbs dictionary hbs
gender male


pitch 81 120 pitch 81 120
formant 0 100 100 100 formant 0 100 100 100

+ 0
- 2
espeak-ng-data/lang/zls/cs View File

name Czech name Czech
language cs language cs
gender male


+ 0
- 1
espeak-ng-data/lang/zls/hr View File

name Croatian name Croatian
language hr language hr
language hbs language hbs
gender male


dictionary hbs dictionary hbs



+ 0
- 2
espeak-ng-data/lang/zls/mk View File

name Macedonian name Macedonian
language mk language mk
gender male


+ 0
- 1
espeak-ng-data/lang/zls/pl View File

name Polish name Polish
language pl language pl
gender male


intonation 2 intonation 2

+ 0
- 1
espeak-ng-data/lang/zls/ru View File

name Russian name Russian
language ru language ru
gender male


replace 03 a a# replace 03 a a#



+ 0
- 2
espeak-ng-data/lang/zls/sk View File

name Slovak name Slovak
language sk language sk
gender male


+ 0
- 1
espeak-ng-data/lang/zls/sr View File

name Serbian name Serbian
language sr language sr
gender male
dictionary hbs dictionary hbs


// attributes towards !variant3 pitch 80 120 // attributes towards !variant3 pitch 80 120

+ 10
- 8
src/libespeak-ng/voices.c View File

&tone_pts[8], &tone_pts[9]); &tone_pts[8], &tone_pts[9]);
} }


static espeak_VOICE *ReadVoiceFile(FILE *f_in, const char *fname)
static espeak_VOICE *ReadVoiceFile(FILE *f_in, const char *fname, int is_language_file)
{ {
// Read a Voice file, allocate a VOICE_DATA and set data from the // Read a Voice file, allocate a VOICE_DATA and set data from the
// file's language, gender, name lines // file's language, gender, name lines
break; break;
case V_GENDER: case V_GENDER:
sscanf(p, "%s %d", vgender, &age); sscanf(p, "%s %d", vgender, &age);
if (is_language_file)
fprintf(stderr, "Error (%s): gender attribute specified on a language file\n", fname);
break; break;
case V_VARIANTS: case V_VARIANTS:
sscanf(p, "%d", &n_variants); sscanf(p, "%d", &n_variants);
return vp->identifier; return vp->identifier;
} }


static void GetVoices(const char *path, int len_path_voices)
static void GetVoices(const char *path, int len_path_voices, int is_language_file)
{ {
FILE *f_voice; FILE *f_voice;
espeak_VOICE *voice_data; espeak_VOICE *voice_data;


if (ftype == -EISDIR) { if (ftype == -EISDIR) {
// a sub-directory // a sub-directory
GetVoices(fname, len_path_voices);
GetVoices(fname, len_path_voices, is_language_file);
} else if (ftype > 0) { } else if (ftype > 0) {
// a regular file, add it to the voices list // a regular file, add it to the voices list
if ((f_voice = fopen(fname, "r")) == NULL) if ((f_voice = fopen(fname, "r")) == NULL)
continue; continue;


// pass voice file name within the voices directory // pass voice file name within the voices directory
voice_data = ReadVoiceFile(f_voice, fname+len_path_voices);
voice_data = ReadVoiceFile(f_voice, fname+len_path_voices, is_language_file);
fclose(f_voice); fclose(f_voice);


if (voice_data != NULL) if (voice_data != NULL)


if (ftype == -EISDIR) { if (ftype == -EISDIR) {
// a sub-directory // a sub-directory
GetVoices(fname, len_path_voices);
GetVoices(fname, len_path_voices, is_language_file);
} else if (ftype > 0) { } else if (ftype > 0) {
// a regular file, add it to the voices list // a regular file, add it to the voices list
if ((f_voice = fopen(fname, "r")) == NULL) if ((f_voice = fopen(fname, "r")) == NULL)
continue; continue;


// pass voice file name within the voices directory // pass voice file name within the voices directory
voice_data = ReadVoiceFile(f_voice, fname+len_path_voices);
voice_data = ReadVoiceFile(f_voice, fname+len_path_voices, is_language_file);
fclose(f_voice); fclose(f_voice);


if (voice_data != NULL) if (voice_data != NULL)
FreeVoiceList(); FreeVoiceList();


sprintf(path_voices, "%s%cvoices", path_home, PATHSEP); sprintf(path_voices, "%s%cvoices", path_home, PATHSEP);
GetVoices(path_voices, strlen(path_voices)+1);
GetVoices(path_voices, strlen(path_voices)+1, 0);


sprintf(path_voices, "%s%clang", path_home, PATHSEP); sprintf(path_voices, "%s%clang", path_home, PATHSEP);
GetVoices(path_voices, strlen(path_voices)+1);
GetVoices(path_voices, strlen(path_voices)+1, 1);


voices_list[n_voices_list] = NULL; // voices list terminator voices_list[n_voices_list] = NULL; // voices list terminator
espeak_VOICE **new_voices = (espeak_VOICE **)realloc(voices, sizeof(espeak_VOICE *)*(n_voices_list+1)); espeak_VOICE **new_voices = (espeak_VOICE **)realloc(voices, sizeof(espeak_VOICE *)*(n_voices_list+1));

Loading…
Cancel
Save