我在 Android 上使用 Superpowered 库。我正在使用SuperpoweredFrequencyDomain
该类进行一些 fft 处理,但我遇到了一个奇怪的问题。首先,我创建一个SuperpoweredFrequencyDomain
11fftLogSize
的对象。在那之后,如果我创建更多SuperpoweredFrequencyDomain
具有相同对象的对象,fftLogSize
那么一切正常。但是,如果我创建一个不同的,fftLogSize
那么它似乎无法正常工作(即使直接转换为频率然后直接回到时域也无法正常工作)。
例如,如果我这样做:
SuperpoweredFrequencyDomain fft1 = new SuperpoweredFrequencyDomain(11,4);
SuperpoweredFrequencyDomain fft2 = new SuperpoweredFrequencyDomain(11,4);
SuperpoweredFrequencyDomain fft3 = new SuperpoweredFrequencyDomain(13,4);
然后fft1
工作fft2
正常。 fft3
不起作用 - 在转换为频率并返回时间后,信号与原始信号不相似(有时您可以在那里听到原始信号的乱码版本,有时它只是噪音)。
如果我一次只有一个对象,情况也是如此:
SuperpoweredFrequencyDomain fft1 = new SuperpoweredFrequencyDomain(11,4);
delete fft1;
SuperpoweredFrequencyDomain fft2 = new SuperpoweredFrequencyDomain(11,4);
delete fft2;
SuperpoweredFrequencyDomain fft3 = new SuperpoweredFrequencyDomain(13,4);
此时fft3
将无法正常工作。我也尝试过fft3->reset()
,但这也没有让它工作。
无论我在转换中使用极坐标模式还是复杂模式,我都会遇到同样的问题。
我做错了什么还是这是图书馆的限制/错误?我在文档中看不到任何关于它的内容。