开发者

How to detect sound frequency / pitch on an iPhone? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
开发者_开发问答

Want to improve this question? Update the question so it focuses on one problem only by editing this post.

Closed 5 years ago.

Improve this question

I'm trying to find a way to detect sound frequency being recorded by iPhone's Microphone. I'd like to detect whether the sound frequency is going up or down.


you can try to use SCListener. It's a small open-source class and very easy to use

EDIT: The formatter does not like the _ in the name. Here is the link. http://github.com/stephencelis/sc_listener


To detect frequency you should check out the fast Fourier transform (FFT) algorithm.


Note that the SC_listener does not work on iPhones running iOS 3.0 or above, check in AVAudioRecorder and FFT. It somehow works in the simulator though....


For simple pitch detection, I think the FFT is good enough. Try look into Aurio Touch 2 and vDSP reference in accelerate framework.


I wrote some code with explanation for tracking pitch in C. It uses the FFT, which is not the optimal method, but you can see if this is good enough for your application. Ideally, you'd replace the FFT with something hardware accelerated.

http://blog.bjornroche.com/2012/07/frequency-detection-using-fft-aka-pitch.html

https://github.com/bejayoharen/guitartuner


Beethoven looks like a good option: https://github.com/vadymmarkov/Beethoven

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜