我要尋找或麥克風的音頻數據線進行實時FFT(快速傅立葉變換)的例子在C#中。我的目標是實時確定音頻數據中是否存在特定音符。任何例子讚賞。
回答
AForge.NET是一個具有快速傅里葉變換支持的開源庫。
ExocortexDSP也是另一種選擇。
ExocortexDSP例子是這個樣子:
Exocortex.DSP.ComplexF[] complexData = new Exocortex.DSP.ComplexF[512];
for (int i = 0; i < 512; ++i)
{
// Fill the complex data
complexData[i].Re = 1; // Add your real part here
complexData[i].Im = 2; // Add your imaginary part here
}
// FFT the time domain data to get frequency domain data
Exocortex.DSP.Fourier.FFT(complexData, Exocortex.DSP.FourierDirection.Forward);
float[] mag_dat_buffer = new float[complexData.Length];
// Loop through FFT'ed data and do something with it
for (int i = 0; i < complexData.Length; ++i)
{
// Calculate magnitude or do something with the new complex data
mag_data_buffer[i] = ImaginaryNumberMagnitude(complexData[i].Im, complexData[i].Re);
}
感謝您的圖書館鏈接。我後面的例子:) – Phil 2010-10-06 15:24:39
更新了一個ExocortexDSP的例子。 AForge看起來很相似。 – SwDevMan81 2010-10-06 15:49:03
謝謝你,正如在原始問題中,我是從麥克風或線路拉數據的例子之後。我需要第二個庫嗎?謝謝。 – Phil 2010-10-06 16:40:38
- 1. 快速傅立葉變換
- 2. WinForms中的快速傅立葉變換
- 3. Android中的快速傅立葉變換
- 4. 計算快速傅立葉變換時..?
- 5. 1D快速傅立葉變換
- 6. 快速傅立葉變換開放代碼在c + +中
- 7. 傅立葉變換
- 8. NFFT的傅立葉係數 - 非均勻快速傅里葉變換?
- 9. fft(快速傅立葉變換)來加速python中的opencv?
- 10. EXCEL快速傅里葉變換幫助
- 11. fft(快速傅立葉變換)的工作原理
- 12. 數據間隔在快速傅立葉變換中的影響
- 13. 一維數組的Numpy FFT(快速傅立葉變換)
- 14. Labview中頻率分析的快速傅立葉變換
- 15. MATLAB中的逆快速傅立葉變換
- 16. 計算快速傅立葉變換中出現的頻率
- 17. 從逆離散快速傅立葉變換到頻譜圖
- 18. 使用快速傅立葉變換分析音頻
- 19. 快速傅立葉變換 - 舍入錯誤
- 20. 「樹」用於快速傅立葉變換多項式評估?
- 21. 在R中執行2D快速傅立葉變換
- 22. 逆傅立葉變換FFT3W
- 23. 傅立葉變換幫助
- 24. 離散傅立葉變換
- 25. Sympy傅立葉變換
- 26. 圖像處理的快速傅里葉變換變換
- 27. 如何在C++中執行2D快速傅里葉變換
- 28. 來自離散傅里葉變換的傅立葉級數
- 29. Matlab中的離散傅立葉變換
- 30. 傅立葉變換的實驗數據
重複:http://stackoverflow.com/questions/170394/fast-fourier-transform-in-c – 2010-10-06 14:48:02
其實,這個問題並沒有確切地覆蓋與確定音頻數據中存在的音符是否涉及FFT結果的顯着後處理,甚至是使用完全不同的音符音高估計方法(自相關,小波等)相同的基礎。註釋音高!= FFT峯頻率bin – hotpaw2 2010-10-07 18:35:32