i have a Problem ;)
i want to record Audio from the Mic and Write it to the Filesystem with Extended Audio File Services and also play the recorded Stuff. if i only use the remoteIO with two callbacks one for read one for write it works.
For the Volumen Control i want to use the MultiChannelMixer and the AUGraph. is it possible that you realize playback and recording with the same mixer and the RemoteIO?
i think it must look like this:
RemotIO Input -> -> Write Callback
Mixer
RemoteIO Output <- <- Read Callback
i create two AUNodes (RemoteIO and MultiChannelMixer), how must i set the Callbacks and the Connections that one Callback deliver the AudioData from the mic and an other reads the Data from a File and both paths go through the mixer?
The reading and writing is not the Problem, only the configuration of the Nodes!
…and the output of CAShow:
AudioUnitGraph 0x8AEE000:
Member Nodes:
node 1: 'aumx' 'mcmx' 'appl', instance 0x865a510 O I
node 2: 'auou' 'rioc' 'appl', instance 0x865d0a0 O I
Connections:
node 1 bus 0 => node 2 bus 0 [ 2 ch, 44100 Hz, 'lpcm' (0x0000000C) 16-bit little-endian signed integer]
node 2 bus 1 => node 1 bus 1 [ 2 ch, 44100 Hz, 'lpcm' (0x0000000C) 16-bit little-endian signed integer]
Input Callbacks:
{0x4150, 0x7573340} => node 2 bus 1 [2 ch, 44100 Hz]
{0x4330, 0x7573340} => node 1 bus 0 [2 ch, 44100 Hz]
CurrentState:
mLastUpdateError=0, eventsToProcess=F, isRunning=F
here is the setup code:
OSStatus setupErr = noErr;
AudioComponentDescription mixerDescription;
AudioComponentDescription ioDescription;
// the AUNodes
AUNode mixerNode;
AUNode ioNode;
// the graph
setupErr = NewAUGraph(&_graph);
NSAssert(setupErr == noErr, @"Couldn't create graph");
// the mixer
mixerD