diff --git a/README.md b/README.md index 3d2c0a1c..47d10b87 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ ---------- The eSpeak NG (Next Generation) Text-to-Speech program is an open source speech -synthesizer that supports [100 languages and accents](docs/languages.md). +synthesizer that supports [99 languages and accents](docs/languages.md). It is based on the eSpeak engine created by Jonathan Duddington. It uses spectral formant synthesis by default which sounds robotic, but can be configured to use Klatt formant synthesis or MBROLA to give it a more natural diff --git a/docs/languages.md b/docs/languages.md index 962acd51..c847bbe2 100644 --- a/docs/languages.md +++ b/docs/languages.md @@ -42,9 +42,8 @@ The supported languages are: | `gmw` | `en-GB-x-gbcwmd` | West Germanic | English | West Midlands | | `art` | `eo` | Constructed | Esperanto | | | `urj` | `et` | Uralic | Estonian | | -| `ira` | `fa` | Iranian | Persian[1] | | -| `ira` | `fa-en-us` | Iranian | Persian[2] | | -| `ira` | `fa-Latn` | Iranian | Persian[3] | | +| `ira` | `fa` | Iranian | Persian | | +| `ira` | `fa-Latn` | Iranian | Persian[1] | | | `urj` | `fi` | Uralic | Finnish | | | `roa` | `fr-BE` | Romance | French | Belgium | | `roa` | `fr` | Romance | French | France | @@ -63,7 +62,7 @@ The supported languages are: | `poz` | `id` | Malayo-Polynesian | Indonesian | | | `art` | `ia` | Constructed | Interlingua | | | `roa` | `it` | Romance | Italian | | -| `jpx` | `jp` | Japanese | Japanese[4] | | +| `jpx` | `jp` | Japanese | Japanese[2] | | | `dra` | `kn` | Dravidian | Kannada | | | `inc` | `kok` | Indic | Konkani | | | | `ko` | | Korean | | @@ -86,7 +85,7 @@ The supported languages are: | `inc` | `or` | Indic | Oriya | | | `cus` | `om` | Cushitic | Oromo | | | `roa` | `pap` | Romance | Papiamento | | -| `und` | `und-fonipa` | | Phonemes[5] | IPA | +| `und` | `und-fonipa` | | Phonemes[3] | IPA | | `zls` | `pl` | South Slavic | Polish | | | `roa` | `pt-BR` | Romance | Portuguese | Brazillian | | `roa` | `pt-PT` | Romance | Portuguese | Portugal | @@ -113,12 +112,8 @@ The supported languages are: | `aav` | `vi-VN-x-south` | Austroasiatic | Vietnamese | Southern Vietnam | | `cel` | `cy` | Celtic | Welsh | | -[1] Includes support for reading British English text. +[1] Farsi/Persian written using English (Latin) characters. -[2] Includes support for reading American English text. +[2] Currently, only Hiragana and Katakana are supported. -[3] Farsi/Persian written using English (Latin) characters. - -[4] Currently, only Hiragana and Katakana are supported. - -[5] Currently only supported using the `[[...]]` phoneme blocks. +[3] Currently only supported using the `[[...]]` phoneme blocks. diff --git a/docs/voices.md b/docs/voices.md index 662c7de7..2c998ecd 100644 --- a/docs/voices.md +++ b/docs/voices.md @@ -32,7 +32,6 @@ - [charset](#charset) - [dictmin](#dictmin) - [alphabet2](#alphabet2) - - [dictdialect](#dictdialect) ---------- @@ -446,26 +445,6 @@ in a non-native alphabet. e.g.: Alphabets names include: latin, cyr (cyrillic), ar (arabic). The default language for latin alphabet is English. -### dictdialect - - dictdialect - -Words can be marked in the `*_list` or `*_rules` file to be spoken using -a foreign voice. This `dictdialect` attribute can be used to specify -which dialect of the foreign language should be used, instead of the -default dialect. The currently available dialects are: - -* `en-us` (US English) -* `es-la` (Latin American Spanish) - -e.g. - - dictdialect en-us - -This means that any words or rules which are made with `_^_EN` will be -spoken with the US English voice instead of the default UK English -voice. - Additional attributes are available to set various internal options which control how language is processed. These would normally be set in the program code rather than in a voice file. diff --git a/espeak-ng-data/lang/ira/fa-en-us b/espeak-ng-data/lang/ira/fa-en-us deleted file mode 100644 index 040fac8d..00000000 --- a/espeak-ng-data/lang/ira/fa-en-us +++ /dev/null @@ -1,6 +0,0 @@ -name Persian+English-US -language fa -dictdialect en-us -maintainer Shadyar Khodayari -status mature -// This language reads Persian and English with U.S pronunciation, as Persian uses a collection of special characters which differs entirely from English characters. diff --git a/src/libespeak-ng/voices.c b/src/libespeak-ng/voices.c index 1d523645..fee0c017 100644 --- a/src/libespeak-ng/voices.c +++ b/src/libespeak-ng/voices.c @@ -106,7 +106,6 @@ enum { V_SPEED, V_DICTMIN, V_ALPHABET2, - V_DICTDIALECT, // these need a phoneme table to have been specified V_REPLACE, @@ -160,7 +159,6 @@ static MNEM_TAB keyword_tab[] = { { "speed", V_SPEED }, { "dict_min", V_DICTMIN }, { "alphabet2", V_ALPHABET2 }, - { "dictdialect", V_DICTDIALECT }, // these just set a value in langopts.param[] { "l_dieresis", 0x100+LOPT_DIERESES }, @@ -174,13 +172,6 @@ static MNEM_TAB keyword_tab[] = { { NULL, 0 } }; -static MNEM_TAB dict_dialects[] = { - { "en-us", DICTDIALECT_EN_US }, - { "es-la", DICTDIALECT_ES_LA }, - - { NULL, 0 } -}; - #define N_VOICE_VARIANTS 12 const char variants_either[N_VOICE_VARIANTS] = { 1, 2, 12, 3, 13, 4, 14, 5, 11, 0 }; const char variants_male[N_VOICE_VARIANTS] = { 1, 2, 3, 4, 5, 6, 0 }; @@ -866,15 +857,6 @@ voice_t *LoadVoice(const char *vname, int control) fprintf(stderr, "alphabet name '%s' not found\n", name1); } break; - case V_DICTDIALECT: - // specify a dialect to use for foreign words, eg, en-us for _^_EN - if (sscanf(p, "%s", name1) == 1) { - if ((ix = LookupMnem(dict_dialects, name1)) > 0) - langopts->dict_dialect |= (1 << ix); - else - fprintf(stderr, "dictdialect name '%s' not recognized\n", name1); - } - break; case V_MAINTAINER: case V_STATUS: break;