AUs where inputs != outputs
AUs where inputs != outputs
- Subject: AUs where inputs != outputs
- From: email@hidden
- Date: Mon, 5 May 2008 11:03:04 +0100
I'm wondering about the best way to tackle writing a pair of AUs, one
with a sidechain output, and the other using that as sidechain input
along with the original audio stream. So I'm assuming that AU 1 needs
one input bus and two output, while AU 2 needs two input buses and one output.
So far, I think I've established that I need to either override
ProcessBufferLists in AUEffectBase, or subclass AUBase.
I'm not at all clear on the pros and cons of the two approaches (except
that the first option looks simpler :-) .
AUEffectBase.h contains the advice:
// If your unit processes N to N channels, and there are no interactions
between channels,
// it can override NewKernel to create a mono processing object per
channel. Otherwise,
// don't override NewKernel, and instead, override ProcessBufferLists.
I take that to mean that if my unit processes N to M channels, I _can_
use AUEffectBase and override ProcessBufferLists. But various posts in
the archive, often from Apple people, suggest that subclassing AUBase is
preferable - e.g.
"Generally for this type of AudioUnit we would recommend subclassing
from AUBase
(and not AUEffectBase even if the AU is actually an effect!).
Then you would want to subclass the Render() method."
<http://lists.apple.com/archives/coreaudio-api/2005/May/msg00053.html>
and
"If you are going to use AUEffectBase to do N-M channel effects there
are a number of behaviours you need to over-ride if you are still going
to use this class. As a side note, we subclass AUBase when we do these
kinds of AU's and that has generally been our recommendation."
<http://lists.apple.com/archives/coreaudio-api/2005/May/msg00214.html>
Is there any documentation I've missed on exactly which behaviours need
to be overridden, or why overriding AUEffectBase might be a Bad Idea?
Sorry, I know from trawling the archives that this has been flogged to
death, but it's all left me pretty confused.
thanks,
Iain M
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden