Re: Need help with the MatrixMixer
Re: Need help with the MatrixMixer
- Subject: Re: Need help with the MatrixMixer
- From: Robert Grant <email@hidden>
- Date: Sun, 16 Nov 2003 21:05:09 -0500
Well thanks to the hints from James and Kelly - IT'S WORKING !!! :-)
Here's what I did wrong:
Didn't ensure that all the channels were matched - the StereoMixer had
made me lazy...
Didn't ensure that all the input buses were being fed. Apparently if
you've got something wired to an Enabled input bus and it's not
producing sound the MatrixMixer gets depressed. It doesn't matter if
it's an effect unit - somethings got to start making sound. (I imagine
a disabled input bus would be OK without it?)
Didn't know about the kAudioUnitProperty_LastRenderError which told me
that something was complaining of kAudioUnitErr_NoConnection. Not
obvious because everything in the graph was connected...
Very nice to get it working though - onward and upward :-)
Robert.
On Nov 16, 2003, at 6:50 PM, kelly jacklin wrote:
On Nov 16, 2003, at 3:23 PM, Robert Grant wrote:
Thanks - so the error would be in the element param? I guess I'm not
what to look for in the callback? I've added one but I just get
called once at the beginning:
MyAudioUnitPropertyListenerProc 0
As with all property listeners, you are not given the value of the
property in the callback, you are just informed that its value has
"changed". You must then retrieve the value (via
AudioUnitGetProperty) yourself. The value of the property is an
OSStatus, and you ask for (and listen to) it on the global scope,
element 0.
So, your property listener would look something like this:
static void MyAudioUnitPropertyListenerProc(void * refcon, AudioUnit
unit,
AudioUnitPropertyID prop,
AudioUnitScope scope,
AudioUnitElement element)
{
OSStatus status;
OSStatus lasterror;
UInt32 size = sizeof(lasterror);
result = ::AudioUnitGetProperty(unit, prop, scope, element,
&lasterror, &size);
if ((status == noErr) && (lasterror != noErr)) {
fprintf(stderr, "unit %p reported error %ld\n", unit, lasterror);
}
}
What's weird about this is that my graph is being driven - if I
insert on a Multiband compressor between my synth and the mixer I can
see it's levels move in the UI.
Well, that means that the error is downstream of your stuff, which is
not surprising, since you already suspect that it is a problem with
how you are using the matrix mixer.
kelly
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.