| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174 | 
//====================================================
//  Italian, last update 23 dec 2015 by Chris <[email protected]>
//====================================================
phoneme : //  Lengthen previous vowel by "length"
  virtual
  length 50
endphoneme
phoneme a
  vowel starttype #a endtype #a
  length 160
  ChangeIfNotStressed(a/)
  FMT(vowel/a, 80)
endphoneme
phoneme a/
  vowel starttype #a endtype #a
  length 140
  IF thisPh(isWordEnd) THEN
    FMT(vowel/a#_4, 65)
  ENDIF
  FMT(vowel/a_7)
endphoneme
phoneme e
  vowel starttype #e endtype #e
  length 150
  ChangeIfNotStressed(e/)
  FMT(vowel/e_2, 80)
endphoneme
phoneme e/
  vowel starttype #e endtype #e
  length 140
  IF nextPhW(isNasal) OR nextPhW(isLiquid) THEN
    FMT(vowel/e_mid2)
  ELSE
    FMT(vowel/e, 65)
  ENDIF
endphoneme
phoneme E
  vowel starttype #e endtype #e
  length 145
  ChangeIfUnstressed(e/)   // [E] only in stressed syllables ?
  FMT(vowel/e_mid)
endphoneme
phoneme i
  vowel starttype #i endtype #i
  length 145
  IfNextVowelAppend(;)
   IF thisPh(isWordEnd) AND thisPh(isNotStressed) AND NOT prevPhW(E) THEN
   ChangePhoneme(I)
   ENDIF
  FMT(vowel/i)
endphoneme
phoneme i#    // Used for 'gia_' where [i] is only spoken if stressed
  vowel starttype #i endtype #i
  length 145
  ChangeIfNotStressed(NULL)
  ChangePhoneme(i)
endphoneme
phoneme I
  vowel starttype #i endtype #i
  length 140
  IfNextVowelAppend(;)
  FMT(vowel/i_4)
endphoneme
phoneme o
  vowel starttype #o endtype #o
  length 150
  ChangeIfNotStressed(o/)
  FMT(vowel/o)
endphoneme
phoneme o/
  vowel starttype #o endtype #o
  length 140
  IF nextPhW(isNasal) OR nextPhW(isLiquid) THEN
    FMT(vowel/o_2)
  ELSE
    FMT(vowel/o, 66)
  ENDIF
endphoneme
phoneme O
  vowel starttype #o endtype #o
  length 150
  ChangeIfUnstressed(o/)   // [O] only in stressed syllables ?
  FMT(vowel/oo_4)
endphoneme
phoneme u
  vowel starttype #u endtype #u
  length 160
  ChangeIfNotStressed(U)
  FMT(vowel/u_bck, 120)
endphoneme
phoneme U
  vowel starttype #u endtype #u
  length 140
  FMT(vowel/u_bck2)
endphoneme
phoneme aU
  vowel starttype #a endtype #u
  length 270
  FMT(vdiph/au_4)
endphoneme
phoneme aI
  vowel starttype #a endtype #i
  length 250
  FMT(vdiph/ai)
endphoneme
phoneme oI
  vowel starttype #o endtype #i
  length 230
  FMT(vdiph/oi)
endphoneme
// CONSONANTS
//===========
phoneme l^
  import_phoneme base/l^
  Length 130
endphoneme
phoneme ts
  vls alv afr sibilant
  voicingswitch dz
  lengthmod 2
  Vowelin f1=0  f2=1700 -300 300  f3=-100 60 len=60
  Vowelout f1=0 f2=1700 -300 250  f3=-100 70  rms=14
  IF nextPh(isPause2) THEN
    WAV(ustop/ts)
  ENDIF
  WAV(ustop/ts, 80)
endphoneme
phoneme dz
  import_phoneme consonants/dz
  voicingswitch z
  lengthmod 3
endphoneme
 |