Praat scripts
The excellent, multi-platform, free and open sound analysis / synthesis program Praat is written and maintained by Paul Boersma and David Weenink of the Institute of Phonetic Sciences at the University of Amsterdam, and can be downloaded from http://www.praat.org. The scripts below should be called from within Praat and can be used and adapted freely under the terms of the GNU General Public License (GPL).

  • create harmonic signal [download] Creates a harmonic sound signal with a specified number of harmonics, and decay of harmonic amplitude.
  • create fm signal [download] Creates a harmonic sound signal with a specified time-frequency pattern.
  • print spectrograms multiple files [download] Prints (or creates eps files of) a list of spectrograms of sounds in different files. If the sound is too long it will be wrapped. Also useful for browsing the spectrograms of multiple sound files on screen.
  • read multiple files [download] Reads all files in a given directory with a specific extension. Handy if you want to load many sound files at once. This script works for the GNU/Linux version of Praat, but can easily be adapted to work on other platforms.
  • rms equalize [download] Equalizes the root-mean-square (rms) amplitude of a set of selected sound objects. The rms amplitude can be set to a value of choice, or (if left zero) will be chosen by the script so the maximum peak value in the set of sounds becomes +/- 1 (which is the maximum value defined in a wav file).
  • wiener entropy [download] Measures the Wiener entropy of a sound, which is a measure of its power spectral flatness. It is defined as the ratio of a power spectrum's geometric mean to its arithmetic mean, and expressed on a log scale. A completely flat power spectrum has a Wiener entropy of 0, and an infinitely narrow power spectrum has a Wiener entropy of minus infinity. This script chops up a sound in frames, and gives the mean entropy of all frames. Its execution is not efficient yet, because it creates and removes a lot of Objects. This will be improved when I have the time.
Computing