I'd probably do the text comparison.
Although, having said that, as a LInguist, I wonder what value that
would have
as it would ONLY show that the two sound files were different, it would not,
for the sake of argument, show HOW the second one differed from the
first one
phonetically.
Richmond.
On 27/12/17 2:16 pm, Peter Reid via use-livecode wrote:
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
_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode