如何在Java上检测声音频率
我需要读取音频流并确定生成的超声波 如何从流式音频中找到特定的声音序列 起初我认为是DTMF的方向,但后来拒绝了,因为它是人耳听到的如何在Java上检测声音频率,java,audio,signal-processing,dtmf,Java,Audio,Signal Processing,Dtmf,我需要读取音频流并确定生成的超声波 如何从流式音频中找到特定的声音序列 起初我认为是DTMF的方向,但后来拒绝了,因为它是人耳听到的 如果你还有其他想法,我很乐意听听。最简单的方法是使用傅里叶变换,将周期信号转换成一张漂亮的频率图。把你的输入信号分成几个短的部分,然后应用,看看你在频谱的正确部分是否有足够高的电平。当然,这只适用于足够长的信号 但是用普通PC音频输入检测超声波可能很棘手;这是标准的离散化传入的声音广告44100赫兹,所以你只会有非常扭曲的迹象,近超声波。较新的卡具有更高的离散化频
如果你还有其他想法,我很乐意听听。最简单的方法是使用傅里叶变换,将周期信号转换成一张漂亮的频率图。把你的输入信号分成几个短的部分,然后应用,看看你在频谱的正确部分是否有足够高的电平。当然,这只适用于足够长的信号
但是用普通PC音频输入检测超声波可能很棘手;这是标准的离散化传入的声音广告44100赫兹,所以你只会有非常扭曲的迹象,近超声波。较新的卡具有更高的离散化频率,如192 kHz。另一种方法是什么?我需要在音频中输入任何东西,然后检测它并做些什么。