Scripts
Praat scripts
Praat scripting speeds up acoustic annotation, measurement, and (re)synthesis. The scripts below are mostly either 1) basic scripts that I use often for annotation and 2) some examples of synthesis. These are meant to serve as a first-step resource for students working with me on annotation projects or others who would like to see some examples of sound manipulation.
There are many online resources for learning Praat scripting and examples of Praat scripts. If you would like to learn more about Praat scripting, I suggest starting with the excellent
Praat scripting manual.
Most of these links will download a compressed folder which contains the script and any ancillary files needed to run the example. You should be able to open the script and run the example with the directory structure left intact.
Basic functions
annotate.praat: Opens up sound files and TextGrids for editing
chopchop.praat: Creates individual sound files (and optionally, TextGrids) from a long sound file with user-specified labels
splice_and_ramp.praat: Splices sounds based on labeled intervals from a TextGrid and ramps to/from zero.
move_to_zero.praat: Moves all boundaries on a given TextGrid tier to zero-crossings in the corresponding wav files; retains original labels.
Phonetic measurements
measure_formants.praat: Measures F1 and F2 at a user-specified number of equidistant points within labeled intervals. Allows for speaker-specific formant measurement parameters.
measure_f0.praat: Measures f0 at a user-specified number of equidistant points within labeled intervals. Allows for speaker-specific pitch floors/ceilings.
set_parameters_formants_f0.praat: Allows for manual inspection of files and an interface for checking different formant and f0 settings, and outputs chosen settings for each specific file. The output can be used in subsequent scripts that call for file- or speaker-specific formant or f0 parameters.
Sound manipulations
For creating VOT continua, I highly recommend using Matt Winn's excellent tutorial and Praat script.
duration_manip.praat: Manipulates a user-specified portion of an existing sound to create a stepwise series varying in duration
increase_intensity.praat: Increases/decreases intensity of all files in a folder by a set number of dB.
standardize.praat: Standardizes all sound files in a given directory in terms of intensity, pitch median, and/or duration.
Synthesis
klatt_synthesize_vot_f0_series.praat: Uses the built-in Klatt synthesizer to create a series of CV (pa/ba) syllables varying in VOT and f0 at vowel onset
PsychoPy Scripts
I use PsychoPy for presentation of speech perception and production experiments.
Production
read_wordlist.py: Presents a user-specified wordlist for production experiments.
Perception
forced_choice.py: Presents a binary forced-choice experiment with auditory stimuli (VOT continuum).
Back to top