I am working on a speech recognizer project as a part of it want from a wav file want to find the presence of silence or detect the presence of word .and if a word is found then copy that word from start to end into a new wav file so it original wav file has 10 words then output is 10 file..problem is with detecting the silence or word want suggestion on how to implement this in java.. please suggest..
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
Well, wav is just PCM data. I'd start by reading this: http://en.wikipedia.org/wiki/Pulse-code_modulation
I've done this before... You start be pulling samples out of the PCM data. You then check each to see if it is greater than a threshold values that you've set. For instance assuming 16 bit samples...Example any value from zero to 15000 is silence, anything greater than 15001 is sound. Just remember to deal with unsigned ints or you'll have negative in the PCM. Also, remember log vs linear when you're playing with the threshold.