Hi @miaobin
this is very interesting work 👍 and I've been planning to integrate it into an audio library for SEPIA I'm working on as a replacement for Meyda MFCC to gain some WASM speed 😀 ... but the results seem a bit confusing 😅
Here is a screenshot comparing Web-MFCC (1, 3) to Meyda MFCC (2):

In graph 1 and 2 I've used the same chunked buffer to create the MFCC step-by-step. 1 is Web-MFCC and 2 is Meyda. In graph 3 I've used Web-MFCC on the same buffer but as one big step and not in chunks. In graph 3 I've also removed the first and every 13th entry of the result array, which leads me to my first question:
-
What exactly is the result of getAudioPCMData as seen in your example? Looking at my results it almost seems like the first entry of every block (1 block = number of MFCCCoefficients = 13) is the sum of the signal instead of a coefficient.
-
Did you check the results against any reference? Comparing Meyda (2) and the cleaned-up Web-MFCC (3) the Web-MFCC result looks scrambled somehow. Now the parameters might not be exactly the same (I've tried to get as close as possible) but I'm pretty sure there is something else going on.
Btw I've used a recording of "yes ... no ... yes" for my graphs.
Any comment or help to get the results fixed would be appreciated 🙂
Ty,
Florian
Hi @miaobin
this is very interesting work 👍 and I've been planning to integrate it into an audio library for SEPIA I'm working on as a replacement for Meyda MFCC to gain some WASM speed 😀 ... but the results seem a bit confusing 😅
Here is a screenshot comparing Web-MFCC (1, 3) to Meyda MFCC (2):
In graph 1 and 2 I've used the same chunked buffer to create the MFCC step-by-step. 1 is Web-MFCC and 2 is Meyda. In graph 3 I've used Web-MFCC on the same buffer but as one big step and not in chunks. In graph 3 I've also removed the first and every 13th entry of the result array, which leads me to my first question:
What exactly is the result of
getAudioPCMDataas seen in your example? Looking at my results it almost seems like the first entry of every block (1 block = number of MFCCCoefficients = 13) is the sum of the signal instead of a coefficient.Did you check the results against any reference? Comparing Meyda (2) and the cleaned-up Web-MFCC (3) the Web-MFCC result looks scrambled somehow. Now the parameters might not be exactly the same (I've tried to get as close as possible) but I'm pretty sure there is something else going on.
Btw I've used a recording of "yes ... no ... yes" for my graphs.
Any comment or help to get the results fixed would be appreciated 🙂
Ty,
Florian