Files
espeak-ng/phsource/ph_icelandic
T
jonsd 18240ae109 [1.43.46]
Fix: Speak punctuation option also caused text after [[ to be spoken as phoneme codes even if espeakPHONEMES flag is not set.

Speak sequences of letters and dots as individual letters, and don't speak 'dot', eg. "u.s.a."

Don't announce punctuation in the alternative text inside <audio ... </audio>

Vowelcharts, show the positions of multiple FMT() in vowel phonemes definitions.

Phoneme definitions:
New attributes:  flag1, flag2, flag3
New attribute: nopause. Prevents the insertion of a short pause when this phoneme starts a word which follows a vowel.
New conditions: isFlag1, isFlag2, isFlag3, isSibilant.
New statement: InsertPhoneme()

Phonemes: improve syllablic [m-] [n-] [N-]

*_rules: add attributes  $p_alt .. $p_alt3,  $w_alt .. $w_alt3

*_list:  add attributes:  $sentence, $atstart

klatt synthesizer: implement echo.

espeakedit, Prosody display: Indicate stressed and secondary-stress syllables.

espeakedit: remember window size and position.

Intonation:
New file, 'phsource/intonation' to define 'tunes' which can be used from voice files.

espeakedit: add Compile -> Intonationm data

Speed: Increase range to 80 to 450, with default=175.
Improve speaking at high speeds.

lang=en: Reduce consecutive unstressed syllables to 'diminished' stress, only in unstressed words.

lang=de: Change 'r' phoneme.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@244 d46cf337-b52f-0410-862d-fd96e6ae7743
2010-06-20 13:15:35 +00:00

343 lines
5.0 KiB
Plaintext

//=========================================================
// Icelandic
//=========================================================
phoneme : // Lengthen previous vowel by "length"
virtual
length 110
endphoneme
// Vowels
//=======
phoneme i
vowel starttype #i endtype #i
length 130
IfNextVowelAppend(;)
FMT(vowel/ii_6)
endphoneme
phoneme i:
vowel starttype #i endtype #i
length 230
IfNextVowelAppend(;)
ChangeIfNotStressed(i)
FMT(vowel/i_4)
endphoneme
phoneme I
vowel starttype #i endtype #i
length 130
IfNextVowelAppend(;)
FMT(vowel/ii)
endphoneme
phoneme I:
vowel starttype #i endtype #i
length 230
IfNextVowelAppend(;)
ChangeIfNotStressed(I)
FMT(vowel/ii)
endphoneme
phoneme E
vowel starttype #e endtype #e
length 130
FMT(vowel/e_mid)
endphoneme
phoneme E:
vowel starttype #e endtype #e
length 130
FMT(vowel/e_e)
endphoneme
phoneme a
vowel starttype #@ endtype #@
length 130
FMT(vowel/a#_2)
endphoneme
phoneme a:
vowel starttype #a endtype #a
length 230
ChangeIfNotStressed(a)
FMT(vowel/aa_8)
endphoneme
phoneme O
vowel starttype #o endtype #o
length 130
FMT(vowel/oo_5)
endphoneme
phoneme O:
vowel starttype #o endtype #o
length 230
ChangeIfNotStressed(O)
FMT(vdiph2/o_oo)
endphoneme
phoneme u
vowel starttype #u endtype #u
length 130
FMT(vowel/u_2)
endphoneme
phoneme u:
vowel starttype #u endtype #u
length 230
ChangeIfNotStressed(u)
FMT(vowel/u_bck)
endphoneme
phoneme y
vowel starttype #@ endtype #@
length 130
FMT(vowel/y##)
endphoneme
phoneme y:
vowel starttype #i endtype #i
length 230
ChangeIfNotStressed(y)
FMT(vowel/yy_4)
endphoneme
phoneme W
vowel starttype #@ endtype #@
length 130
FMT(vowel/y#_3)
endphoneme
phoneme W:
vowel starttype #@ endtype #@
length 130
ChangeIfNotStressed(W)
FMT(vowel/y#_3)
endphoneme
phoneme aI
vowel starttype #a endtype #i
length 170
FMT(vdiph/ai_7)
endphoneme
phoneme aI:
vowel starttype #a endtype #i
length 230
ChangeIfNotStressed(aI)
FMT(vdiph/ai_7)
endphoneme
phoneme eI
vowel starttype #e endtype #i
length 170
FMT(vdiph/ei)
endphoneme
phoneme eI:
vowel starttype #e endtype #i
length 230
ChangeIfNotStressed(eI)
FMT(vdiph/ei)
endphoneme
phoneme aU
vowel starttype #a endtype #u
length 170
FMT(vdiph/aau)
endphoneme
phoneme aU:
vowel starttype #a endtype #u
length 230
ChangeIfNotStressed(aU)
FMT(vdiph/aau)
endphoneme
phoneme oU
vowel starttype #o endtype #u
length 170
FMT(vdiph/ou_3)
endphoneme
phoneme oU: // long version for óf
vowel starttype #o endtype #u
length 230
ChangeIfNotStressed(oU)
FMT(vdiph/ou_3)
endphoneme
phoneme Yy
vowel starttype #@ endtype #i
length 150
FMT(vdiph/y#i_2)
endphoneme
phoneme Yy:
vowel starttype #@ endtype #i
length 220
ChangeIfNotStressed(Yy)
FMT(vdiph/y#i_2)
endphoneme
phoneme OI
vowel starttype #o endtype #i
length 210
FMT(vdiph/oi)
endphoneme
phoneme yI
vowel starttype #i endtype #i
length 180
FMT(vowel/yy_4)
endphoneme
// Consonants
//===========
phoneme m#
vcd blb nasal
lengthmod 6
Vowelout f1=2 f2=1000 -500 -350 f3=-200 80 brk
FMT(m/m#_)
endphoneme
phoneme n#
vcd alv nasal
lengthmod 6
Vowelout f1=2 f2=1700 -300 250 f3=-100 80 rms=20 brk
NextVowelStarts
VowelStart(n/n@)
VowelStart(n/na)
VowelStart(n/ne)
VowelStart(n/ni)
VowelStart(n/no)
VowelStart(n/nu)
EndSwitch
FMT(n/n#_)
endphoneme
phoneme n^#
vcd pal nasal palatal
lengthmod 6
Vowelout f1=3 f2=2300 300 400 f3=100 80 brk rate
FMT(n^/n^#_)
endphoneme
phoneme N#
vcd vel nasal
lengthmod 6
Vowelout f1=3 f2=2300 300 400 f3=-200 80 len=40 rms=20 brk
NextVowelStarts
VowelStart(nn/nn@)
VowelStart(nn/nna)
VowelStart(nn/nne)
VowelStart(nn/nni)
VowelStart(nn/nno)
VowelStart(nn/nnu)
EndSwitch
FMT(nn/nn#_)
endphoneme
phoneme l#
vls alv frc
lengthmod 3
WAV(ufric/l#, 25)
endphoneme
phoneme tl#
vls alv stop
lengthmod 2
Vowelin f1=0 f2=1700 -300 300 f3=-100 80
Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
WAV(ufric/tl#, 50)
endphoneme
phoneme r# // used for [r] when not preceding a vowel
liquid
lengthmod 2 //
FMT(r3/r#_) addWav(r3/rx)
// before n r3/r_n+r3/rx
endphoneme
phoneme b
vls blb stop
lengthmod 5
Vowelin f1=1 f2=1000 -300 -200 f3=-200 80 amp=11
Vowelout f1=2 f2=1000 -300 -300 f3=-300 80 brk
WAV(x/b)
endphoneme
phoneme d
vls alv stop
lengthmod 5
Vowelin f1=2 f2=1700 -300 300 f3=-100 80
Vowelout f1=2 f2=1700 -300 300 f3=-100 80
IF nextPh(isPause2) THEN
WAV(x/d_)
ENDIF
WAV(x/d, 80)
endphoneme
phoneme g
vls vel stop
lengthmod 5
Vowelin f1=2 f2=2300 200 300 f3=-300 80
Vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
IF nextPh(isPause2) THEN
WAV(x/g_)
ENDIF
WAV(x/g2, 150)
endphoneme
phoneme v // no fricative noise
import_phoneme base/v#
voicingswitch f
endphoneme
phoneme s2 // 2nd part of geminated s
import_phoneme consonants/s2
endphoneme