Uso de scripts con el programa Praat
Un script es un programa que se ejecuta dentro del programa Praat. Se trata de un documento de texto, guardado en el ordenador con la extensión .praat, que contiene una serie de instrucciones escritas en un lenguaje de programación específicamente desarrollado para la creación de scripts.
Los ficheros que contienen un script y que se encuentran almacenados en el ordenador pueden abrirse mediante dos procedimientos:
- Desde el disco duro, haciendo doble clic sobre el fichero con la extensión .praat o seleccionando el programa Praat cuando se activa la opción «Abrir con…».
- Desde el interior del programa Praat, mediante el menú Praat y, a continuación, Open Praat Script. Con ello se abre el cuadro de búsqueda que permite seleccionar el script en el ordenador.
En ambos casos se abre una nueva ventana con el script. Para ejecutarlo, se selecciona la opción Run.
En el caso de que el script se encuentre en la red y, al descargarlo, el texto del script aparezca en la ventana del navegador, en primer lugar debe seleccionarse y copiarse el texto completo del script.
A continuación, se abre el programa Praat y en el menú Praat se selecciona el comando New Praat script.
Se abrirá una ventana en la que se pega el texto copiado del navegador.
Finalmente, el documento con el texto del script se guarda con la extensión .praat mediante la opción Save as… del menú File.
Uso del historial en la ventana de scripts
El programa Praat guarda en la memoria las operaciones que va realizando el usuario.
Mediante el menú Praat se selecciona el comando New Praat script y se abre una ventana nueva en la que puede guardarse el contenido de la memoria con las operaciones realizadas. Para ello, se emplea la opción Paste history del menú Edit.
Mediante la opción Clear history del menú Edit se borra el contenido de la memoria.
Si se desea guardar el texto copiado en la ventana, se utiliza la opción Save as… del menú File.
Ejemplo de funcionamiento
Se borra el contenido previo de la memoria mediante la opción Clear history del menú Edit.
En la ventana de objetos de Praat se selecciona un fichero de sonido denominado «Sound En_invierno_norm».
Mediante el comando To Pitch… en el menú Analyse periodicity se crea un documento «Pitch En_invierno_norm» en la ventana de objetos.
Al pegar el historial (Paste history del menú Edit) en la ventana del script aparece el siguiente texto:
selectObject: "Sound En_invierno_norm"
To Pitch: 0, 75, 600
selectObject: "Sound En_invierno_norm" indica que se ha seleccionado el fichero de sonido denominado «Sound En_invierno_norm».
To Pitch: 0, 75, 600 indica que se ha aplicado el comando To Pitch… y, en la ventana con las opciones que aparecen para la creación del objeto «Pitch En_invierno_norm» se han seleccionado las siguientes opciones:
Time step (s) = 0
Pitch floor (Hz) = 75
Pitch ceiling (Hz) = 600
El script se guarda mediante la la opción Save as… del menú File, con el nombre que se desee y la extensión .praat.
Si se desea volver a utilizar el script, se abre mediante uno de los dos procedimientos siguientes:
- Desde el disco duro, haciendo doble clic sobre el fichero con la extensión .praat o seleccionando el programa Praat cuando se activa la opción «Abrir con…».
- Desde el interior del programa Praat, mediante el menú Praat y, a continuación, Open Praat Script. Con ello se abre la ventana de búsqueda que permite seleccionar el script en el ordenador.
Para ejecutarlo, se selecciona la opción Run.
Debe tenerse en cuenta que si se ejecuta el script, únicamente funcionará si en la ventana de objetos de Praat existe un documento denominado «Sound En_invierno_norm».
Reemplazando la primera línea del script por las dos líneas siguientes, se crea el objeto Pitch para el fichero de sonido que se encuentre seleccionado en la ventana de objetos:
sound = selected ("Sound")
selectObject: sound
Añadir un script al menú de la ventana de objetos
Si un script se utiliza a menudo, puede añadirse a uno de los menús en la ventana de objetos o en la ventana de imágenes de Praat.
En la ventana que contiene el script, se selecciona la opción Add to fixed menu… del menú File.
A continuación, se abre una ventana en la que se especifican los elementos siguientes:
- Ventana de Praat (Window) en la que aparecerá el menú con el script: puede elegirse la ventana de objetos (Objects) o la de imágenes (Picture).
- Nombre del menú (Menu) en el que se desea que aparezca el script. Si se añade a la ventana de objetos, puede elegirse entre los siguientes menús que ya contiene el programa: Praat, New, Open, Help, Goodies, Preferences o Technical.
- Nombre del nuevo botón que aparecerá en el menú definido anteriormente para ejecutar el script (Command). Siguiendo las convenciones de Praat, la acción que ejecutará el script se escribe seguida de tres puntos suspensivos (…).
- Nombre del menú o del submenú después del que se desea que aparezca el nuevo botón (After command). Si se deja en blanco, el botón aparecerá en el menú principal.
- En Depth se indica 0 si se desea que el nuevo botón aparezca en el menú principal o 1 si el nuevo botón tiene que aparecer en un submenú.
- Ruta en el sistema de directorios (carpetas) del ordenador hasta el lugar en el que se encuentra el script (Script file:).

Con la configuración que se ha mostrado en la ventana anterior, aparecería un comando Do it… en el menú New de la ventana de objetos de Praat. Con este comando se ejecutaría el script seleccionado en Script file.
Praat manual: Add to fixed menu…
Para eliminar un menú que se ha añadido, en el menú Praat se selecciona Preferences y, a continuación, Buttons.
Con ello se abre una ventana en la que aparecen todos los menús de Praat. Los añadidos por el usuario van precedidos de la la indicación ADDED.
Haciendo clic sobre ADDED, el texto cambia a REMOVED, con lo que, al salir del programa, se elimina el menú que se había añadido.
Praat manual: ButtonEditor
create_waveforms
Script creado por Niels Reinholt Petersen (Department of Scandinavian Studies and Linguistics, University of Copenhagen) para la generación de diversos tipos de onda sonora.
Petersen, N. R. (2005). create-waveforms [Script de Praat]. Phonetics Laboratory, Department of Linguistics, University of California Los Angeles. http://phonetics.linguistics.ucla.edu/facilities/acoustic/create_waveforms.txt
Funcionamiento del script
- Descarga el script create_waveforms.praat en tu ordenador.
- Abre el script siguiendo los pasos indicados en Nociones básicas sobre el uso de scripts, selecciona un tipo de fuente e introduce los valores de duración, frecuencia fundamental (f0) y de amplitud correspondientes a la onda sonora que desees crear.
- En la ventana Praat Objects se crea un documento cuyo nombre empieza por «Sound», que puedes escuchar y visualizar. Si necesitas información sobre el manejo de Praat, consulta el documento Introducción a Praat: operaciones básicas.
create_sine_wave
El script create_sine_wave permite crear ondas sinusoidales y representarlas en la ventana de dibujo de Praat.
Funcionamiento del script
- Descarga el script create_sine_wave.praat en tu ordenador.
- Abre el script siguiendo los pasos indicados en Nociones básicas sobre el uso de scripts, e introduce los valores de duración, frecuencia fundamental (f0) y de amplitud correspondientes a la onda sonora que desees crear. Puedes también introducir un nombre para la señal sonora que se creará.
- En la ventana Praat Objects se crea un documento cuyo nombre empieza por «Sound», que puedes escuchar y visualizar. Si necesitas información sobre el manejo de Praat, consulta el documento Introducción a Praat: operaciones básicas.
- En la ventana Praat Picture se representa la forma de onda y el espectro de la señal sonora creada.
El script «text_grid_maker» permite la creación de un TextGrid para todos los ficheros que se encuentran en un mismo directorio.
«This script opens all the files in some directory that start with a given string. It makes a TextGrid for each of the sound files, then throws the sound file and the TextGrid into the editor so you can make marks.
A form will pop up allowing you to specify your directory and the word to work on. If you don’t want to do it this way, just make sure to leave the «Word» field COMPLETELY BLANK when you run the script -- delete any default value displayed there. Then you will go through all of the files.»
Crosswhite, K. (2007). Text Grid making script [Script de Praat]. Center for the Sciences of Language, University of Rochester. http://web.archive.org/web/20080112060753/http://www.ling.rochester.edu/people/cross/text-grid-maker.script
Ejemplo de funcionamiento del script
Mediante el script text_grid_maker_experimento_vocales.praat se crea un TextTier con tres niveles de anotación: «enunciado», «palabra» y «vocal».
El script guardar_tier_como_txt permite guardar en un documento de texto (.txt) la transcripción realizada en un «tier» de un TextGrid. Antes de usar el script, el TextGrid debe guardarse en formato Unicode.
Se basa en el script «tier2text» creado por Julien Eychenne:
Eychenne, J. (2011). tier2text.praat [Script de Praat]. Hankuk University of Foreign Studies. http://julieneychenne.info/files/scripts/tier2text.praat
Ejemplo de funcionamiento del script
- Descarga el script guardar_tier_como_txt y guárdalo en el disco duro de tu ordenador.
- Abre mediante el programa Praat el documento TextGrid en el que hayas realizado la transcripción.
- Guarda el TextGrid en formato Unicode siguiendo las instrucciones que se recogen en el apartado Conversión al formato Unicode del documento «La segmentación y el etiquetado de corpus mediante Praat».
- Selecciona el TextGrid en la ventana de objetos de Praat.
- Abre el script guardar_tier_como_txt y ejecútalo mediante el comando Run, tal como se explica en el apartado Uso de un script almacenado en el ordenador de este mismo documento.
- En la ventana que se abrirá a continuación, introduce el número del «tier» en el que se encuentra la transcripción que deseas guardar en un documento de texto.
- Selecciona la forma en la que se guardará la transcripción:
- Sin espacios
- Con un espacio después de cada marca de segmentación (Boundary) del TextGrid
- Con un salto de línea después de cada marca de segmentación (Boundary) del TextGrid
- Se abrirá una ventana para seleccionar la carpeta en la que desees guardar el documento de texto que contiene la transcripción. Elige la carpeta y guarda el documento.
- El documento se guarda automáticamente con el nombre del TextGrid y la extensión .txt, por lo que puede abrirse con cualquier procesador de textos. Si para abrirlo es necesario importar el documento, debe elegirse la opción Unicode (UTF-8) para la codificación de los caracteres. Una vez importado y abierto el documento, para visualizar correctamente los símbolos fonéticos es necesario cambiar el tipo de letra por defecto del procesador de textos y emplear una fuente con símbolos fonéticos como Charis SIL o Doulos SIL.
El script duracion_segmentos.praat extrae los valores de duración de cada intervalo de un TextGrid que contenga una etiqueta y los recoge en un documento en formato .txt con tres columnas (nombre del TextGrid, etiqueta y duración en segundos) separadas por tabuladores.
Extracción automática de los valores de duración de los segmentos etiquetados
Se basa en el script «calculate_segment_durations.praat» creado por Mietta Lennes:
Lennes, M. (2002). calculate_segment_durations.praat [Script de Praat]. Zenodo. https://github.com/lennes/spect/blob/1.0.0/scripts/calculate_segment_durations.praat
Ejemplo de funcionamiento del script
- Antes de empezar, descarga los ficheros El_anjo_tiene_norm.TextGrid y duracion_segmentos.praat.
- Abre en Praat el fichero «El_anjo_tiene_norm.TextGrid», que contiene la segmentación y las etiquetas correspondientes a cada segmento del enunciado y selecciónalo en la ventana de objetos. El script únicamente funciona con un TextGrid seleccionado.
- Abre en Praat el script «duracion_segmentos.praat» mediante el menú Praat y, a continuación, Open Praat Script.
- En la ventana del script, selecciona Run en el menú Run.
- Introduce los siguientes datos en la ventana de configuración del script:
- Número del Tier en el que se encuentran las etiquetas (en este ejemplo, en el número 1).
- Nombre del documento en el que se almacenarán los datos (en este ejemplo, «duraciones.txt»).
- Al acabar las operaciones realizadas por el script aparece un mensaje y en la carpeta donde has colocado previamente el script se habrá creado un nuevo documento (en este ejemplo, duraciones.txt) con el nombre que hayas introducido en la ventana de configuración del script y con la extensión .txt.
- En el documento .txt que contiene los resultados del script (en este ejemplo, duraciones.txt) aparecen los datos en filas y columnas; las columnas están separadas por tabuladores y cada fila corresponde a un segmento; la primera columna contiene el nombre del TextGrid seleccionado, la segunda, la etiqueta del segmento y la tercera, su duración en segundos.
- Debe tenerse en cuenta que si no se cambia el nombre del documento (en este caso, «duraciones.txt»), los resultados se van añadiendo en filas sucesivas al mismo documento cada vez que se ejecuta el script.
- Si se desea que en el documento con los resultados aparezcan los símbolos del AFI en lugar de los símbolos con la codificación empleada en Praat, debe guardarse el TextGrid en formato Unicode siguiendo las instrucciones que se recogen en el apartado Conversión al formato Unicode del documento «La segmentación y el etiquetado de corpus mediante Praat».
El script extraccion_de_formantes_en_tabla.praat extrae los valores de los formantes de los sonidos de ficheros con grabaciones previamente segmentadas y etiquetadas mediante un TextGrid. Puede funcionar con un único fichero o con todos los documentos (.wav y sus correspondientes .TextGrid) de una carpeta.
extraccion_de_formantes_en_tabla.praat
Se basa en el script «collect_formant_data_from_files.praat» creado por Mietta Lennes:
Lennes, M. (2003). collect_formant_data_from_files.praat [Script de Praat]. Zenodo. https://github.com/lennes/spect/blob/1.0.0/scripts/collect_formant_data_from_files.praat
Ejemplo de funcionamiento del script
- Antes de empezar, descarga los ficheros El_viento_norte.wav, El_viento_norte.TextGrid y extraccion_de_formantes_en_tabla.praat;.
- Abre en Praat el script extraccion_de_formantes_en_tabla.praat mediante el menú Praat y, a continuación, Open Praat Script.
- En la ventana del script, selecciona Run en el menú Run.
- Introduce los siguientes datos en la ventana de configuración del script:
- Al acabar las operaciones realizadas por el script, en la carpeta donde has colocado previamente los ficheros aparecerá un nuevo documento (en este ejemplo, resultados_formantes.txt) con el nombre que hayas introducido en la ventana de configuración del script y con la extensión .txt.
- En el documento .txt que contiene los resultados del script (en este ejemplo, resultados_formantes.txt) aparecen los datos en filas y columnas; las columnas están separadas por tabuladores y cada fila corresponde a un segmento.
- Fichero: nombre del fichero analizado.
- Segmento: etiqueta (habitualmente un símbolo de transripción fonética) correspondiente a cada segmento en el nivel de anotación (Tier) seleccionado.
- F1: valor en Hz del primer formante calculado en el centro del segmento.
- F2: valor en Hz del segundo formante calculado en el centro del segmento.
- F3: valor en Hz del tercer formante calculado en el centro del segmento.
Resultados del script extraccion_de_formantes_en_tabla.praat;.
- Si se desea que en el documento con los resultados aparezcan los símbolos del AFI en lugar de los símbolos con la codificación empleada en Praat, debe guardarse el TextGrid en formato Unicode siguiendo las instrucciones que se recogen en el apartado Conversión al formato Unicode del documento «La segmentación y el etiquetado de corpus mediante Praat».
No debe olvidarse que los datos obtenidos son el resultado de un análisis automático y que, por lo tanto, es conveniente revisarlos para evitar la presencia de posibles errores en la detección de los formantes.
El script carta_formantes_desde_tabla.praat permite realizar una carta de formantes a partir de los valores de los formantes de los segmentos previamente etiquetados en un TextGrid.
carta_formantes_desde_tabla.praat
Requiere los resultados del script extraccion_de_formantes_en_tabla.praat, mediante el cual se realiza la extracción automática de los valores de los formantes.
También puede utilizarse con una tabla creada manualmente siempre y cuando contenga cuatro columnas separadas por tabuladores: nombre del fichero analizado, nombre de la columna que contiene el etiquetado, valor de F1 y valor de F2 (con los decimales separados por un punto).
Se basa en el script «draw_formant_plot_from_table.praat» creado por Kristine Yu.
Ejemplo de funcionamiento del script
- Abre en Praat el documento .txt con los resultados del script extraccion_de_formantes_en_tabla.praat (en este ejemplo, resultados_formantes.txt) o una tabla con este mismo formato mediante el comando Read from file que se encuentra en el menú Open.
- Abre en Praat el script carta_formantes_desde_tabla.praat mediante el menú Praat y, a continuación, Open Praat Script.
- En la ventana del script, selecciona Run en el menú Run.
- Introduce los siguientes datos en la ventana de configuración del script:
- Para crear una nueva figura, selecciona la opción Borrar el gráfico existente.
- Nombre del fichero que contiene los datos, abierto en Praat, sin la extensión .txt (en este ejemplo, resultados_formantes)
- Nombre de la columna de la tabla en la que se encuentran las etiquetas (en este ejemplo, Segmento).
- Etiqueta (habitualmente un símbolo de transcripción fonética) correspondiente al segmento que se desea que aparezca en la carta de formantes. (en este ejemplo, e). Los símbolos de transcripción introducidos deben coincidir con los que se encuentran en la tabla con los valores de los formantes.
- Valores máximos y mínimos de F1 y de F2 que aparecerán en los ejes de la carta de formantes (en este ejemplo se utilizan los valores por defecto del script).
- Valor de la desviación típica si se desea dibujar una elipse que represente el área de dispersión (2 en este ejemplo, el valor por defecto del script).
- Tamaño de la fuente y color de los símbolos fonéticos que aparecerán en el gráfico.
- Selecciona Apply en la ventana de configuración del script.
- En la ventana Praat Picture se dibuja la carta de formantes correspondiente al segmento seleccionado; el área de dibujo se especifica en el script.
Resultados del script carta_formantes_desde_tabla.praat.
- Cambiando la etiqueta correspondiente al segmento y sin cerrar ni borrar la ventana Praat Picture se añaden sucesivamente segmentos a la carta de formantes. Para ello, al principio del script se emplea la opción Superponer al gráfico existente.
Menú de configuración del script carta_formantes_desde_tabla.praat para la superposición de los campos de dispersión de diferentes segmentos.
Resultados del script carta_formantes_desde_tabla.praat superponiendo los valores correspondientes a dos segmentos.
- La imagen puede guardarse mediante el comando Copy to clipboard en el menú File o en el menú Edit de la ventana Praat Picture.
Si para una determinada etiqueta existen 4 casos o menos (por ejemplo, 4 o menos casos de [u] en el corpus), aparece el mensaje The SCCP will not have full dimensionality. Este mensaje puede ignorarse.
El script busqueda_en_TextGrid.praat permite buscar en las transcripciones o anotaciones que se encuentran en un conjunto de ficheros TextGrid. Se basa en «find_tier_content_1g.praat» creado por Sven Grawunder (Department of Empirical Linguistics, Johann Wolfgang Goethe University Frankfurt am Main) y en «search_corpus.praat», desarrollado por Mietta Lennes (Department of Modern Languages, University of Helsinki).
busqueda_en_TextGrid.praat
Antes de utilizarlo deben tenerse en cuenta algunas cuestiones:
- La búsqueda se realiza utilizando la codificación propia de Praat de los símbolos del Alfabeto Fonético Internacional; por ejemplo, para buscar [ɲ] debe emplearse la combinación \nj
- Si se desea realizar una búsqueda usando símbolos del Alfabeto Fonético Internacional, los TextGrid deben estar guardados en formato Unicode siguiendo las instrucciones que se recogen en el apartado Conversión al formato Unicode del documento «La segmentación y el etiquetado de corpus mediante Praat».
- Los resultados de la búsqueda (un listado con todos los ficheros TextGrid que contienen los elementos buscados y el subdirectorio en el que se encuentra cada uno) aparecen en una ventana de información de Praat.
- Si se selecciona la opción Guardar los resultados, los resultados se guardan en un documento de Excel. El documento de Excel se crea en la misma carpeta en la que se encuentra el script.
- Todos los documentos analizados durante la búsqueda, tanto si contienen o no la información deseada, aparecen listados en la ventana de objetos de Praat. Mediante la opción Borrar TODOS los objetos de la ventana de Praat se eliminan estos documentos, pero también se borra cualquier otro objeto o documento con el que se estuviera trabajando.
Algunos scripts disponibles en la red para la creación de figuras:
Create pictures v.4
«This script creates and saves pictures (PNG, PDF, wmf, eps, PraatPic) of all the Sound and TextGrid files it finds in a folder.
The pictures contain a waveform (optional), a spectrogram (optional), the F0 track (optional) and a the content of the tiers of the TextGrid associated with the sound file (optional).»
Elvira, W. (2017). Create pictures with tiers (Versión 4.4) [Script de Praat]. https://github.com/wendyelviragarcia/create_pictures
draw-waveform-pitchtrack-spectrogram.praat
«Draws waveform, pitch track, and spectrogram, and optionally a TextGrid of the same name.
The user selects a sound object in the object list, and fills out a form.
The user may indicate where they want the picture saved to, and in what format (PDF, EPS, or PNG).
If the user indicates there is a TextGrid with the same name as the sound file in the object list, it will be part of the picture.
The f0 values are settings for the pitch analysis, and the f0 window is automatically adjusted.
Byron Ahn (byronahn@bu.edu)
March 12, 2015
Based heavily on a script by Pauline Welby (welby@ling.ohio-state.edu, welby@icp.inpg.fr) from November 20, 2005»
Ahn, B. T. (2015). draw-waveform-pitchtrack-spectrogram.praat [Script de Praat]. Princeton University. http://byronahn.com/pub/draw-waveform-spectrogram-pitchtrack.praat
draw-waveform-pitchtrack-spectrogram-overlaid.praat
«Draws waveform, alongside the pitch track overlaid on top of the spectrogram, and optionally a TextGrid of the same name.
The user selects a sound object in the object list, and fills out a form.
The user may indicate where they want the picture saved to, and in what format (PDF, EPS, or PNG).
If the user indicates there is a TextGrid with the same name as the sound file in the object list, it will be part of the picture.
The f0 values are settings for the pitch analysis, and the f0 window is automatically adjusted.
Byron Ahn (byronahn@bu.edu)
March 12, 2015
Based heavily on a script by Pauline Welby (welby@ling.ohio-state.edu, welby@icp.inpg.fr) from November 20, 2005»
Ahn, B. T. (2015). draw-waveform-pitchtrack-spectrogram-overlaid.praat [Script de Praat]. Princeton University. http://byronahn.com/pub/draw-waveform-spectrogram-pitchtrack-overlaid.praat
plotSonaOsciGrid II
«This is a Praat[6.0.16]-Script to simplify plotting sonagrams with oscillograms, and annotations.
In order to run this script:
- You need to install and run Praat: https://www.fon.hum.uva.nl/praat/
- Load a Sound file (Praat Objects menu: Open -> Read from file…
- Load or create a Praat-TextGrid (with the same name as the loaded Sound)
- Select either the Sound or the TextGrid Object in the Praat Objects Window
- Load this file as Praat-Script (Praat Objects menu: Praat -> Open Praat script…)
- Run it (Script editor menu: Run -> Run)
Input:
- Praat Sound object
- Praat TextGrid object with same name as the sound
Output:
- image file(s) (png),
- vector graphics (eps or emf)
OR
- manually print picture(s) via PostScript printer
AND/OR
- copy picture(s) to clipboard
Author: Markus Brückl, TU Berlin, 2018»
Brückl, M. (2018). plotSonaOsciGrid II [Script de Praat]. Institut für Sprache und Kommunikation, Technische Universität Berlin. http://www.brykl.de/plotSonaOsciGrid2.praat
Pueden encontrarse más scripts para la creación de figuras en:
Toscano, J. (s. f.). Drawing. Praat script archives. https://sites.google.com/site/praatscripts/system/app/pages/search?scope=search-site&q=drawing
Introducción a Praat
Scripts para Praat en la red
Uso de
scripts con el programa Praat
Joaquim Llisterri, Departament de Filologia Espanyola, Universitat Autònoma de Barcelona
La pàgina va ser modificada per darrera vegada el