How can I compare the way that word is pronounced with a sample? For example, most of dictionaries have sample word pronunciation recorded. The goal is to provide feedback to the user so that he or she can improve pronunciation.

I wonder if there are API available for such task or existing programs that are able to do it.

I found similar question here How do I compare 2 audio files, returning a percentage of difference , but I am providing a definition what actual difference is.

Regards, Eugene

  • 2
    $\begingroup$ Is your question asking for research references or code? $\endgroup$
    – user13107
    Aug 2 '13 at 2:17

That was the same topic of my Graduation Project, I am not yet sure of the best way to do it as this matter is still a research matter, but what my team and I did was as follow:

1- Provide a database representing the features of the right pronunciation of each word. This database contains for each word around 10 different features for 10 different people reading this word.

2- Get the features of the input word ie. a .wav file representing the word

3- compare the features of the input word with the 10 features representing the right pronunciation of the word

To get the features, you will need to get the MFCC file a .wav file containing the word pronounced The MFCC is a matrix of numbers, so to compare 2 MFCCs, you will need to use dynamic programming algorithm, in our case we've use Dynamic Time Wrapping algorithm. You might also need to make a filtering on the input words to filter them from noise. You might also need to check for the following programs: Praat >> to make a filtering if needed, and also can be used to make MFCC file SPPAS >> to get the feature of the .wav file (MFCC) Matlab >> to compare 2 MFCC files

Hope this can help


You have stated a problem roughly similar to speaker-independent isolated speech recognition into a dictionary of one word, where instead of searching for the closest word in the dictionary, you just want the multi-dimensional distance vector and/or match statistics. This is a non-trivial technology involving many thousands of research papers and books. You might want to try a basic textbook on computer speech recognition to get started.

There does seem to exist commercial software for automated accent analysis and improvement, but I am unfamiliar with them or whether any offer a public API.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.