2015-03-31 5 views
1

Я работаю над своим приложением iOS, и мне нужно определить уровень звука в определенном диапазоне частот. Here is хороший учебник для определения уровня звука, но как это сделать в определенном диапазоне частот в SDK для iOS?Обнаружение уровня звука в определенном диапазоне частот в SDK iOS

+0

Вы нашли что-нибудь на этом ....? Я также работаю над этим приложением. Любая помощь будет оценена. –

ответ

2

Вы должны записывать звук с микрофона (AVAudioEngine хороший API для выполнения этого), вычислить ее преобразование Фурье (Accelerate структуры будет делать это с невероятной скоростью) и исследовать амплитуду частотного ковша, соответствующая вашу частоту , Если он большой, то у вас есть матч.

Возможно, более простая и эффективная техника будет Goertzal filter, которая хороша при обнаружении заданной частоты.

0

Не зная конкретного варианта использования, я могу представить, что такой же код, как и то, что используется в приложении для настройки музыкального инструмента, будет работать. Быстрый поиск найден this guitar tuning app, который использует быстрые преобразования Фурье. Обратите внимание, что FFT реализованы в структуре Accelerate, и в этом приложении они, как представляется, импортируются из другой библиотеки.

Смежные вопросы