我正在使用 TarsosDSP 库在 wav 文件上应用低通滤波器。这是代码。
private void eq2(File file) throws FileNotFoundException {
new AndroidFFMPEGLocator(this);
InputStream inputStream = new FileInputStream(file);
TarsosDSPAudioFormat format = new TarsosDSPAudioFormat(16000,16,2,true,false);
AudioDispatcher adp = new AudioDispatcher(new UniversalAudioInputStream(inputStream,format),2048,0);
adp.addAudioProcessor(new LowPassFS(100,16000));
RandomAccessFile raf = null;
raf = new RandomAccessFile(Environment.getExternalStorageDirectory()+ "/cibiodLogs/audioFiltered1.wav", "rw");
adp.addAudioProcessor(new WriterProcessor(format,raf));
adp.run();
Thread audioThread = new Thread(adp, "Audio Thread");
audioThread.start();
}
它提供输出,但输出断断续续,甚至没有过滤。这里看看原始的wav文件和输出的wav文件。
我尝试了从 2 到 4096 的不同缓冲区大小,但每次输出都是断断续续的,或者音频没有被过滤。有人可以指出我这里可能出了什么问题。