Voice Comparison in LiveCode?

Dave Kilroy dave at applicationinsight.com
Thu Dec 28 14:17:21 EST 2017


Hi Peter

Yep what you are trying to do is indeed not easy if you want it to work on your friend’s Amazon tablet

Are you not tempted to use ‘standard’ voice-to-text on Android or iOS as per your method b and then buying your friend a non-crippled droid tablet?

If the answer is “no i want to stretch the envelope” then I like Phil’s stackoverflow link the best :)
https://stackoverflow.com/questions/17010516/how-to-detect-how-similar-a-speech-recording-is-to-another-speech-recording <https://stackoverflow.com/questions/17010516/how-to-detect-how-similar-a-speech-recording-is-to-another-speech-recording>

Kind regards

Dave



> i'm developing an app for cheap Android tablets (e.g. Amazon Fire 7in) that allows a user to practice speaking a set of words.  The app plays a sample of a word and the user then tries to say the same word.  So far the app can play sample words and capture the user's attempts for the same words.  The sample words and user attempts are uncompressed WAV files. 
> 
> I'm trying to find the code to do the comparison of 2 WAV files.  Ideally, the code will be in the following formats (best first): 
> 
> 1. LiveCode 
> 2. Pseudocode 
> 3. Other code (Python, Java, C++ etc.) 
> 4. Academic papers 
> 
> I'm considering 2 general methods: 
> 
> a. Compare 2 voice clips directly 
> b. Convert 2 voice clips to text (using voice-to-text) and then compare the words in text format 
> 
> Note that Ali Lloyd from the LiveCode team has developed various things to help.  However I've hit problems as follows: 
> 
> a. Ali has wrapped a standard Android sound library that compares 2 WAV files and gives a percentage match. However the comparison is either far too forgiving or far too strict, i.e. highly unreliable. 
> 
> b. Ali has wrapped a standard Android voice-to-text library which works well with the devices he's tried it on.  However, the Amazon tablets do not support this Android library! 
> 
> Given the two developments from Ali both relied on preformed blackbox code (Android Java libraries), i may have to implement a comparison algorithm from scratch. A solution that's completely in LiveCode would have several benefits: 
> 
> i. it may work! 
> ii. it may work cross-platform 
> iii. it may be understandable! 
> 
> General reading around this subject produces recommendations such as using FFTs (Fast Fourier Transforms), MFCCs (Mel Frequency Cepstral Coefficient), etc. but I can't find anything that gives an end-to-end method, from sound in to comparative score out! 
> 
> Any help with this would be gratefully received! 
> 
> Peter 
> -- 
> Peter Reid 
> Loughborough, UK 



More information about the Use-livecode mailing list