Extract normalised pitch contour

On this page I present a Praat script that extracts pitch contour information based on .wav sounds and .Textgrid files.

This script is useful for analysing lexical tone, but can be also useful for other analyses where pitch contour is important, e.g. intonation.

Step 1: Preparation

Download the Praat script.

Gather your .wav files and your .Textgrid files in the same folder. The .Textgrid files should have the same name as the .wav files. The .Textgrid files should contain at least one interval tier, based on which pitch contour information should be extracted.

For example, I am extracting the pitch contour of each syllable in a Chinese phrase, for further lexical tone analyses. My .Textgrid should contain one interval tier, where each syllable should be a named interval.

praat1

Note: Inside your .Textgrid, you may want to choose to set the interval boundaries around the vowel (where pitch contour information is mostly carried), to better capture the pitch contour. Or you may want to set the interval boundaries around the entire syllable, like what I did with ka and fei in the example, to better represent the length of the syllable, although this will result in some ‘undefined’/NA values during some consonants.

Step 2: Run the script

Download and open Praat.

Select Praat - Open Praat script…, and select extract_pitch_contour.

If on Mac OS, replace the “" in line 55 with “/”.

Select Run - Run. You will be presented with a user interface, where you can specify a number of variables.

Define the variables based on what you need, then select OK. Praat will start processing your files, and an output file summarising all pitch information extracted will be created in the same folder:

csv

The file selection procedure used in this script is from Scott Seyfarth annotation.Praat.

Back to Top ↑