mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-10-31 13:38:47 +00:00
Phoneme definitions. New keyword "prevoice", always add murmer before a voiced stop, not only after a vowel. Fixed bug in nextVowel() condition. Fixed bug is condition "isRhotic". Command line options. On Windows, -- means don't treat following arguments as options. --help output now should the espeak-data path. Tools->Lexicon. Redesign Lexicon processing for Russian and Bulgarian. Numbers. Fixes for Hungarian ordinal numbers. Fixed bug where double .. was ignored. Fixed bug in reporting word event lengths in callbacks. Fixed bug in reporting marker event positions in callbacks, when non-ascii text. SSML. Allow single as well as double quotes around strings. Fix bugs in SSML "prosody rate". Speed. Only use Sonic speedups greater than x2. Use custom eSpeak speed settings when Sonic speedup is used. Mbrola. Look for Mbrola voice also at /usr/share/mbrola/xx/xx espeakedit. Try "aplay" and then "play" to play sound. Languages: Kannada (kn) now in official release. Esperanto (eo) change prosody. git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@257 d46cf337-b52f-0410-862d-fd96e6ae7743
277 lines
4.1 KiB
Plaintext
277 lines
4.1 KiB
Plaintext
|
|
|
|
//=========================================================
|
|
// Dutch
|
|
//=========================================================
|
|
|
|
|
|
// Vowels
|
|
//=======
|
|
|
|
|
|
phoneme @ // Schwa
|
|
vowel starttype #@ endtype #@
|
|
unstressed
|
|
length 125
|
|
FMT(vowel/@_4)
|
|
endphoneme
|
|
|
|
phoneme i
|
|
vowel starttype #i endtype #i
|
|
length 160
|
|
IF prevPh(w) THEN
|
|
VowelStart(w/wi2)
|
|
ENDIF
|
|
FMT(vowel/i_2)
|
|
endphoneme
|
|
|
|
phoneme I
|
|
vowel starttype #i endtype #i
|
|
length 130
|
|
FMT(vowel/ii)
|
|
endphoneme
|
|
|
|
phoneme y
|
|
vowel starttype #u endtype #u
|
|
length 180
|
|
FMT(vowel/y)
|
|
endphoneme
|
|
|
|
phoneme 8
|
|
vowel starttype #u endtype #u
|
|
length 140
|
|
FMT(vowel/y#)
|
|
endphoneme
|
|
|
|
phoneme u
|
|
vowel starttype #u endtype #u
|
|
length 150
|
|
FMT(vowel/u_bck)
|
|
endphoneme
|
|
|
|
phoneme E
|
|
vowel starttype #e endtype #e
|
|
length 140
|
|
FMT(vowel/e_mid2)
|
|
endphoneme
|
|
|
|
phoneme E2 // as[E] but reduces to @ if unstressed
|
|
vowel starttype #e endtype #e
|
|
length 140
|
|
ChangeIfDiminished(@)
|
|
FMT(vowel/ee_2)
|
|
endphoneme
|
|
|
|
phoneme O
|
|
vowel starttype #o endtype #o
|
|
length 140
|
|
FMT(vowel/o_6)
|
|
endphoneme
|
|
|
|
phoneme O: // for "oor"
|
|
vowel starttype #o endtype #o
|
|
length 210
|
|
FMT(vowel/o_6)
|
|
endphoneme
|
|
|
|
phoneme a:
|
|
vowel starttype #a endtype #a
|
|
length 210
|
|
IF thisPh(isUnstressed) THEN
|
|
IF thisPh(isWordEnd) THEN
|
|
FMT(vowel/a#_2)
|
|
ELSE
|
|
FMT(vowel/a#_4)
|
|
ENDIF
|
|
ENDIF
|
|
FMT(vowel/a)
|
|
endphoneme
|
|
|
|
phoneme A
|
|
vowel starttype #a endtype #a
|
|
length 160
|
|
IF thisPh(isUnstressed) THEN
|
|
FMT(vowel/a#_2)
|
|
ENDIF
|
|
FMT(vowel/aa_7)
|
|
endphoneme
|
|
|
|
phoneme A~
|
|
import_phoneme fr/A~
|
|
endphoneme
|
|
|
|
phoneme O~
|
|
vowel starttype #o endtype #o
|
|
length 190
|
|
FMT(vnasal/oo_n2)
|
|
endphoneme
|
|
|
|
|
|
// Diphthongs
|
|
//===========
|
|
|
|
phoneme e:
|
|
vowel starttype #e endtype #i
|
|
length 190
|
|
FMT(vdiph/ei)
|
|
endphoneme
|
|
|
|
phoneme Y:
|
|
vowel starttype #@ endtype #@
|
|
length 220
|
|
FMT(vdiph/y#y_3)
|
|
endphoneme
|
|
|
|
phoneme o:
|
|
vowel starttype #o endtype #u
|
|
length 200
|
|
FMT(vdiph/ou_4)
|
|
endphoneme
|
|
|
|
|
|
phoneme EI
|
|
vowel starttype #a endtype #i
|
|
length 210
|
|
FMT(vdiph/eei)
|
|
endphoneme
|
|
|
|
phoneme Wy
|
|
vowel starttype #@ endtype #u
|
|
length 220
|
|
FMT(vdiph/&y)
|
|
endphoneme
|
|
|
|
phoneme VU
|
|
vowel starttype #a endtype #o
|
|
length 220
|
|
FMT(vdiph/aau_2)
|
|
endphoneme
|
|
|
|
phoneme eU
|
|
vowel starttype #e endtype #u
|
|
length 220
|
|
FMT(vdiph/eu)
|
|
endphoneme
|
|
|
|
phoneme yU
|
|
vowel starttype #u endtype #u
|
|
length 220
|
|
FMT(vdiph2/yu)
|
|
endphoneme
|
|
|
|
|
|
|
|
|
|
// CONSONANTS
|
|
//===========
|
|
|
|
|
|
phoneme r
|
|
import_phoneme base/R2
|
|
endphoneme
|
|
|
|
|
|
|
|
phoneme Q
|
|
vcd vel frc
|
|
lengthmod 6
|
|
voicingswitch x
|
|
Vowelin f1=2 f2=2300 200 300 f3=-300 80
|
|
Vowelout f1=2 f2=2300 250 300 f3=-300 80 brk
|
|
|
|
IF prevPhW(x) THEN
|
|
ChangePhoneme(NULL)
|
|
ENDIF
|
|
IF nextPhW(isVoiced) THEN
|
|
ELSE
|
|
ChangePhoneme(x)
|
|
ENDIF
|
|
|
|
IF nextPh(isPause2) THEN
|
|
FMT(voc/Q_) addWav(vocw/Q_)
|
|
ENDIF
|
|
FMT(voc/Q_less) addWav(vocw/Q2, 140)
|
|
endphoneme
|
|
|
|
|
|
phoneme ! // Short pause, replaces assimilated t,d,p,b at end of word
|
|
pause
|
|
ipa NULL
|
|
starttype _ endtype _
|
|
lengthmod 1
|
|
length 25
|
|
endphoneme
|
|
|
|
|
|
phoneme k
|
|
import_phoneme consonants/k- // unaspirated
|
|
endphoneme
|
|
|
|
|
|
phoneme t
|
|
IF thisPh(isWordEnd) THEN
|
|
IF nextPh(t) OR nextPh(d) THEN
|
|
ChangePhoneme(!)
|
|
ENDIF
|
|
ENDIF
|
|
CALL consonants/t-
|
|
endphoneme
|
|
|
|
phoneme d
|
|
IF thisPh(isWordEnd) THEN
|
|
IF nextPh(t) OR nextPh(d) THEN
|
|
ChangePhoneme(!)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF prevPh(!) THEN // previous was [t] or [d], now assimilated
|
|
ChangePhoneme(t)
|
|
ENDIF
|
|
CALL base/d
|
|
endphoneme
|
|
|
|
phoneme p
|
|
IF thisPh(isWordEnd) THEN
|
|
IF nextPh(p) OR nextPh(b) THEN
|
|
ChangePhoneme(!)
|
|
ENDIF
|
|
ENDIF
|
|
CALL consonants/p- // unaspirated
|
|
endphoneme
|
|
|
|
phoneme b
|
|
IF thisPh(isWordEnd) THEN
|
|
IF nextPh(p) OR nextPh(b) THEN
|
|
ChangePhoneme(!)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF prevPh(!) THEN // previous was [p] or [b], now assimilated
|
|
ChangePhoneme(p)
|
|
ENDIF
|
|
CALL base/b
|
|
endphoneme
|
|
|
|
phoneme s
|
|
IF thisPh(isWordEnd) THEN
|
|
IF nextPh(s) OR nextPh(z) THEN
|
|
ChangePhoneme(!)
|
|
ENDIF
|
|
ENDIF
|
|
CALL base/s // unaspirated
|
|
endphoneme
|
|
|
|
phoneme z
|
|
IF thisPh(isWordEnd) THEN
|
|
IF nextPh(s) OR nextPh(z) THEN
|
|
ChangePhoneme(!)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
IF prevPh(!) THEN // previous was [s] or [z], now assimilated
|
|
ChangePhoneme(s)
|
|
ENDIF
|
|
CALL base/s
|
|
endphoneme
|
|
|