我正在尝试捕获来自麦克风的音频,我想检查声音的频率。如果我得到的频率更高,那么说:1316.8,那么我将开始录制1分钟。
我正在努力将字节数据转换为频率。
我已经使用Javax.sound
来捕获来自麦克风的音频,并且我也完成了录音部分。
AudioFormat format = new AudioFormat(44100, 16, 2, true, true);
DataLine.Info targetInfo = new DataLine.Info(TargetDataLine.class, format);
DataLine.Info sourceInfo = new DataLine.Info(SourceDataLine.class, format);
try {
TargetDataLine targetLine = (TargetDataLine) AudioSystem.getLine(targetInfo);
targetLine.open(format);
targetLine.start();
SourceDataLine sourceLine = (SourceDataLine) AudioSystem.getLine(sourceInfo);
sourceLine.open(format);
sourceLine.start();
int numBytesRead;
byte[] targetData = new byte[targetLine.getBufferSize() / 5];
我希望输出类似于麦克风发出的每种声音的频率。