This is a Matlab routine to automatically predict creakiness using a model of psychoacoustic roughness.
Source code for this library is available from:
How to run the code:
To use, please load creakByRoughness.m in Matlab and specify these parameters in the code:
- A directory where the WAV recordings are located
- A directory where you want the roughness temporal profiles to be stored
- Whether to create plots or not
- Whether to use Praat textgrids
In the latter case, you should also specify the name of the tier and the label that you’re interested (an asterisk ‘*’ will match all the labels within the desired tier).
This software should work with Matlab version >= 22.214.171.1241655 (R2016b).
This software is built upon several Matlab libraries included as subdirectories in the project:
- Covarep (for vocalic activity determination)
- Mview (for reading Praat TextGrid files)
- Schrader & Hermes’ Roughness model
This program receives as arguments a directory where the WAV files are located, a destination folder, a summary file name, and switches for whether to plot the spectrograms and roughness traces, and whether to use automatic vocalic segmentation, Praat text-grids, or no segmentation.
The program outputs a summary file. This file comprises a table with as many rows as WAV files in the input directory, with file name, token duration, and number of creakiness candidates found in the token.
Roughness temporal profiles are stored in the destination folder as comma separated value (CSV) files with each row comprising:
- Measurement time (beginning of the frame),
- Probability of voicing,
- Duration of the vocalic segment,
- Roughness in aspers, and
- Whether that token is considered creaky or not.
Du’an Zhuang corpus:
129 tokens with Textgrids and creakiness classifications:
How to cite:
J. Villegas, J. Perkins, and S. J. Lee, “Automatic prediction of creaky voice with psychoacoustic roughness,” J. Acoust. Soc. Am.,(SUBMITTED)