http://forum7.hkgolden.com/view.aspx?message=2957805&page=4
Audio Unit set up steps:
Set properties:
1.Find your Audio Components
2.Set your component properties(Audio Format,Channels...etc)
When finished, deallocate the audio unit.Connection:
1.Directly connect to other Audio Units or to Callback functions
2.Write your OWN Callback Functions to fill audio buffers in chunk or sample-by-sample
Initialization:
1.Initialize and Play
Audio Unit Setup
Some substantial code is required to create audio units and set up the audio processing graph. These are the steps that MixerHostAudio uses for initialization:
Some substantial code is required to create audio units and set up the audio processing graph. These are the steps that MixerHostAudio uses for initialization:
-
Set up an active audio session.
-
Obtain files,set up their formats,and read into memory.
-
Create an audio processing graph.
-
Create and initialize Multi-channel Mixer and RemoteI/O audio
units.
-
Add the audio units with the nodes to the graph and connect them.
-
Start processing audio with the graph.
constructing an audio processing graph entails three tasks:
- Adding nodes to a graph
- Directly configuring the audio units represented by the nodes
- Interconnecting the nodes
No matter which design pattern you choose, the steps for constructing an audio unit hosting app are basically the same:
- Configure your audio session.
- Specify audio units.
- Create an audio processing graph, then obtain the audio units.
- Configure the audio units.
- Connect the audio unit nodes.
- Provide a user interface.
- Initialize and then start the audio processing graph.
The correct way to derive ASBD field values given three factors:
- Whether the stream is for I/O (
SetCanonical
) or for audio processing (SetAUCanonical
) - How many channels you want the stream format to represent
- Whether you want the stream format interleaved or non-interleaved
An audio unit’s life cycle proceeds as follows:
-At runtime, obtain a reference to the dynamically-linkable library that defines an audio unit you want to use.
-Instantiate the audio unit.
-Configure the audio unit as required for its type and to accomodate the intent of your app.
-Initialize the audio unit to prepare it to handle audio.
-Start audio flow.
-Control the audio unit.
Audio:(esp Audio Unit)
http://www.cocoabuilder.com/archive/cocoa/301070-ios-play-streaming-mp3-audio-with-effects.html
http://cocoawithlove.com/2008/09/streaming-and-playing-live-mp3-stream.html
http://stackoverflow.com/questions/5320293/custom-eq-audiounit-on-ios