Как обнаружить хлопки в iOS?

Я работаю над созданием приложения, которое выполняет действие, когда распознается звук хлопка. Я попытался просто измерить среднюю и пиковую мощность с помощью AVAudioRecorder, и это работает нормально, но если есть другие звуки, то он сообщает о большом количестве ложных срабатываний. Я считаю, что мне нужен какой-то звуковой отпечаток пальца, чтобы это работало, пока воспроизводится другой звук. Теперь я знаю, что об этом уже много раз спрашивали на SO, но в большинстве ответов говорится что-то вроде «Использовать БПФ», а затем человек говорит: «О, хорошо!» но четкого объяснения не дается, и я до сих пор понятия не имею, как правильно идентифицировать звуки с помощью БПФ.

Может ли кто-нибудь четко объяснить, процитировать другой учебник или опубликовать ссылку на библиотеку, которая может идентифицировать звуки с помощью звуковых отпечатков пальцев?

Спасибо!


person Shredder2794    schedule 01.07.2014    source источник
comment
Используйте БПФ. Хлопок должен иметь довольно характерный частотный спектр, когда вы его анализируете. Доступны некоторые условно-бесплатные инструменты, которые позволят вам захватывать звук и отображать спектр, но я не помню, что это такое, и они у меня есть в другой коробке.   -  person Hot Licks    schedule 02.07.2014
comment
возможный дубликат обнаружение хлопка в IOS   -  person Paul R    schedule 02.07.2014
comment
Я немного поработал над обнаружением хлопков. См. документ по адресу ee.columbia.edu/~dpwe/pubs/ icassp05-claps.pdf и слайды выступления на ee.columbia.edu/~dpwe/talks/claps-2005-03.pdf . У меня есть код Matlab, но это беспорядок.   -  person dpwe    schedule 04.07.2014