wiem, że pierwszą rzeczą, którą są thinging jest „szukać wewnątrz dokumentacji”, problemem jest to, że dokumentacja nie jest jasne, o tym.Korzystanie z getSpectrum() w libgdx biblioteki
używam biblioteki uzyskać FFT i zacząłem z tego krótkiego przewodnika: http://www.digiphd.com/android-java-reconstruction-fast-fourier-transform-real-signal-libgdx-fft/
Problemem jest to, że używać:
fft.forward(array);
fft_cpx=fft.getSpectrum();
tmpi = fft.getImaginaryPart();
tmpr = fft.getRealPart();
Zarówno "fft_cpx", "tmpi", „tmpr "są wektorami pływającymi. Podczas gdy "tmpi" i "tmpr" są używane do obliczania wielkości, "fft_cpx" nie jest ponownie używane.
Myślałem, że getSpectrum() była unia getReal i getImmaginary ale wartości są różne. Może getSpectrum to złożone wartości, ale jaka jest ich reprezentacja?
Próbuję bez tego kodu linku fft_cpx=fft.getSpectrum();
i wydaje się działać dobrze, ale chciałbym wiedzieć, czy to konieczne i jaka jest różnica między getSpectrum() i getReal() lub getImmaginary().
Oto ona dokumentacje: http://libgdx-android.com/docs/api/com/badlogic/gdx/audio/analysis/FFT.html
public float [] getSpectrum()
Powroty: widmo ostatniego FourierTransform.forward() połączenia.
public float [] getRealPart()
Powroty: część rzeczywista ostatniej FourierTransform.forward() połączenia.
public float [] getImaginaryPart()
Powroty: część urojona ostatniego FourierTransform.forward() rozmowy.
Thank głównej!