我正在开发一个语音识别器项目,因为它希望从wav文件中找到存在静音或检测到单词的存在。如果找到一个单词,则将该单词从头到尾复制到一个新的wav文件所以原来的wav文件有10个单词然后输出是10个文件..问题是检测到沉默或单词 想要了解如何在java中实现这一点.. 请建议..
答案 0 :(得分:6)
嗯,wav只是PCM数据。我先读这个: http://en.wikipedia.org/wiki/Pulse-code_modulation
我之前做过这个... 你开始从PCM数据中提取样本。然后检查每个以查看它是否大于您设置的阈值。例如假设16位样本...示例从0到15000的任何值都是静音,大于15001的任何值都是声音。只记得处理无符号的整数或者你在PCM中会有负数。此外,当你正在玩阈值时,请记住log vs linear。