2011-08-27 116 views
0

我使用我的應用程序捕捉聲音。假設這個聲音是一個正弦1KHz聲音,並且存在背景聲音。如何識別聲音中存在1 KHz的聲音?iPhone - 識別波形/頻率

我的意思是,我可以想象如何在圖像中找到元素,例如,如果您在圖像上尋找黃色正方形,您只需指定所需的顏色,併爲其指定顏色一定的容差,並尋找一組具有該顏色並形成正方形的像素。但是,聲音呢?當你得到的波形是1/44.000的波形時,你如何識別波形和頻率?

我不想要代碼,因爲這篇文章太複雜了,但是如果你們可以指出我如何完成這個工作的正確方向,那麼可以使用免費源代碼來說明這些技術或數學背後的原因我很欣賞。謝謝

回答

2

您只需要對波形進行FFT(快速傅里葉變換)即可得到它所組成的頻率。這是信號處理中的一項經典任務(傅里葉變換是在時間和頻率空間之間切換的變換),因此您應該在該主題上找到大量資源。

也許看一下CoreAudio框架和示例代碼。 (另請參閱CoreAudio overviewAudio and Video topics在Apple的文檔中)

+0

謝謝。我會看看! – SpaceDog

+2

也看看Accelerate框架,它有許多硬件加速的FFT函數,比如'vDSP_fft_zrip' –

+0

謝謝!!!!!!!!! – SpaceDog