2014-10-07 103 views
1

我正在爲C#使用NAudio庫。我有一個.wav文件中的浮點數組。我想通過FFT進行分析,這樣我就可以發現一首歌曲是否具有某些頻率。例如長笛等的頻率NAudio中是否有FFT,如果是的話,它會採取和輸出什麼?FFT數字音頻

回答

1

這是一個SO問題,它解釋瞭如何calculate FFT in NAudio

就個人而言,我一直沒n音訊最大的風扇FFT實現,我寧願使用下面的開源解決方案:

AForge.net。查看ComplexImage.cs的使用情況& FourierTransform.cs以供實施。

Math.NET的Iridium library(根據LGPL許可,因此您可以在商業產品中免費使用它)。

Chris Lomont's C# Fast Fourier Transform

MSDN也有一個great discussion and a sample FFT implementation

+0

太棒了,我會看看,我是DSP新手,想知道FFT會採用什麼,可以使用信號作爲浮點數組嗎?還可以輸出什麼(用於在可視圖上繪圖) ?有沒有內聯的方法? – 2014-10-07 22:19:01

+0

嘿羅布,很高興聽到!浮點數組絕對可以使用! (事實上​​,你會在網上遇到的很多例子都會使用浮點數組)。同樣對於你的返回值,取決於你使用的庫可能會有所不同(從特殊類等),但繪製它們根本不會是壞的。請讓我知道,如果你有任何問題! – 2014-10-07 22:24:05

+0

以下是C#中的一些示例FFT圖:http://www.codeproject.com/Questions/661422/Plotting-Fast-Fourier-Transform-in-Csharp和http://libzplay.sourceforge.net/FFT_GRAPH.html以及http://social.msdn.microsoft.com/Forums/vstudio/en-US/cbb28804-bb27-4f60-9f0f-7d6e79ea0f52/plotting-of-fft-graph-in-c?forum=csharpgeneral和http:// stackoverflow.com/questions/18141070/how-do-i-plot-the-spectrum-of-a-wav-file-using-fft 如果您有任何問題,請讓我知道! :0) – 2014-10-07 22:27:36