Я создаю приложение, которое включает в себя измеритель уровня звука (пользователь носит контактный или горловой микрофон). Я использую (устаревшее) пользовательский класс SCListener который использует AudioQueue
и извлекает значение kAudioQueueProperty_CurrentLevelMeter
, которое представляет собой значение в диапазоне от 0 до 1.Настройка усиления/чувствительности аудиофона iPhone
Моя проблема заключается в том, что при нормальном уровне использования, значение kAudioQueueProperty_CurrentLevelMeter
уже достиг 1,0 - то, что я надеюсь сделать, - dampen или уменьшить чувствительность входного микрофона, чтобы крик или действительно громкий крик регистрировались как 1.0 вместо обычного разговора.
Через мой поиск Я видел некоторое обсуждение аудио единиц, но не нашел никакой документации или примеров, которые я смог понять.
Есть ли способ уменьшить чувствительность или усиление или линию ввода в приложении? Любая помощь очень ценится!
Это позволило бы мне измерить больший объем ввода, чем max, используя kAudioQueueProperty_CurrentLevelMeter или AVAudioRecorder peakValue, или это будет эффективно одинаково? (то есть будет ли уровень ввода уже превышен, прежде чем анализировать образцы PCM)? – chrisgilpin