Есть ли способ отменить предварительную обработку, такую как эхоподавление и подавление шума в аудиорекордере в iOS?
Я использую AVAudioRecorder
с meteringEnabled=true
, и я получаю средний уровень децибел, используяaveragePowerForChannel
( документы ).
Я пытаюсь измерить окружающий шум возле телефона, и iPhone 8, похоже, усиливает низкие шумы или подавляет их, если я начинаю говорить. Например, если фоновая музыка имеет абсолютный уровень децибела 30 - iOS, кажется, усиливает его. Когда я начинаю говорить даже тихо - уровень дБ значительно падает.
Но поскольку я хочу измерять окружающий шум - мне не нужна эта предварительная обработка.
Я пытался setInputGain
( docs ), но isInputGainSettable
всегда ложно - поэтому я не могу использовать этот подход.
Есть ли способ отменить любое усиление или предварительную обработку, такую как эхоподавление и шумподавление