Praat scripts

Scripts and batch proccesses are a handy way of saving time while performing repetitive operations. Here we have uploaded some of the Praat scripts we use in our Lab.

All the scripts linked here include either at the begining of the file or in the script first form a description of the script routines and extensive instructions.

If you don't find the script you are looking for, you can write us and maybe we have one that suits you and it is not uploaded or we know some lab that has it. If the script does not exist yet, we can always script it for you.

You can download the praat script files by clicking the link with que right button of your mouse and selecting "Save link as...", otherwise carry returns will be converted into newlines and that can cause the script not to work.

You can use them by opening the script with Praat (Praat>Open Praat script... or double click the script file) and running the script (Run>Run or type Ctr/cmd + R).


Praat scripts list

eti_ToBI: An automatic transcriber for Spanish and Catalan intonation using the Sp_ToBI and Cat_ToBI conventions.


create_pictures v.4.5: This script creates and saves pictures (PNG, PDF, wmf, eps, PraatPic) of all the sound files it finds in a folder. The pictures contain a waveform, a spectrogram, an optional F0 track and opcionally the content of the tiers of the TextGrid associated to the sound file.

Mandarin_Chinese_tones_transcriber: This is a first beta. Needs a wav sound and a textgrid with intervals. It can serve as a helper for transcription but its performance is far from perfect.


Editing, manipulation and sound segmenters

edit_sound_files: This script runs through all the files in a folder and allows you to convert the stereo sounds into mono, resample the files, normalize intensity and remove noise. Beware! It removes noise everytime you use it, your sound can become metallic.

modifies_duration: Modifies duration of a selected Sound neutralizes_pitch: Manipulates pitch in order to be a constante value of X Hertzs.

extract_and_save_intervals: This script extracts and saves intervals in an independent sound file, the new files will have the same name/label as the intervals. 


TextGrid annotation and modification for all the files in a folder

blank_TextGrid_creation: Creates TextGrids for all the Sounds in a folder.

created_TextGrid_modification: Opens a created TextGrid with its related sound, gives you time to correct it and saves the TextGrid with the modifications.

segmentation_helper: This script goes through all the wavs in a folder and annotates them (sound by sound in IPA). It needs the ortographic transcription of the wav content. It will write the same label (sentence) in the TextGrid for all the wavs in the folder. If you want to annotate a corpus that has a different content depending on the file name, check Mietta Lennes scripts, SPASS or EasyAlign.

remove_tiers: This script runs through all the Textgrids in a folder and removes the number of tiers you select and those below it

add_tiers: It adds new interval or point tiers for all the TextGrids in a folder.


Data analysis

point_label_extraction: Works for all the files in a folder. Writes in a txt every point label and it writes its correspondent interval. In order to run it needs a TextGrid with ar least 1 interval tier and 1 point tier.

extracts_f0_from_points: Works for all the files in a folder. Writes in a txt point labels, time of point and F0 on point. Needs a .wav and textgrid with at least 1 point tier. The output is a tab separated file.

extracts_f0_from_points_and_corresponding_label_in_interval_tier: Works for all the files in a folder. Writes in a txt point labels, time of point, F0 on point and label in a matching interval tier. Needs a .wav and textgrid with at least 1 point tier and 1 interval tier. The output is a tab separated file.

extracts_vowel_data: Works for all the files in a folder. Extracts F0, F1, F2, F3, F4, duration and intensity for all intervals that have a label with a vowel symbol. 

prosodic_data_extraction.praat v.2.1: This script can get duration, intensity and 3 F0 (Hz and st) values for each non-empty interval it finds in the tier. It can  also extract the corresponding labels for . Then it saves the values in a tab-separated txt, which you can easily open with Excel.

zero-crossings-and-spectral-moments: Script created for analysing fricatives. This script goes through all the files in a folder and gets (for non-empty-intervals or intervals that match a label) zero-crossings and spectral moments.

ltas_data: Writes Ltas values from all files in a folder in a txt that can be opened with Excel.

save_perception_results: This script extracts the results of all the perception test that are in the objects list, then sorts them by stimulus and saves a txt  file with the name you indicate.


Other tools

list_files: Writes a list with all *wav or/and  *TextGrid that finds in a folder.


Utilities for Amper members

segmentador.praat: Automatic segmenter for the Amper's project fixed corpus. It identifies sentences out of a large .wav sound and extracts it sentence with its corresponding code. In order to use it, you need to have a txt with the codes in the order that you have recorded them.

copy_Amper_folder_without_expansion_files.praat: This script copies all the files belonging to the sentences without expansions from the "permanent" Amper corpus.

Amper_txt_Hz_to_St.R: This script goes through all the Amper files in a folder and converts the F0 in Hertz data in St data.

If you want to get Matlab scripts (Amper06 or ProDis), contact us.