Browse Source

Write version_phdata number to phondata file so that the byte order is correct for both little and big-endian processors.

Adjust phoneme [R].
Lang=ru  Revert to phonemes [S] and [Z] instead of [s.] and [z.].
Lang=ru  Remove rule to give 1st syllable a secondary stress if the second syllable has a primary stress.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@9 d46cf337-b52f-0410-862d-fd96e6ae7743
master
jonsd 18 years ago
parent
commit
3899776fad

+ 5
- 5
dictsource/ru_list View File

@@ -18,7 +18,7 @@ _2 dv'A
_3 t;r'i
_4 ts;It'yr;I
_5 p;'jat;
_6 s.'Es;t;
_6 S'Es;t;
_7 s;'em
_8 v'os;E2m
_9 d;'ev;It;
@@ -28,7 +28,7 @@ _12 dv;In'AttsVt;
_13 tr;In'AttsVt;
_14 ts;It'y@-*nVttsVt;
_15 p;Itn'AttsVt;
_16 s.E#stn'AttsVt;
_16 SE#stn'AttsVt;
_17 s;Imn'AttsVt;
_18 vOs;Imn'AttsVt;
_19 d;E2v;Itn'AttsVt;
@@ -36,7 +36,7 @@ _2X dv'AttsVt;
_3X tr;'ittsVt;
_4X s'o@-*Ok
_5X p;Id;d;Is;'jat
_6X s.E2z;d;d;Is;'jat
_6X SE2z;d;d;Is;'jat
_7X s;'emd;E2s;It
_8X v'os;E2md;E2s;It
_9X d;E2v;In'ostO
@@ -45,7 +45,7 @@ _2C dv;'es;t;I
_3C tr;'ista
_4C ts;It'yr;E2sta
_5C p;,It;s'ot
_6C s.,E#s;t;s'ot
_6C S,E#s;t;s'ot
_7C s;,Ims'ot
_8C vOs;Ims'ot
_9C d;E2v;It;s'ot
@@ -82,7 +82,7 @@ _dpt2 _d;Is;'atYx // end of decimal fraction


// questions
что s.to $u $pause // what, that
что Sto $u $pause // what, that


// misc.

+ 60
- 63
dictsource/ru_rules View File

@@ -177,25 +177,25 @@


.group ж
_) ж (_ z.E
ж (кY s.
ж (кь s.
ж (пY s.
ж (пь s.
ж (сь s.
ж (сY s.
ж (ть s.
ж (тY s.
ж (фь s.
ж (фY s.
ж (ффь s.
ж (ффY s.
ж (хь s.
ж (хY s.
ж (хкY s.
ж (хкь s.
ж z.
_) ж (_ ZE
ж (кY S
ж (кь S
ж (пY S
ж (пь S
ж (сь S
ж (сY S
ж (ть S
ж (тY S
ж (фь S
ж (фY S
ж (ффь S
ж (ффY S
ж (хь S
ж (хY S
ж (хкY S
ж (хкь S
ж Z

.group з
_) з (_ zE
@@ -243,8 +243,8 @@
з (сь s;
з (сY s;

з (ж z.
з (ш s.
з (ж Z
з (ш S
з (щ s;s;
з (ч s;s;
з z
@@ -285,7 +285,6 @@

.group л
_) л (_ El^
// л (_ l^ // rule removed
л (Y l^
л l

@@ -308,21 +307,21 @@

.group н
_) н (_ En
н (ь n;
н (ь n^
н (Y n;
н (B n;
н (дь n;
н (дY n;
н (дB n;
н (ть n;
н (тY n;
н (зь n;
н (зY n;
н (сь n;
н (сY n;
н (нь n;
н (нY n;
н (нB n;
н (B n^
н (дь n^
н (дY n^
н (дB n^
н (ть n^
н (тY n^
н (зь n^
н (зY n^
н (сь n^
н (сY n^
н (нь n^
н (нY n^
н (нB n^

н n

@@ -330,10 +329,8 @@
.group о
о o
о (B oj
о (Cь oj
о (FY oj


.group п
_) п (_ pE
п (б b
@@ -400,10 +397,10 @@
с (дY z;
с (дB z;

с (ж z.
с (ш s.
с (щ s;
с (ч s;
с (ж Z
с (ш S
с (щ s;s;
с (ч s;s;

с s

@@ -434,7 +431,7 @@

т (ж d

т t
т t

.group у
_) у (_ u
@@ -550,27 +547,27 @@


.group ш
_) ш (_ s.A
ш (б z.
ш (бь z.
ш (бY z.
ш (бмь z.
ш (бмY z.
ш (бвь z.
ш (бвY z.
ш (г z.
ш (гь z.
ш (гY z.
ш (д z.
ш (дь z.
ш (дY z.
ш (дB z.
ш (ж z.
ш (з z.
ш (зь z.
ш (зY z.
_) ш (_ SA
ш (б Z
ш (бь Z
ш (бY Z
ш (бмь Z
ш (бмY Z
ш (бвь Z
ш (бвY Z
ш (г Z
ш (гь Z
ш (гY Z
ш (д Z
ш (дь Z
ш (дY Z
ш (дB Z
ш (ж Z
ш (з Z
ш (зь Z
ш (зY Z
ш s.
ш S

.group щ
_) щ (_ S;ja

+ 4
- 4
phsource/compile_report View File

@@ -18,7 +18,7 @@
hu 24 109
nl 25 112
pl 17 103
sk 22 118
sk 23 118
cs 7 119
hr 16 122
ru 36 120
@@ -248,15 +248,15 @@
7 ustop/p_unasp base fi hi hu hr it ro
6 ustop/p_unasp_ fi hi hu hr it ro
2 ustop/t base hi
4 ustop/t_ base hi el
5 ustop/t_ base hi sk el
26 ustop/t_dnt base fi fr hi hu pl hr ru it ro vi sw
2 ustop/t_dnt2 hi vi
4 ustop/t_pzd pl ru
7 ustop/tr base hi ru el
9 ustop/tr base hi sk ru el
8 ustop/ts de eo hu pl ru it ro zh_yue
2 ustop/tsh base zh_yue
2 ustop/tsh_ base zh_yue
2 ustop/t_short hi el
3 ustop/t_short hi sk el
8 ustop/ts_pzd base hi ru
2 ustop/ts_pzd_ hi hu
2 ustop/ts_pzd2 hi hu

+ 12
- 0
phsource/ph_slovak View File

@@ -138,4 +138,16 @@ phoneme w
after _ w/w2
endphoneme

phoneme t
vls alv stop
vowelin f1=0 f2=1700 -300 300 f3=-100 80
vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
lengthmod 2
wave ustop/t_short
before _ ustop/t_
before r ustop/tr
before R ustop/tr
switchvoicing d
endphoneme



+ 3
- 2
phsource/phonemes View File

@@ -383,7 +383,8 @@ phoneme R
liquid
vowelin f1=0 f2=1700 -300 300 f3=-300 80
vowelout f1=2 f2=1700 -300 300 f3=-300 80 brk
formants r3/r_trill+r3/r_trill.wav%60
formants r3/r_trill+r3/r_trill.wav%45
trill
lengthmod 6
endphoneme

@@ -1028,7 +1029,7 @@ phoneme s.
vowelout f1=0 f2=1800 -100 300 f3=-300 80
length 100
lengthmod 3
wave ufric/sh_rfx%80
wave ufric/sh_rfx%90
before _ ufric/sh_rfx%60
switchvoicing z.
endphoneme

BIN
phsource/r3/r_trill View File


BIN
phsource/r3/r_trill.wav View File


+ 2
- 2
src/compiledata.cpp View File

@@ -1997,8 +1997,8 @@ memset(markers_used,0,sizeof(markers_used));
}

// write a word so that further data doesn't start at displ=0
fwrite(&version_phdata,4,1,f_phdata);
fwrite(&version_phdata,4,1,f_phindex);
Write4Bytes(f_phdata,version_phdata);
Write4Bytes(f_phindex,version_phdata);

memset(ref_hash_tab,0,sizeof(ref_hash_tab));


+ 11
- 1
src/dictionary.cpp View File

@@ -1097,7 +1097,16 @@ void Translator::SetWordStress(char *output, unsigned int dictionary_flags, int
stress = 3;


if((langopts.stress_flags & 0x1000) && (vowel_stress[1] == 0))
if((langopts.stress_flags & 0x1000) && (vowel_count == 2))
{
// Two syllable word, if one syllable has primary stress, then give the other secondary stress
if(vowel_stress[1] == 4)
vowel_stress[2] = 3;
if(vowel_stress[2] == 4)
vowel_stress[1] = 3;
}
#if deleted
if((langopts.stress_flags & 0x2000) && (vowel_stress[1] == 0))
{
// If there is only one syllable before the primary stress, give it a secondary stress
if((vowel_count > 2) && (vowel_stress[2] >= 4))
@@ -1105,6 +1114,7 @@ void Translator::SetWordStress(char *output, unsigned int dictionary_flags, int
vowel_stress[1] = 3;
}
}
#endif

for(v=1; v<vowel_count; v++)
{

+ 1
- 1
src/synthdata.cpp View File

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

const char *version_string = "1.24.07 11.May.07";
const char *version_string = "1.24.08 12.May.07";
const int version_phdata = 0x012201;

int option_device_number = -1;

+ 2
- 2
src/tr_languages.cpp View File

@@ -639,7 +639,7 @@ Translator_Russian::Translator_Russian() : Translator()
langopts.param[LOPT_REGRESSIVE_VOICING] = 1;
langopts.param[LOPT_KEEP_UNSTR_VOWEL] = 1;
langopts.stress_rule = 5;
langopts.stress_flags = 0x1020;
langopts.stress_flags = 0x0020; // waas 0x1010

langopts.numbers = 0x409;
langopts.phoneme_change = 1;
@@ -702,7 +702,7 @@ PH('V','#'),PH('I','3'),PH('I','2'),PH('E','3')};
/*4*/ {'i', PH('I','#'), 'i', 'i', PH('I','#'), 'i'}, // I#
/*5*/ {'E', PH('E','#'), 'E', 'e', PH('E','#'), 'e'}, // E#
/*6*/ {'E', PH('E','2'), 'E', 'e', PH('E','2'), 'e'}, // E2 Uses 3,4,5 columns.
/*7*/ {'i', 'V', 'i', 'A', 'V', 'A'}, // V#
/*7*/ {PH('j','a'), 'V', PH('j','a'), 'A', 'V', 'A'}, // V#
/*8*/ {PH('j','a'), 'I', PH('j','a'), 'e', 'I', 'e'}, // I3 Uses 3,4,5 columns.
/*9*/ {'e', 'I', 'e', 'e', 'I', 'e'}, // I2
/*10*/ {'e', PH('E', '2'), 'e', 'e', PH('E','2'), 'e'} // E3

+ 2
- 1
src/translate.h View File

@@ -255,7 +255,8 @@ typedef struct {
// bit6=light syllable followed by heavy, move secondary stress to the heavy syllable. LANG=Finnish
// bit8=stress last syllable if it doesn't end in a vowel
// bit9=stress last syllable if it doesn't end in vowel or "s" or "n" LANG=Spanish
// bit12= If there is only one syllable before the primary stress, give it a secondary stress
// bit12= In a 2-syllable word, if one has primary stress then give the other secondary stress
// bit13= If there is only one syllable before the primary stress, give it a secondary stress

int stress_flags;
int unstressed_wd1; // stress for $u word of 1 syllable

Loading…
Cancel
Save