मैं आईफोन के माइक्रोफोन द्वारा रिकॉर्ड की जाने वाली ध्वनि आवृत्ति का पता लगाने का एक तरीका खोजने की कोशिश कर रहा हूं। मैं यह जानना चाहता हूं कि ध्वनि आवृत्ति ऊपर या नीचे जा रही है या नहीं।आईफोन पर ध्वनि आवृत्ति/पिच का पता लगाने के लिए कैसे?
उत्तर
आप SCListener का उपयोग करने का प्रयास कर सकते हैं। यह एक छोटी ओपन-सोर्स क्लास है और
संपादित करने के लिए बहुत आसान है: फ़ॉर्मेटर नाम में _ पसंद नहीं करता है। लिंक यहां दिया गया है। http://github.com/stephencelis/sc_listener
आवृत्ति का पता लगाने के लिए आपको fast Fourier transform (FFT) एल्गोरिदम देखें।
ध्यान दें कि SC_listener आईओएस 3.0 या उसके बाद वाले आईफोन पर काम नहीं करता है, AVAudioRecorder और FFT में चेक करें। यह किसी भी तरह सिम्युलेटर में काम करता है ....
सरल पिच पहचान के लिए, मुझे लगता है कि एफएफटी पर्याप्त है। ढांचे को तेज करने में Aurio Touch 2 और vDSP संदर्भ में देखें।
मैंने सी में पिच ट्रैकिंग के लिए स्पष्टीकरण के साथ कुछ कोड लिखा है। यह एफएफटी का उपयोग करता है, जो इष्टतम विधि नहीं है, लेकिन आप देख सकते हैं कि यह आपके आवेदन के लिए पर्याप्त है या नहीं। आदर्श रूप से, आप कुछ हार्डवेयर त्वरित के साथ एफएफटी को प्रतिस्थापित करेंगे।
http://blog.bjornroche.com/2012/07/frequency-detection-using-fft-aka-pitch.html
बीथोवेन एक अच्छा विकल्प की तरह दिखता है: https://github.com/vadymmarkov/Beethoven
लगता SC_Listener हटा दिया गया है iOS के लिए, 3.0+, आप इस ट्यूटोरियल है, जो बहुत अच्छी तरह से काम करता है इस्तेमाल करने की कोशिश कर सकते हैं: //mobileorchard.com/tutorial-detecting-when-a-user-blows-into-the-mic/ – Raptor