Browse Source

Merge branch 'upstream' into development

Conflicts:
	dictsource/dict_phonemes
	phsource/compile_report
	phsource/vnasal/a#_n2
	phsource/vnasal/o_n4
master
Reece H. Dunn 12 years ago
parent
commit
790c151a4d

+ 46
- 36
dictsource/an_list View File

@@ -107,57 +107,67 @@ _1M2 un||mil^'on
_0M4 bil^'ons
_1M4 un||bil^'on

_0and i
_0and %i
_dpt kon


// ordinal numbers
_#º 'eno
_#ª 'ena
_#º o
_#ª a
//_ord eno

_1o un
1o prim'Er
_2o dos
2o seQ'und
_3o tres
3o tErT'Er
_4o kwatr
_5o Tink
_6o seIs
_7o sEt
_8o gwit
_9o n'U
_10o DET
_11o onT
_12o DoT
_13o tReT
_14o katorT
_15o kinT
_16o sET
_1ox prim'Er
_2ox seQ'und
_3ox tErT'Er

_1o un'en
_2o dos'en
_3o tres'en
_4o kwatr'en
_5o Tink'en
_6o seIs'en
_7o sEt'en
_8o gwit'en
_9o nU'en
_11o onT'en
_12o DoT'en
_13o tReT'en
_14o katorT'en
_15o kinT'en
_16o sET'en
_10o DET'en
_20o Bint'en
_30o trent'en
_40o kwarant'en
_50o Tinkwant'en
_60o siSant'en
_70o sEtant'en
_80o gwitant'en
_90o noBant'en

_1Xo DeTi
_20o Bint
_2Xo Binti
_30o trent
_3Xo trentaI
_40o kwarant
_4Xo kwarantaI
_50o Tinkwant
_5Xo TinkwantaI
_60o siSant
_6Xo siSantaI
_70o sEtant
_7Xo sEtantaI
_80o gwitant
_8Xo gwitantaI
_90o noBant
_9Xo noBantaI
_0Co TEnt
_1Co TEnt
_0M1o mil
_1M1 mil
_0M2o mil^on
_1M2o mil^on
_1Co TEnt'en
_2Co dosTEnt'en
_3Co tresTEnt'en
_4Co kw,atroTEnt'en
_5Co T,inkoTEnt'en
_6Co seIsTEnt'en
_7Co sjEtTEnt'en
_8Co gw,eItoTEnt'en
_9Co nweUTEnt'en

_0M1o mil'en
_1M1 mil'en
_0M2o mil^on'en
_1M2o mil^on'en


// unstressed words

+ 9
- 5
dictsource/bg_list View File

@@ -4,13 +4,17 @@

// words of one letter
в $combine
а $u $combine
а $u $combine
е $u
й i $u
й i $u
и $u $pause
у $u $combine
с $combine
г god'ina $hasdot
у $u $combine
с $combine
г god'ina $hasdot

(а в) %av
(а с) %as


// letter names
б b@

+ 1
- 1
dictsource/en_rules View File

@@ -5864,7 +5864,7 @@
_) zs (Y z
_) z (wY z

n) z (_ ts
n) z (_N ts
@) zales (_ z'A:l@s
zei zaI
zes (_ zI2z

+ 1
- 6
dictsource/hi_list View File

@@ -195,12 +195,7 @@ _dpt _d@s@ml'o:_ // ?? what is Hi for "." ?
ॐ #X1o~m

_?? Vks.@r
_a ej
_b bi:
_c si:
_d di:
_e i:
_f Ef


// Punctuation
। dVn.d.V

+ 1
- 1
dictsource/kn_list View File

@@ -26,7 +26,7 @@ p pi:
q kju:
r a:r
s Es
t thi:
t t#i:
u ju:
v vi:
w dabalju:

+ 1
- 1
dictsource/ml_list View File

@@ -63,7 +63,7 @@ p pi:
q kju:
r a:R
s Es
t ti:
t t#i:
u ju:
v vi:
w dVbVlju:

+ 3
- 1
dictsource/pt_list View File

@@ -734,6 +734,7 @@ comodo $alt2
concerto $alt2 $noun
concordo $alt
conforto $alt $verb
congelo $alt
consolo $alt2 $noun
controle $alt2 $noun
controlo $alt2 $noun
@@ -861,7 +862,6 @@ hemorroida $alt
hoje $alt2
horrores $alt2
ideia $alt
insonoro $alt
interesse $alt2 $noun
jogo $alt2 $noun
joguete $alt2
@@ -993,6 +993,7 @@ selvagem seUv'aZeIN
sexteto $alt2
?1 senhora $alt2
senhores $alt2
singelo $alt
sinopse $alt
soco $alt2
soco $alt $verb
@@ -1030,6 +1031,7 @@ trombeta $alt2
tumores $alt2
valeta $alt2
vanessa $alt2
velo $alt
velozes $alt
verme $alt
violeta $alt2

+ 17
- 8
dictsource/pt_rules View File

@@ -359,12 +359,11 @@
_perd) e (L05_ e
_quis) e (L05_ E
_soub) e (L05_ E
proteg) e (L05_ e // des-
diss) e (L06_ E / contra-
diss) e (L06_ E // contra-
tend) e (L06_ e // a- con- en- es-
vend) e (L06_ e // re-
_mord) e (L06_ e
_rend) e (L06_ e
_vend) e (L06_ e
prend) e (L06_ e // a- rea- des- desa-
_arrepend) e (L06_ e
_defend) e (L06_ e
@@ -373,7 +372,7 @@ _escond) e (L06_ e
preend) e (L06_ e // com- a- re- sur-
respond) e (L06_ e // cor-
bat) e (L07_ e // re- com-
ceb) e (L07_ e / re- per- con-
ceb) e (L07_ e // re- per- con-
ced) e (L07_ e // pro- con- su-
met) e (L07_ e // co- pro- arre- re- intro- compro- sub-
mov) e (L07_ e // re- co-
@@ -388,6 +387,7 @@ respond) e (L06_ e // cor-
tend) e (L07_ e // en- con- a- es-
torc) e (L07_ e // con-
venc) e (L07_ e // con-
vend) e (L07_ e // re-
vert) e (L07_ e // in- re- con-
volv) e (L07_ e // de- en- re-
_eleg) e (L07_ e
@@ -401,7 +401,6 @@ respond) e (L06_ e // cor-
parec) e (L07_ e // a- rea- com- desa-
prend) e (L07_ e // a- rea- des-
screv) e (L07_ e // e- in- ree- pre- de-
_abastec) e (L07_ e
_aborrec) e (L07_ e
_absolv) e (L07_ e
_adoec) e (L07_ e
@@ -434,6 +433,7 @@ _perec) e (L07_ e
_rejuvenec) e (L07_ e
_resolv) e (L07_ e
_suspend) e (L07_ e
abastec) e (L07_ e // re-
conhec) e (L07_ e // & re- des-
estabelec) e (L07_ e // re-
favorec) e (L07_ e // des-
@@ -458,10 +458,12 @@ respond) e (L07_ e // cor-
_sev) e (rL03_ E
_reit) e (rL03_ E
_sinc) e (rL03_ E
g) e (rL04_ E // su- refri-
_g) e (rL04_ E
qu) e (rL04_ E // re-
_op) e (rL04_ E
gen) e (rL04_ E // de- re-
_alt) e (rL04_ E
_sug) e (rL04_ E
_sup) e (rL04_ E
_tol) e (rL04_ E
_ven) e (rL04_ E
@@ -469,6 +471,7 @@ respond) e (L07_ e // cor-
_coop) e (rL04_ E
_temp) e (rL04_ E
_recup) e (rL04_ E
_refrig) e (rL04_ E
_v) e (rbL03_ E
_p) e (rdL02_ E
_l) e (rdL03_ E
@@ -503,11 +506,13 @@ _obsol) e (tL03_ e
scr) e (vL03_ e // e- in- pre- ree- de-
_atr) e (vL03_ e
_r) e (zL04_ E
pr) e (zL04_ E / des- menos-
_pr) e (zL04_ E
_despr) e (zL04_ E
_embel) e (zL04_ E
_menospr) e (zL04_ E
_emagr) e (çL03
pr) e (çL03_ e // a-
aqu) e (çL03_ e / re-
aqu) e (çL03_ e // re-
mer) e (çL03_ e // des-
pad) e (çL03_ e // com-
par) e (çL03_ e // a- re- com- rea- desa-
@@ -859,6 +864,10 @@ _desabr) o (chL04_ O
_ens) o (pL04_ O
_s) o (prL04_ O
_) o (ptL04_ O
_inod) o (rL03_ O
_inson) o (rL03_ O
_comem) o (rL04 O
_remem) o (rL04_ O
_enf) o (rquL02_ O
c) o (rrL01_ o // escorra, incorra, corra, recorra
_m) o (rrL01_ o

+ 1
- 1
dictsource/ta_list View File

@@ -68,7 +68,7 @@ p pi:
q kju:
r a:R
s Es
t thi:
t t#i:
u ju:
v vi:
w dVbVlju:

+ 10
- 0
dictsource/ta_rules View File

@@ -950,6 +950,7 @@ _துப்பாக்கி) க்க (ுண்ட gg
_ப) சக் tSVk
_) ச (க்கரவர்த்தி tSV
_) ச (க்கிலி tSV
_) சக் (ரவர்த்தி tSVk
_க) ச (க்ஸ்தான zV
சங்க (ர s.VNkV
_) ச (ட்டL08ஸ்கர tSV
@@ -1057,6 +1058,7 @@ _தணிகா) ச (ல tSV
_வரதா) ச (ாரி tS
_வேதா) ச (ாரி tS
_கிருஷ்ணமா) ச (ாரி tS
_கோபால) ச (ாரி tS
_சங்கரா) ச (ாரி tS
_தேசிகா) ச (ாரி tS
_பட்டா) ச (ாரி tS
@@ -1064,6 +1066,7 @@ _பிரம்ம) ச (ாரி tS
_மத்வா) ச (ாரி tS
அனந்தா) ச (ாரி tS
அன்னமா) ச (ாரி tS
ராஜகோபால) ச (ாரி tS
ராமானுஜா) ச (ாரி tS
ஆ) ச (ாரிய_ tS
ஆ) ச (ாரியார tS
@@ -2601,6 +2604,10 @@ _டீயும்_) ப (ன்னும்_ bV
_) ப (ாகீரதி b
_) ப (ாக்கிக் b
_) ப (ாக்கிய b
_) ப (ாக்டரி_ f
_) ப (ாக்டரியா b
_) ப (ாக்டரியி f
_) ப (ாக்டரியை f
_) பாக்ட (ீரியா ba:kt.
_) பாக்த (ாத ba:gd
_) ப (ாக்ய b
@@ -2947,6 +2954,7 @@ _விளையாடு_) ப (ாம்பே p
_) பி (ராதித் p
_) பி (ராத்தல b
_) பி (ராந்தி_ b
_) பி (ராந்திய_ p
_) பி (ராந்தியங் p
_) பி (ராந்தியத் p
_) பி (ராந்தியம்_ p
@@ -2986,8 +2994,10 @@ _விளையாடு_) ப (ாம்பே p
_) பி (ரித்தானி b
_) பிரின்சிப (ால prinsip
_) பி (ரிமிய p
_) பி (ரியங்கள p
_) பிரியங்க (ா prijVNk
_) பி (ரியதர p
_) பி (ரியத்த p
_) பி (ரியன p
_) பி (ரியப்பட p
_) பி (ரியம p

+ 1
- 1
dictsource/te_list View File

@@ -24,7 +24,7 @@ p pi:
q kju:
r a:r
s Es
t thi:
t t#i:
u ju:
v vi:
w dVbVlju:

+ 4
- 4
dictsource/vi_rules View File

@@ -77,7 +77,7 @@ ỵ ỵ
//================================
// Consonants
//================================
.L01 t c ne nd k x s nt ch th me te le ce ny ry e o u re nch de p pe ph sh v ve
.L01 t c ne nd k x s nt ch th me te le ce ny ry e o u re nch de p pe ph sh v ve ge
.L02 n
@@ -460,7 +460,7 @@ ỵ ỵ
.group i
i i
i (A j
//i (A j
ia i@
ià i@2
iá i@3
@@ -822,7 +822,7 @@ ỵ ỵ
.group y
y i
y (A j
// y (A j
ya i@
yà i@2
yá i@3
@@ -837,7 +837,7 @@ ỵ ỵ
yệ i@6
// yêu i@U
y (L01 _^_EN
.group ỳ
ỳ i2

BIN
phsource/klatt/nr View File


BIN
phsource/vnasal/&_n View File


BIN
phsource/vnasal/&u_n View File


BIN
phsource/vnasal/V_n View File


BIN
phsource/vnasal/W_n View File


BIN
phsource/vnasal/a#_n View File


BIN
phsource/vnasal/a#u_n View File


BIN
phsource/vnasal/aa_n View File


BIN
phsource/vnasal/aa_n2 View File


BIN
phsource/vnasal/aa_n3 View File


BIN
phsource/vnasal/aa_n4 View File


BIN
phsource/vnasal/e#_n View File


BIN
phsource/vnasal/e_n View File


BIN
phsource/vnasal/ee_n View File


BIN
phsource/vnasal/ee_n2 View File


BIN
phsource/vnasal/ee_u_n View File


BIN
phsource/vnasal/i_n View File


BIN
phsource/vnasal/i_n2 View File


BIN
phsource/vnasal/ii_n View File


BIN
phsource/vnasal/o_n View File


BIN
phsource/vnasal/o_n2 View File


BIN
phsource/vnasal/o_n3 View File


BIN
phsource/vnasal/oi_n View File


BIN
phsource/vnasal/oo_n View File


BIN
phsource/vnasal/oo_n2 View File


BIN
phsource/vnasal/oo_n3 View File


BIN
phsource/vnasal/u_n View File


BIN
phsource/vnasal/vowelchart.png View File


+ 23
- 5
src/compiledata.cpp View File

@@ -745,6 +745,7 @@ static void CompileReport(void)
REF_HASH_TAB **list;
const char *data_path;
int prev_table;
int procedure_num;
int prev_mnemonic;

if(f_report == NULL)
@@ -802,7 +803,17 @@ static void CompileReport(void)
j++;
}

fprintf(f_report," [%s] %s",WordToString(prev_mnemonic = list[ix]->ph_mnemonic), phoneme_tab_list2[prev_table = list[ix]->ph_table].name);
prev_mnemonic = list[ix]->ph_mnemonic;
if((prev_mnemonic >> 24) == 'P')
{
// a procedure, not a phoneme
procedure_num = atoi(WordToString(prev_mnemonic));
fprintf(f_report," %s %s", phoneme_tab_list2[prev_table = list[ix]->ph_table].name, proc_names[procedure_num]);
}
else
{
fprintf(f_report," [%s] %s",WordToString(prev_mnemonic), phoneme_tab_list2[prev_table = list[ix]->ph_table].name);
}
fputc('\n',f_report);
}

@@ -1856,7 +1867,7 @@ static int LoadWavefile(FILE *f, const char *fname)
}

sprintf(command,"sox \"%s%s.wav\" -r %d -c1 -t wav %s\n",path_source,fname2,samplerate_native, fname_temp);
if(system(command) < 0)
if(system(command) != 0)
{
failed = 1;
}
@@ -2761,6 +2772,8 @@ int CompilePhoneme(int compile_phoneme)
}
strcpy(proc_names[n_procs], item_string);
phoneme_out = &phoneme_out2;
sprintf(number_buf,"%.3dP", n_procs);
phoneme_out->mnemonic = StringToWord(number_buf);
}

phoneme_out->code = phcode;
@@ -3498,10 +3511,11 @@ static void CompilePhonemeData2(const char *source)
make_envs();
#endif

wxLogStatus(_T("Compiling phoneme data: ")+wxString(path_source,wxConvLocal));
n_envelopes = 0;
error_count = 0;
resample_count = 0;
memset(markers_used,0,sizeof(markers_used));
memset(markers_used,0,sizeof(markers_used));

f_errors = stderr;

@@ -3666,7 +3680,7 @@ fprintf(f_errors,"\nRefs %d, Reused %d\n",count_references,duplicate_references

if(error_count > 0)
{
report += _T(" See file: 'phsource/error_log'.");
report += _T(" See file: '")+wxString(path_source,wxConvLocal)+_T("phsource/error_log'.");
wxLogError(report);
}
wxLogStatus(report + report_dict);
@@ -4136,7 +4150,11 @@ void CompilePhonemeData()
void CompileSampleRate()
{
long value;
value = wxGetNumberFromUser(_T("Compile phoneme data with a specified sample rate"), _T("Sample rate"), _T("Resample (needs sox)"), 22050, 5000, 48000);
#ifndef PLATFORM_POSIX
wxLogError(_T("Change Sample Rate needs the 'sox' program. It probably doesn't work on Windows"));
#endif

value = wxGetNumberFromUser(_T("Compile phoneme data with a specified sample rate"), _T("Sample rate"), _T("Resample (needs 'sox' program)"), 22050, 5000, 48000);

if(value > 1000)
{

+ 2
- 2
src/menus.cpp View File

@@ -91,8 +91,8 @@ wxMenuBar *MakeMenu(int type, const char *dict_name)
data_menu = new wxMenu;
data_menu->Append(MENU_COMPILE_DICT, _("Compile &dictionary"));
data_menu->Append(MENU_COMPILE_DICT_DEBUG, _("Compile dictionary (debu&g)"));
data_menu->Append(MENU_COMPILE_PH, _("Compile &phoneme data"));
data_menu->Append(MENU_COMPILE_PH2, _("Change sample &rate"));
data_menu->Append(MENU_COMPILE_PH, _("Compile &phoneme data 22050Hz"));
data_menu->Append(MENU_COMPILE_PH2, _("Compile at sample &rate"));
data_menu->AppendSeparator();
data_menu->Append(MENU_COMPILE_MBROLA, _("Compile &mbrola phonemes list..."));
data_menu->Append(MENU_COMPILE_INTONATION, _("Compile &intonation data"));

+ 1
- 1
src/synthdata.cpp View File

@@ -35,7 +35,7 @@
#include "translate.h"
#include "wave.h"

const char *version_string = "1.46.51 15.Mar.13";
const char *version_string = "1.46.53 16.Mar.13";
const int version_phdata = 0x014640;

int option_device_number = -1;

+ 1
- 1
src/synthesize.cpp View File

@@ -82,7 +82,7 @@ const char *WordToString(unsigned int word)
int ix;
static char buf[5];

for(ix=0; ix<3; ix++)
for(ix=0; ix<4; ix++)
buf[ix] = word >> (ix*8);
buf[4] = 0;
return(buf);

+ 7
- 3
src/tr_languages.cpp View File

@@ -455,6 +455,7 @@ Translator *SelectTranslator(const char *name)
static const short stress_lengths_sk[8] = {190,190, 210,210, 0,0, 210,210};

static const short stress_lengths_ta[8] = {200, 200, 210, 210, 0, 0, 230, 230};
static const short stress_lengths_ta2[8] = {230, 230, 240, 240, 0, 0, 260, 260};
static const unsigned char stress_amps_ta[8] = {18,18, 18,18, 20,20, 22,22 };

// convert name string into a word of up to 4 characters, for the switch()
@@ -731,6 +732,7 @@ Translator *SelectTranslator(const char *name)
if(name2 == L('a','n'))
{
tr->langopts.stress_flags = S_FINAL_SPANISH | S_FINAL_DIM_ONLY | S_FINAL_NO_2;
tr->langopts.numbers2 = 0;
}
else
if(name2 == L_pap)
@@ -1423,7 +1425,7 @@ SetLengthMods(tr,3); // all equal
case L('m','r'): // Marathi
case L('t','e'): // Telugu
{
SetupTranslator(tr,stress_lengths_ta,stress_amps_ta);
SetupTranslator(tr,stress_lengths_ta2, stress_amps_ta);
tr->langopts.length_mods0 = tr->langopts.length_mods; // don't lengthen vowels in the last syllable

tr->langopts.stress_rule = STRESSPOSN_1L;
@@ -1433,9 +1435,12 @@ SetLengthMods(tr,3); // all equal

if(name2 == L('t','a'))
{
SetupTranslator(tr,stress_lengths_ta, NULL);
tr->letter_bits_offset = OFFSET_TAMIL;
tr->langopts.numbers = NUM_OMIT_1_THOUSAND ;
tr->langopts.param[LOPT_WORD_MERGE] = 1; // don't break vowels betwen words
}
else
if(name2 == L('m','r'))
{
tr->letter_bits_offset = OFFSET_DEVANAGARI;
@@ -1458,9 +1463,8 @@ SetLengthMods(tr,3); // all equal
tr->letter_bits_offset = OFFSET_TELUGU;
tr->langopts.numbers = 0x1;
}
tr->langopts.param[LOPT_WORD_MERGE] = 1; // don't break vowels betwen words
SetIndicLetters(tr); // call this after setting OFFSET_
SetLetterBitsRange(tr,LETTERGP_B,0x4e,0x4e); // chillu-virama (unofficial)
SetLetterBitsRange(tr,LETTERGP_B,0x4e,0x4e); // chillu-virama (unofficial)
}
break;


+ 5
- 2
src/translate.cpp View File

@@ -842,7 +842,7 @@ int TranslateWord(Translator *tr, char *word_start, int next_pause, WORD_TAB *wt
char prefix_chars[0x3f + 2];
int found=0;
int end_flags;
char c_temp; // save a character byte while we temporarily replace it with space
int c_temp; // save a character byte while we temporarily replace it with space
int first_char;
int last_char = 0;
int add_plural_suffix = 0;
@@ -912,7 +912,9 @@ int TranslateWord(Translator *tr, char *word_start, int next_pause, WORD_TAB *wt
if((word_length == 1) && (wflags & FLAG_TRANSLATOR2))
{
// retranslating a 1-character word using a different language, say its name
spell_word = 1;
utf8_in(&c_temp, wordx+1); // the next character
if(!IsAlpha(c_temp) || (AlphabetFromChar(last_char) != AlphabetFromChar(c_temp)))
spell_word = 1;
}

if(option_sayas == SAYAS_KEY)
@@ -1938,6 +1940,7 @@ static int TranslateWord2(Translator *tr, char *word, WORD_TAB *wtab, int pre_pa
if(ok)
{
*p2 = '-'; // replace next space by hyphen
wtab[0].flags &= ~FLAG_ALL_UPPER; // prevent it being considered an abbreviation
flags = TranslateWord(translator, word, next_pause, wtab, NULL); // translate the combined word
if((sylimit > 0) && (CountSyllables(p) > (sylimit & 0x1f)))
{

Loading…
Cancel
Save