• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
n - to - m effects question
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

n - to - m effects question


  • Subject: n - to - m effects question
  • From: "Michael A. Thompson" <email@hidden>
  • Date: Wed, 27 Jul 2011 14:36:05 -0400

It's been a while for me and the AU development thing but I need to create a few multichannel processing AU plugins for my own use and wonder what the latest preferred way to go about this is. 

My plugin needs the take in 4 channels (no side-chains) and output 1 channel based on the 4 inputs. Another needs to take in 4 input channels and use all 4 inputs to create the 4 output channels.

1. In the past I used the AUEffectBase class following the AUEffectBase.h comment and did the ProcessBufferLists override (this doesnt seem to work anymore in 10.7 (auval craps out) or I am just not doing something correctly but I have not really looked into it yet.)
// 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.
However in the implementation file I read:
/* 
This class does not deal as well as it should with N-M effects...


The problem areas are (if the channels don't match):
ProcessInPlace if the channels don't match - there will be problems if InputChan != OutputChan
Bypass - its just passing the buffers through when not processing them

This will be fixed in a future update...
*/
2. In the Appendix: Audio Unit Class Hierarchy API docs it says to start with the AUBase class for n - to - m:
  • For general, n-to-m channel effect units, start with the AUBase class
  • For n-to-n channel effect units, which map each input channel to a corresponding output channel, start with the AUEffectBase class
3. The AUPinkNoise generator, which does 0 - to - n, uses the AUBase class and overrides the Render method. If I went this route so for a 4 - to - 1 would I still over ride the Render method?

And what about this new AUPannerBase class... I can't seem find any documentation about it.

Thanks,
michael

 _______________________________________________
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

  • Prev by Date: volume question
  • Next by Date: Re: Technical Note TN2276
  • Previous by thread: volume question
  • Next by thread: Audio USB Plug-in
  • Index(es):
    • Date
    • Thread