Files
espeak-ng/phsource/ph_romanian
T
jonsd ebf0535e6d [1.43.57]
Indicate language changes in IPA phoneme output.

Phoneme definitions FMT(), second parameter is amplitude percentage.

Phoneme definitions CALL(),  If phoneme type is not defined, copy the static attributes from the called phoneme.

Unpronouncable word check: stop when an apostrophe is reached.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@250 d46cf337-b52f-0410-862d-fd96e6ae7743
2010-07-18 22:43:04 +00:00

331 lines
5.3 KiB
Plaintext

//====================================================
// Romanian
//====================================================
// Vowels
phoneme I^ // "silent i", palatilizes the preceding consonant
vowel starttype #i endtype #i
unstressed
ipa ʲ
length 70
IF nextPh(isVowel) THEN
ChangePhoneme(;)
ENDIF
IF prevPh(l;) THEN
Length 60
FMT(vwl_ro/li)
ENDIF
IF prevPh(m;) THEN
FMT(vwl_ro/mi)
ENDIF
IF prevPh(n;) THEN
FMT(vwl_ro/ni)
ENDIF
FMT(vwl_ro/ii-)
endphoneme
phoneme i/ // used for "i" at end of word
vowel starttype #i endtype #i
length 150
ChangeIfNotStressed(I^)
IfNextVowelAppend(;)
FMT(vowel/i)
endphoneme
phoneme e
vowel starttype #e endtype #e
length 180
FMT(vowel/e_mid2)
endphoneme
phoneme y
vowel starttype #@ endtype #@
ipa ɨ
length 180
FMT(vowel/i#_5)
endphoneme
phoneme a
vowel starttype #a endtype #a
length 180
FMT(vowel/a_2)
endphoneme
phoneme @
vowel starttype #@ endtype #@
length 170
FMT(vowel/@_low)
endphoneme
phoneme o
vowel starttype #o endtype #o
length 170
FMT(vowel/o-_4)
endphoneme
phoneme u
vowel starttype #u endtype #u
length 160
FMT(vowel/u_2)
endphoneme
phoneme Y
vowel starttype #@ endtype #@
length 180
FMT(vowel/y#)
endphoneme
// Diphthongs
phoneme @I
vowel starttype #@ endtype #i
length 250
FMT(vdiph/@i_3)
endphoneme
phoneme @U
vowel starttype #@ endtype #u
length 260
FMT(vdiph/@u_3)
endphoneme
phoneme oU
vowel starttype #o endtype #u
length 260
FMT(vdiph/ou_2)
endphoneme
phoneme iI
vowel starttype #i endtype #i
length 250
FMT(vdiph/ii)
endphoneme
phoneme yI
vowel starttype #@ endtype #i
length 210
FMT(vdiph/i#i)
endphoneme
phoneme yU
vowel starttype #@ endtype #u
length 230
FMT(vdiph2/uw_3)
endphoneme
phoneme ea
vowel starttype #e endtype #a
length 250
FMT(vdiph2/ea)
endphoneme
phoneme eo
vowel starttype #e endtype #o
length 270
FMT(vdiph2/eo)
endphoneme
phoneme e[u
vowel starttype #e endtype #u
length 250
FMT(vdiph2/e[u)
endphoneme
phoneme Oa
vowel starttype #o endtype #a
length 250
FMT(vdiph2/oa)
endphoneme
// Consonants
phoneme r
liquid
trill
lengthmod 7
IF nextPh(isNotVowel) THEN
ChangePhoneme(r/)
ENDIF
NextVowelStarts
VowelStart(r/r@, -15)
VowelStart(r/ra, -15)
VowelStart(r/re, -15)
VowelStart(r/ri, -15)
VowelStart(r/ro, -15)
VowelStart(r/ru, -15)
EndSwitch
IF prevPh(isVowel) THEN
VowelEnding(r/xr, -50)
ENDIF
IF prevPh(t) OR prevPh(p) OR prevPh(k) THEN
FMT(r/trr)
ENDIF
FMT(r/rr)
endphoneme
phoneme l;
liquid
lengthmod 7
CALL base/l
Vowelout colr=1
endphoneme
phoneme m;
vcd blb nasal
lengthmod 4
CALL base/m
Vowelout f1=2 f2=1000 -500 -350 f3=200 80 brk colr=1
endphoneme
phoneme n;
vcd alv nasal
lengthmod 4
CALL base/n
Vowelout f1=2 f2=1700 -300 250 f3=200 80 rms=20 brk colr=1
endphoneme
phoneme p;
vls blb stop
lengthmod 2
voicingswitch b
CALL base2/p
Vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=30 colr=1
endphoneme
phoneme t; // dental variant of /t/
vls dnt stop
lengthmod 2
voicingswitch d
CALL base2/t
Vowelout f1=0 f2=1700 100 250 f3=0 80 rms=20 colr=1
endphoneme
phoneme ts;
vls alv afr sibilant
lengthmod 2
CALL base2/ts
Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 colr=1
endphoneme
phoneme f;
vls lbd frc
lengthmod 3
voicingswitch v
CALL base/f
Vowelout f1=0 f2=1000 -500 -350 f3=-200 80 colr=1
endphoneme
phoneme s;
vls alv frc sibilant
voicingswitch z;
lengthmod 3
Vowelin f1=0 f2=1700 -300 300 f3=-100 80
Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 colr=1
WAV(ufric/s_pzd, 50)
endphoneme
phoneme S;
vls pla frc sibilant
voicingswitch Z;
lengthmod 3
Vowelin f1=0 f2=2100 100 300 f3=-100 80
Vowelout f1=0 f2=2100 100 300 f3=-100 80 colr=1
WAV(ufric/sh_pzd)
endphoneme
phoneme b;
vcd blb stop
voicingswitch p;
lengthmod 5
Vowelout f1=2 f2=1000 -500 -300 f3=-300 80 brk colr=1
IF nextPh(#i) THEN
FMT(b/bi) addWav(x/b)
ENDIF
FMT(b/b) addWav(x/b)
endphoneme
phoneme d; // dental variant of /d/
vcd dnt stop
voicingswitch t;
lengthmod 5
CALL base2/d
Vowelin f1=2 f2=1700 100 300 f3=0 80
Vowelout f1=2 f2=1700 100 300 f3=0 80 colr=1
endphoneme
phoneme *; // flap
vcd alv flp
lengthmod 2
Vowelout f1=3 f2=1700 -300 300 f3=-300 80 rms=35 len=15 colr=1
IF nextPh(#i) THEN
Vowelin f1=0 f2=1700 -300 300 f3=-400 80
FMT(d/tap_i) addWav(r3/rx)
ENDIF
FMT(d/tap) addWav(r3/rx)
endphoneme
phoneme v;
vcd lbd frc
lengthmod 6
voicingswitch f;
Vowelin f1=0 f2=1000 -300 -200 f3=-300 100
Vowelout f1=0 f2=1000 -500 -300 f3=-300 60 len=50 colr=1
IF nextPh(isPause2) THEN
FMT(voc/v_) addWav(vocw/v)
ENDIF
FMT(voc/v) addWav(vocw/v)
endphoneme
phoneme z;
vcd alv frc sibilant
lengthmod 6
voicingswitch s;
Vowelout f1=0 f2=1700 -300 300 f3=-100 60 len=50 colr=1
IF nextPh(isPause2) THEN
FMT(voc/z_) addWav(ufric/s_)
ENDIF
FMT(voc/z) addWav(ufric/s_)
endphoneme
phoneme Z;
vcd pla frc sibilant
lengthmod 6
voicingswitch S;
Vowelin f1=0 f2=2000 0 300 f3=-200 80 colr=1
Vowelout f1=2 f2=2000 0 300 f3=-200 80 brk
IF nextPh(isPause2) THEN
FMT(voc/zh_) addWav(vocw/zh)
ENDIF
FMT(voc/zh) addWav(vocw/zh)
endphoneme