【发布时间】:2014-06-24 11:45:36
【问题描述】:
我一直在寻找快速和完整的 DSP java 库来与 android 音频操作一起使用。 我遇到了 FFT 高度计算的问题。然后我找到了 JTransforms。 我无法在任何地方找到有关如何使用它的文档。具体来说,我对输入信号感到困惑。在我的情况下,我有一个 wav 文件,转换为字节数组,然后转换为双数组,使用这个:
public static double[] read(byte[]file) {
byte[] data = new byte[file.length];
int N = data.length;
double[] d = new double[N/2];
for (int i = 0; i < N/2; i++) {
d[i] = ((short) (((data[2*i+1] & 0xFF) << 8) + (data[2*i] & 0xFF))) / ((double) MAX_16_BIT);
}
return d;
}
但是当我查看this documentation 时,我不明白eache 方法的输入是什么。
复数按顺序存储为两个双精度值
我需要转换成 Complex 才能使用这个库吗?
【问题讨论】:
-
FFT audio input的可能重复
-
这是一个特定的库。我在问如何使用这个 JTransforms 库。另一个问题是关于转换为一般的 FFt 输入。