# Klatt Grid for basic vowel. # Karin Wanrooij & Paul Boersma, 28 October 2010. # Edited by Angelica van Beemdelust for basic diphthongs. # 1. PARAMETERS form Fill in: comment in Hertz: real F1_Slab1 400 real F2_Slab1 1400 real F3_Slab1 2400 real F4_Slab1 3400 real F1_Slab2 400 real F2_Slab2 1400 real F3_Slab2 2400 real F4_Slab2 3400 #bandwidth of formants real B1_Slab1 80 real B2_Slab1 160 real B3_Slab1 360 real B4_Slab1 530 real B1_Slab2 80 real B2_Slab2 160 real B3_Slab2 360 real B4_Slab2 530 real startF0 150 comment in seconds: real Duration 0.5 endform startVowel = 0 # FOR BASIC KLATT GRID nrOfFormants = 10 nrOfNasalFormants = 0 nrOfNasalAntiFormants = 0 # The frication and delta formants below are not used. nrOfFricationFormants = 5 nrOfTrachealFormants = 0 nrOfTrachealAntiFormants = 0 nrOfDeltaFormants = 1 # FOR PHONATION minVoiceAmpl = 35 # midVoiceAmpl = maxVoiceAmpl = 40 #random variation of the pitch flutter = 0.15 #glottal flow power1 = 3 power2 = 4 #open phase of the glottis openPhase = 0.7 #collision phase, models last part of flow function with exp. decay? colPhase = 0.04 #not sure what this is spectralTilt = 10 # doublePulsing = # aspirationAmpl = # breathinessAmpl = # FOR VOCAL TRACT + DURATION # See form above # Add extra formants to get a flatter spectrum: # NB: the f5 value is based on a male voice. #Slab1 f5_Slab1 = f4_Slab1 + 650 f6_Slab1 = f5_Slab1 + 1000 f7_Slab1 = f6_Slab1 + 1000 f8_Slab1 = f7_Slab1 + 1000 f9_Slab1 = f8_Slab1 + 1000 f10_Slab1 = f9_Slab1 + 1000 #Slab2 f5_Slab2 = f4_Slab2 + 650 f6_Slab2 = f5_Slab2 + 1000 f7_Slab2 = f6_Slab2 + 1000 f8_Slab2 = f7_Slab2 + 1000 f9_Slab2 = f8_Slab2 + 1000 f10_Slab2 = f9_Slab2 + 1000 # The bandwidth values are based on a male voice. upBandwidth = 8.5 for i from 5 to nrOfFormants b'i'_Slab1 = f'i'_Slab1/upBandwidth b'i'_Slab2 = f'i'_Slab2/upBandwidth endfor # 2. CREATE BASIC KLATT GRID. kg = Create KlattGrid... kg startVowel duration nrOfFormants nrOfNasalFormants nrOfNasalAntiFormants nrOfFricationFormants ... nrOfTrachealFormants nrOfTrachealAntiFormants nrOfDeltaFormants Add oral formant frequency point: 1, duration * 0.3, f1_Slab1 Add oral formant frequency point: 2, duration * 0.3, f2_Slab1 Add oral formant frequency point: 1, duration * 0.7, f1_Slab2 Add oral formant frequency point: 2, duration * 0.7, f2_Slab2 # MODIFY PHONATION. # The pitch declines linearly. For other pitch contours: adapt the 'Add pitch point': Add pitch point... startVowel startF0 Add pitch point... duration ((startF0)*0.75) # The voicing amplitude reaches a maximum at 40% of the duration. For other amplitude contours: adapt the 'Add voicing amplitude point': Add voicing amplitude point... startVowel minVoiceAmpl Add voicing amplitude point... (duration*0.4) maxVoiceAmpl Add voicing amplitude point... duration minVoiceAmpl Add flutter point... startVowel flutter Add power1 point... startVowel power1 Add power2 point... startVowel power2 Add open phase point... startVowel openPhase Add collision phase point... startVowel colPhase ;Add spectral tilt point... startVowel spectralTilt # Add double pulsing point... startVowel doublePulsing # Add aspiration amplitude point... startVowel aspirationAmpl # Add breathiness amplitude point... startVowel breathinessAmpl # MODIFY VOCAL TRACT. # FORMANTS 1 - 10 AND BANDWIDTHS 1 - 10: for i to nrOfFormants Add oral formant frequency point... i startVowel f'i'_Slab1 Add oral formant bandwidth point... i startVowel b'i'_Slab1 Add oral formant frequency point... i duration f'i'_Slab2 Add oral formant bandwidth point... i duration b'i'_Slab2 endfor To Sound Rename... vowel Fade in... All 0 0.005 n Fade out... All duration -0.005 n Scale intensity... 70