Re: MatrixMixer info
Re: MatrixMixer info
- Subject: Re: MatrixMixer info
- From: William Stewart <email@hidden>
- Date: Mon, 17 Nov 2003 19:07:15 -0800
I'd echo James' points...
This cannot be an effect - it must be a signal generator like a
music device or audio file.
I'm not sure why you say this. The MatrixMixer doesn't know what is
upstream as long as the input is not returning an error, whatever you
connect should be OK.
It's just what I observed. I've got subgraphs feeding into the mixer
and the only time I could get it to produce noise was when I had
signal generators attached to each input bus. Having a music device
connected to input 0 and an effect connected to input 1 meant that no
sound was emitted. Disabling input 1 or connecting another music
device to the effect made it work... I agree it's weird.
2. If the channel layout of the input audio unit does not match
the mixer input bus then the MatrixMixer will not accept input. Use
kAudioUnitProperty_StreamFormat to fix them up.
I wouldn't use the words "channel layout" here. To us, channel layout
means the number and order of the channels (viz AudioChannelLayout).
That matrix mixer only cares about the number.
You're right - my mistake - I'll correct the page.
Hmm... Well, this is a very confusing statement Robert.
There is nothing special about the matrix mixer here and how it handles
connections (well, aside from the bugs of course:-).
A connection between 2 audio units by definition must share the format
between the output of the source and the input to the destination unit.
In fact, manipulating a format on either side of any connection where
that manipulation is done in any manner in which this connection is in
an inconsistent state when a render call is made (ie, the connection is
used) will lead to "undefined results"
Not my terminology preference.. 0xFFFFFFFF is the master. These are
output channel gains.
I wasn't thinking big enough - (too focused on my little app) - of
course if you've got multi-outs you'd want one fader to control them
all... I'll correct this too.
All volumes in the matrix mixer can be set in Global Scope, where the
elementID is set as:
Input Volume is:
(in << 16) | FFFF
Cross Point:
((in << 16) | out
Output Volume:
(FFFF << 16) | out
Master Volume:
FFFFFFFF
Its kind of nice to just think about this in one scope with just one
argument (the elementID) to configure.
Bill
james mccartney
apple coreaudio
Thanks for reviewing it! :-)
Robert.
_______________________________________________
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.
--
mailto:email@hidden
tel: +1 408 974 4056
________________________________________________________________________
__
"Much human ingenuity has gone into finding the ultimate Before.
The current state of knowledge can be summarized thus:
In the beginning, there was nothing, which exploded" - Terry Pratchett
________________________________________________________________________
__
_______________________________________________
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.