質問

私はFFTの使用に関する質問があります。 ミニムを有する機能getBand(int i)を使用して私は、特定の周波数の振幅を抽出することができそれのかなりのマップを行います。素晴らしい作品ます。

しかし、これは、好奇心の質問の詳細です。 (振幅が同一でなければならないので)私は二度同じ周波数を使用して同じ曲を演奏する2から抽出された値を見て、私は非常に異なる値を取得すると? - なぜこれがある

0.0,0.0,0.0,0.0,0.0,0.08706585,0.23708777,0.83046436,0.74603105,0.30447206
0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.08706585,0.4790409,0.9608221,0.83046436,0.74603105
役に立ちましたか?

解決

あなたは必ず入力は、どちらの場合もまったく同じですされていますか?あなただけの曲のランダムなセグメントを取っている場合は、FFTの出力はの非常にの曲の異なる出発点で異なる。

他のヒント

mp3復号がフレーク状であることができ及び/又はリードインFFTルーチンのバッファリングは、フレーク状、(一連の先行の無音の長さが異なる)とすることができます。 この場合、それは鉛のように見えますが、2番目の出力で約2段階大きいます。

FFTが実行される時間間隔が長く、FFTウィンドウサイズを超える場合、

次に、リードインの差が非常に説明することができた、シリーズの全く異なる部分に土地に、FFT窓を引き起こす可能性があります異なる値の後出力の

あなたは「時間分解能」を増やすことができれば、

の状況がより明確にする必要があります(高速フーリエ変換の量が一定時間毎に実行)-or FFT測定がまばらに行わアレントので、FFTウィンドウサイズを大きくします。私たちはステップのうちに行わスキャン間のパターンに一致することを期待することができる前にIdealy彼らが重なる必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top