• 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
Re: Multi Output AU
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Multi Output AU


  • Subject: Re: Multi Output AU
  • From: William Stewart <email@hidden>
  • Date: Wed, 29 Aug 2007 15:20:53 -0700

Supported num channels is the capacity to produce some number of channels on any individual bus. so your config below is saying you could do either 2 channel output (on any bus) or 13 channel output (on any bus) - not what you mean.

So, you have some choices:

(1) Support any output having either mono or stereo: { 0, 2} { 0, 1}
(2) Support just stereo: {0, 2}
(3) Support 1 stereo and 11 mono outs: NO channel config. (For a music device if it doesn't provide a "supported num channels" then the host is to assume that the initial config is the only valid one). You should also make sure that any attempt to change num channels on any output is rejected in this case


There is no way to publish the capabilities you want (either 2 buses with stereo, or 1 bus stereo, 11 mono). We had floated a proposal for providing pre-configurations (which would allow this) but this was not broadly accepted or agreed too, so we dropped it).

Regardless of the solution you do, you can create the number of output elements as you need in the constructor. So, if you went for (3), you would create 0 inputs, and 12 outputs (1 stereo, 11 mono)

If you want to change the number of elements after construction, have a look at the SetElementCount property implementation in AUBase

Bill

On 28/08/2007, at 5:40 AM, email@hidden wrote:

I've been searching the archives for a while and haven't found a solution
to this problem.


My AU (Music Device) is to support multiple outputs and configurations,
either 2 outputs (standard stereo out) or 2+11 outputs (one stereo out,
and 11 mono outputs).


Current I do:

Call MusicDeviceBase with numOutputs = 1 (this refers to the number of
output buses right? I only need one).

In Constructor call ChangeStreamFormat() with mChannelsPerFrame = 13 after
CreateElements() (This can't be right, since I want to support either 2 or
13 outputs. Also if I do this before before CreateElements() I get crashes
and CreateElements() does the buffer allocation as far as I can tell).


In SupportedNumberOfChannels() I report
{0,2} and {0,13}

I respond to getProperty() kAudioUnitProperty_SupportedNumChannels

So far the results have been either auval refusing to validate the AU with
a "can't perform render tests" due to channel reporting errors, or I can
get the AU to validate with 13 outputs, but the buffers handed to me are
not properly allocated (resulting in crashes).


What do I need to implement to get this working?

Any help would be greatly appreciated..!

Best regards,

Mike Janney
AudioRealism
www.audiorealism.se



 _______________________________________________
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

--
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
________________________________________________________________________ __


_______________________________________________
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


References: 
 >Multi Output AU (From: email@hidden)

  • Prev by Date: Write mp3 Files
  • Next by Date: Re: AU not recognised by some hosts
  • Previous by thread: Multi Output AU
  • Next by thread: USB Device Transport Type
  • Index(es):
    • Date
    • Thread