Speak IPA – Text to Speech for International Phonetic Alphabet
speak-ipa.bearbin.net
speak-ipa.bearbin.net
Sadly, I'm having a very difficult time finding a good reference for this online. I know all of this because I spent years studying graduate Linguistics at UCSB while I was trying to get a PhD in Computer Science, and I carried around that little book of per-language vowel charts for a long time ;P.
http://www.antimoon.com/how/english-vowel-chart.htm
> For example, the average British /æ/ is slightly more open (more like /a/) than the average American /æ/.
That said, I typed all of that under an expectation that it was going to work really well, but in practice this website sounds a lot like Dr. Sbaitso, and so the nuance of pronunciation is totally lost anyway ;P.
There's still some nuance that is lost in transcription but phonetic IPA transcriptions can achieve a pretty close approximation to the real utterances.
I think it's a suitable response. There is enough allophonic variation among speakers of a single language that undoubtedly someone perfectly reciting a narrow IPA transcription could be taken as a plausible native speaker. Even for your purposes (though I'm still not clear on what type of task your envisioning) the IPA could still be useful as an intermediary layer of abstraction, as in storing a mapping by language of IPA vowel symbols to the exact formants required.
One other thought: you could compare the output with espeak (http://espeak.sourceforge.net/) or use espeak to generate IPA transcriptions for various languages.
Is this using parametric synthesis? (It doesn't sound concatenative.) Do you have a background in speech, signal processing, or audio, and is this just a passing interest, or something you want to continue to explore?
I've been teaching myself speech algorithms and methods off and on for the past six months ago. Recently I developed a concatenative Donald Trump text to speech engine (I've posted about it in the past), but the samples aren't great and it doesn't use proper unit selection. I'm trying to apply ML to generate a massive set of smooth n-phones that concatenate well together.
I'd definitely like to exchange contact info if you're into speech synthesis long term. My info is in my profile.
In any case, really cool project! :)
What is the name of the book? Do you have a link to it on Amazon or the ISBN for the version you're recommending?
Really what I'm saying is I'd like to see someone build an automated pun-discovery tool.
If you really want to find puns programmatically, the releases section[2] has a ready-made package with homonyms in all the languages, including English. It should be trivial to make an online service that searches through this file for matches on particular words.
[1] https://github.com/open-dict-data/ipa-dict [2] https://github.com/open-dict-data/ipa-dict/releases
I sounds clear enough, but there are a few issues which would need to be resolved before I would use it. For example, when I entered "o:", which should be a long pure vowel, I got a diphthong. The first example [ˈnɑɹkoʊˌklɛpˈtɑkɹəsi] has the IPA for a General American accent but sounds more like Received Pronunciation to me. Some IPA characters aren't voiced at all. These might be fixable, but how easy this is depends on the implementation approach.
Decades ago, I developed a formant speech synthesizer (the details are here: http://web.onetel.com/~hibou/Formant%20Speech%20Synthesizer....). Formant speech synthesizers work by passing a pulsed or random input through a series of filters to generate speech sounds, and can be easily adapted to different accents and speakers. However, it is difficult to get them to sound natural, so they usually sound more like Daleks than people.
I've also done some rule-based text to speech. This works quite well for Standard English pronunciations in a Glasgow accent, the closest accent to English spelling and therefore the one which can be most reliably generated with the smallest number of exceptions.
More recent approaches to speech synthesis sound more natural but are limited to a particular accent and speaker. It's never a Glasgow accent, and developing one for a new speaker and accent is a major undertaking. Were I to switch accents to Received Pronunciation or General American, there would be many more exceptions to the pronunciation rules. Storing pronunciations in a dictionary only works for words stored in the dictionary.
I wonder, though, if it's a shortcoming of IPA that the generated pronunciations are not what I'd expect. Example, my hometown of Annapolis is here [1] by this tool: compared to how it's actually pronounced [2]
[1]https://speak-ipa.bearbin.net/speak.cgi?speak=%C9%99%CB%88n%... [2]https://youtu.be/1I71yL3SG80?t=11
As you can hear it's pretty far off, so much so I would be unable to rely on the computer generated version.
I put in a few chinese sentences, got the IPA, then pasted into your app and listened to the sentence in IPA. Although it wasn't very accurate, its one of the coolest things I learned this year. Thank you very much for sharing.
I think a really cool next step is to add the ability to type things in and get the IPA and pronunciation.
http://espeak.sourceforge.net/ can already do this, however Chinese support is currently flaky at best when using characters, because different pronunciations are not disambiguated based on context. Giving it Pinyin to work with is enough to fool me non-native speaker, though.
At least for Spanish, it can pronounce some words fairly well. I wrote a Spanish orthography-to-IPA converter a few years back. It's up on Heroku until folks crash it if you want to get some Spanish words transcribed to IPA.
http://spanish-demo.herokuapp.com/
I used it to generate a few random words. Some of the sounds were off - for example ɾ (the "r" in "estar"). But many words were pronounced clearly enough to be understood.
Text-to-IPA might be easy enough with dictionaries, the swapping is trivial, but IPA-to-speech seems like a harder problem.
https://speak-ipa.bearbin.net/speak.cgi?speak=%C9%ACan%CB%8C...
Saying "hacker news" in IPA using your tool: https://speak-ipa.bearbin.net/speak.cgi?speak=%27h%C3%A6k%C9...
Do you plan to let Wikipedia use this? It would be really useful on their site.