P2TK - Penn Phonetics Toolkit

P2TK, the Penn Phonetics Toolkit, developed in the Penn Linguistics Phonetics Lab, is a collection of Python and Praat scripts and other tools to aid speech research.

Unless otherwise noted, scripts here can be freely copied under the terms of the MIT open source license and should be cited by their name, the last modified date of the script, and as a part of the package "P2TK: Penn Phonetics Toolkit". We have a SourceForge project page.

Suggestions and patches with improvements to the scripts are welcome, sent to the contact person associated with each script.

The scripts are generally fairly simple and documentation for how to use them is located in the comment block at the top of the script.

Python Scripts

syllabifier is a Python script to perform automated syllabification of phonemic transcriptions in English. A syllabified version of cmudict is available. Contact: Joshua Tauberer; browse files

freq is a Python script to build a frequency or conditional frequency table and then to convert that to probabilities or conditional probabilities.

Praat Scripts

Praat-Py is an extension to Praat that allows scripts to be written in Python, rather than in Praat's own scripting language.

Other Tools

quickTrans: a simple shell interface for transcription. The audio file is first broken up into small utterance groups which can be easily transcribed one at a time. Requires Praat and Python. Contact: Keelan Evanini

extractFormants: a tool for extracting vowel formants from a large corpus of phoneme-aligned speech. Requires Python and either Praat or ESPSContact: Keelan Evanini

Last Modified: 17 Oct 2009
Phonetics Laboratory
Department of Linguistics
623 Williams Hall (campus map)
University of Pennsylvania
Philadelphia, PA 19104-6305
Telephone: (215) 898-0083
Fax: (215) 573-2091
For more information, contact Amy Forsyth at