Hacker News new | past | comments | ask | show | jobs | submit login
Praat: Doing Phonetics by Computer (uva.nl)
68 points by dotcoma 13 days ago | hide | past | favorite | 19 comments





This brings back memories.

I worked my way through some of its source code many years ago during my post-graduate studies and it was very _strange_. I see it is now on GitHub [0].

They used C macros to implement object oriented programming, with symbols like `me` and `my` and `thee` scattered throughout the source code. It seems the code has been converted to C++ (IIRC it used to be in C), but I still see the `my` keyword in there.

They have their own BASIC-like scripting language. The weirdest property for me was that it allowed for whitespace in the identifiers. Just look at the example in [1]: The `Create simple Matrix` is actually a function in the scripting language that constructs a matrix object. The function name corresponds to a menu item and IIRC they used some more preprocessor magic to reuse the same code for the menus on the GUI and the functions in the scripting language.

I don't think you're supposed to write the scripts by hand. Rather it recorded your actions as you worked your way through the GUI and then you could export and modify those recordings as scripts.

They also implemented their own cross platform GUI toolkit rather than using one of the existing cross-platform GUI toolkits, so it works on Windows, Linux (or any X Windows I believe) and MacOS.

[0]: https://github.com/praat/praat [1]: https://github.com/praat/praat/blob/master/test/script/comma...


Academic code is wild

We used Praat last semester in our socio-linguistics class to annotate voice recordings... For a class presentation, I went crazy and tried to build simple web-based annotator tool to impress my teacher. He ended up not liking it but the project taught me Django :D ... Here is a link (provides manual spectrum analysis for a particular experiment setup):

https://phonda.labb.top/recorder/


Ah this takes me back a decade when I used Praat to annotate the prosody of "no wonder" mirative statements for my Computational Linguistics master thesis. Hours spent in Praat and that horrible scripting language...

It did lead to my first publication as co-author and some interesting insights: https://kuleuven.limo.libis.be/discovery/fulldisplay?docid=l...


My linguist friends went wild when Praat appeared onscreen briefly in the movie Arrival.

I would get wild too if I ever had to touch that program scripting "language" again.

Is Wavesurfer gone?

https://www.speech.kth.se/wavesurfer/

We used both in university courses.


Those two names, Praat & Wavesurfer are a blast from the past!

I also used both a good time ago, when I was teaching myself phonetics. I always preferred the much simpler Wavesurfer. Even back then Praat seemed like a relic from the past, although one could appreciate the effort that had gone into it.

Back when I was messing with this stuff, I was planning to build a sequence recognizer/predictor (not unlike transformer in what it does, but not in how it does it) - begining of an AI project - and wanted to start with speech as an input, so wanted to understand it (formants, fricatives, plosives, etc).

I did end up building a Qt-based real-time spectrogram for Linux that let me play with things like wideband vs narrowband spectrograms so I could visualize what they were extracting. Never did anything further with it though - part of my scrap pile of abandoned projects, although I may yet resurrect it.

https://imgur.com/a/LkpVZzs


Amazingly, Wavesurfer still runs on my macbook. And I still find it better for some things than Audacity. I think I you can download it from Sourceforge.

I like the name. “Praat” is Dutch for “talk”.

From Middle Dutch praten, further etymology unknown. Cognates are found only in Middle Low German praten. English prate, prattle and the various Scandinavian verbs were borrowed from these two languages.

(From Wiktionary.)


Wiktionary also says the Swedish “prata” comes from Proto Germanic:

https://en.wiktionary.org/wiki/Reconstruction:Proto-Germanic...

So perhaps the Middle Low German and Scandinavian words just have the same old origin.


I wonder if the insult prat came from prattler

Probably a shared root with English "prattle" and the very British "prat."

This is excellent software for doing many kinds of speech related tasks. I have used it in my courses analyzing speech.

It's not excellent software, but there's nothing that's better or more comprehensive in features.

Ugh, the scripting.


praat...echt serious gasten, could really have come up with a more interesting name.

I think for people other than us, it actually is an interesting name

I always liked the "Boom hierarchy" of data types.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: