Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to make a simple EQ AudioUnit (bass, mid, treble) with iOS?

does anyone know how to make a simple EQ audio unit (3 bands - low, mid, hi) with iOS ? I know how to add an iPod EQ Audio Unit to my AU Graph. But it only give you access to presets and I need proper control of the EQ.

I've looked around for some tutorials or explanations but no luck.

Thanks.

André

like image 267
André Avatar asked Oct 27 '10 00:10

André


People also ask

Should you use EQ on iPhone?

An equalizer (EQ) can be a great tool to make any music sound better, and gives you the ability to customize the type of sounds you want. If you like more bass, more treble, or more of a vocal presence, the EQ on the iPhone can help you out.

Is there a free equalizer app for iPhone?

Equalizer Fx is ideal for all sorts of situations and can serve as your personal car audio equalizer. In addition to that, with a built-in bass tuner, 7 band equalizer settings, music player with graphic visualizers, and thousands of positive reviews, this is the best equalizer for iPhone, and it's the clear winner.


5 Answers

The iPhone doesn't exactly support custom AudioUnits. Or, more precisely, it doesn't allow you to register an AudioUnit's identifier so you could load it in an AUGraph. You can, however, register a render callback, get raw PCM data, and process it accordingly. This is how I've implemented effect processing in the iPhone.

like image 124
Nik Reiman Avatar answered Oct 05 '22 19:10

Nik Reiman


I would highly recommend you to use my NVDSP library, it allows easy audio DSP'ing, including the filters required to make an equalizer in iOS: https://github.com/bartolsthoorn/NVDSP

like image 42
sougonde Avatar answered Oct 05 '22 17:10

sougonde


I've written two Blog-Entries about this issue and how to get equalization on iOS working. It uses the libsox library (cross compiled).

First post explains how you build libsox: http://uberblo.gs/2011/04/iosiphoneos-equalizer-with-libsox-making-it-a-framework

The second explains how to use it: http://uberblo.gs/2011/04/iosiphoneos-equalizer-with-libsox-doing-effects

please up the answer if it helped you! thanks!

like image 27
Franz Bettag Avatar answered Oct 05 '22 19:10

Franz Bettag


you can implement using same classes as used in speak here sample code ,only to generate properties like peak powervalue and average powervalue you need to do calculation in callback function and it works.

like image 27
ayush chamoli Avatar answered Oct 05 '22 19:10

ayush chamoli


This ancient Motorola AN2110 App Note explains how to write your own fully controllable 10-band equalizer (and 10 bands of real-time audio IIR filters will consume well under 10% of an iPod Touch's ARM CPU). Not sure about how to integrate this with an AU Graph, but this type of EQ can easily be integrated into PCM Audio Queue buffer callbacks.

like image 24
hotpaw2 Avatar answered Oct 05 '22 19:10

hotpaw2