0

我录制了一个音频样本,我想对其应用 FFT,,,

我完成了在 android 中使用 FFT 所需的所有步骤,例如获取 j-transform 库和其他所需的一切......

在代码中,我首先定义了 fft :

   DoubleFFT_1D fft = new DoubleFFT_1D(1024);

在代码中,在读取音频文件(存储为 PCM)之后......我使用以下指令对其应用了 FFT:

    fft.complexForward(audio_file_in_double_format);

这是我的问题:

首先fft定义的参数中使用的数字(1024),它是根据什么来的呢?这是什么意思?

这是否意味着 fft 将仅应用于 1024 个样本?!

fft 函数的输出是什么?我知道它会给出复数,所以它会给输入的结果加倍吗?

我需要帮助理解这个 FFT 函数是如何工作的?!

该代码对我来说运行良好,但我需要理解,因为我将 while 音频文件输入到 FFT 函数中,该函数比 1024 个样本大很多。那么它是否将 FFT 应用于其第一个 1024 并忽略其余部分?或者是什么??

4

0 回答 0