Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is there a way to turn off the automatic low-frequency filtering of the audio input on iOS 6.0?

I am working on an app that analyzes incoming audio from the built in microphone on iPhone/iPad using the iOS 6.0 SDK.

I have been struggling some time with very low levels of the lower frequencies (i.e. below 200 Hz) and I have (on the web) found others having the same problems without any answers to the problem.

Various companies working with audio tools for iOS states that there was (previous to iOS 6.0) a built in low-frequency rolloff filter that was causing these low signals on the lower frequencies BUT those sources also states that starting with iOS 6.0, it should be possible to turn off this automatic low-frequency filtering of the input audio signals.

I have gone through the audio unit header files, the audio documentation in Xcode as well as audio-related sample code without success. I have played with the different parameters and properties of the AudioUnit (which mentions low-pass filters and such) without solving the problem.

Does anybody know how to turn off the automatic low-frequency rolloff filter for RemoteIO input in iOS 6.0?

like image 271
Leif Avatar asked Nov 12 '12 18:11

Leif


People also ask

What type of filter do we use to remove low frequencies?

A low-pass filter is a filter that passes signals with a frequency lower than a selected cutoff frequency and attenuates signals with frequencies higher than the cutoff frequency.


1 Answers

Under iOS 6.0 there is the possibility to set the current AVAudioSession to AVAudioSessionModeMeasurement like this:

[[AVAudioSession sharedInstance] setMode: AVAudioSessionModeMeasurement error:NULL];

This removes the low frequency filtering.

Link:

http://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVAudioSession_ClassReference/Reference/Reference.html

I hope this helps.

like image 79
Martin Jun Avatar answered Sep 20 '22 12:09

Martin Jun