Я пытаюсь создать приложение IOS, которое считает claps. Я смотрю видео WWDC на CoreAudio, и тема кажется такой огромной, что я не совсем уверен, где искать.Обнаружение хлопа в IOS
Я нашел похожие проблемы здесь, в stackoverflow. Вот один в C# для обнаружения хлопнула дверь: Given an audio stream, find when a door slams (sound pressure level calculation?)
Кажется, что мне нужно сделать, это:
- Разделите образцы на секции
- Вычислить энергию каждой секции
- Возьмите отношение энергий между предыдущим окном и текущим окном.
- Если отношение превышает некоторый порог, определите, что произошел внезапный громкий шум.
Я не уверен, как это сделать в Objective-C. Я был в состоянии понять, как образец аудио с SCListener Вот моя попытка:
- (void)levelTimerCallback:(NSTimer *)timer {
[recorder updateMeters];
const double ALPHA = 0.05;
double peakPowerForChannel = pow(10, (0.05 * [recorder peakPowerForChannel:0]));
lowPassResults = ALPHA * peakPowerForChannel + (1.0 - ALPHA) * lowPassResults;
if ([recorder peakPowerForChannel:0] == 0)
totalClapsLabel.text = [NSString stringWithFormat:@"%d", total++];
SCListener *listener = [SCListener sharedListener];
if (![listener isListening])
return;
AudioQueueLevelMeterState *levels = [listener levels];
Float32 peak = levels[0].mPeakPower;
Float32 average = levels[0].mAveragePower;
lowPassResultsLabel.text = [NSString stringWithFormat:@"%f", lowPassResults];
peakInputLabel.text = [NSString stringWithFormat:@"%f", peak];
averageInputLabel.text = [NSString stringWithFormat:@"%f", average];
}
Хотя я вижу, предложенный алгоритм, я неясно, как реализовать это в Objective-C.
Алгоритм чист, его может потребоваться только настройка. В чем проблема с его внедрением в Objective-C? Разве это не Цель-C - надмножество простого C? Если вы можете сделать это на простом C, вы сможете сделать это в Objective-C. –
Попробуйте это [ Учебник: обнаружение, когда пользователь попадает в микрофон] (http://mobileorchard.com/tutorial-detecting-when-a-user-blows-into-the-mic/) для некоторых возможных подходов –
sinnyTOD , ваша ссылка на mobileOrchard.com показалась мне 404. –