Chris
Chris

Reputation: 113

Is it possible to control the iOS system equalizer (so that I can affect audio playing from other apps)

I've had some trouble sorting through all of the audio-related documentation for iOS. I see that I can control sound EQ by using Audio Units, but I am unclear on if this is only used for audio that I play from my own app.

I would like to build a screen that changes EQ for sound playing from other apps -- essentially a replacement for the system EQ in iOS audio settings. Is this possible? How would I accomplish this?

Upvotes: 11

Views: 2227

Answers (1)

Michael Hulet
Michael Hulet

Reputation: 3494

Modifying 3rd party apps and their content is blocked by the sandbox in iOS. In fact, processes you create have no knowledge of other unrelated processes the device is running. Because of this, you can't do things like change data stored by other apps or modify audio streams being produced by other apps. In fact, the EQ settings in Settings > Music > EQ abide by this, too. They don't modify any system-level sounds, but instead just modify the music being produced by the iOS Music app. The closest you could potentially get to achieving functionality you're looking for would be to create an Audio Unit Extenstion (available in iOS 9 and later), which allows you to create/modify audio streams in apps that support them, which are music apps like GarageBand. If you're only looking to support other apps that you/your organization have made, you could create an iOS App Group and apply EQs based on values you store in NSUserDefaults

Upvotes: 3

Related Questions