Re: Surround info please
Re: Surround info please
- Subject: Re: Surround info please
- From: "Dave Hoskins" <email@hidden>
- Date: Mon, 26 Jun 2006 19:58:44 +0100
Hello, I've created my own subclass of the output element, and AUBase's
CreateElement now creates my own output element. And the base element duly
calls my GetChannelLayoutTags etc. But I'm at a block again, with no
examples to draw from.
1. Is there any information I can find that explains more on filling out
these functions? Do I simply return internal method variables? ( I've read
the comments in the Scope header about NULL input vars etc)
2. If I want to handle different outputs/inputs like Stereo/Quad and 5
channel, can they be all on one element? If so why will I ever need more
than one element?
It's a shame that the developers' sample code couldn't include the 'shell'
of Apples Reverb or Pitch shift, just to give us newbies a greater nudge in
the right direction, anway thanks for your patience, not sure why I've hit a
brick wall here.
Dave Hoskins
www.quikquak.com
----- Original Message -----
From: "Dave Hoskins" <email@hidden>
To: <email@hidden>
Sent: Thursday, June 22, 2006 7:19 PM
Subject: Re: Surround info please
Thanks for the quick reply, so I subclass AUIOElement, then typedef the
original to mine, and fill out the virtuals: GetChannelLayoutTags,
GetAudioChennelLayout, SetAudioChannelLayout.
Seems a bit elaborate to me if I'm correct about the above. A simple
function call to set specs would have done surely? Anyway thanks again for
your help, I expect I'll be back though...
Dave H
On 22/06/2006, at 9:55 AM, Dave Hoskins wrote:
Hmm, O.K. thanks for the pointers Bill. Auval is showing that I needed
to fix some things. I've noticed that Apple's AUReverb shows a list of
named channel configs like 'Mono/Stereo' etc, I guess it gets these
from the each element layout, but how do I code that specifcally? I've
looked through a dozen projects on the net, and none of them go near
this area.
The channel layouts are handled on the IOElements - have a look in
AUScopeElement in the AUPublic dir... The idea is you subclass this and
provide your own element type. The element type is where the format for
input or output is kept too.
Also I find it a little confusing that it appears to set up only 2
stereo in and outs at the begining of the output of auval for Apples
plugs even though they later say the can have 5. And it's a little
weird that Apples reverb doesn't show in DP's 5.1 busses, but their
pitch shift plugin does - it has a '(5.1)' next to it's name.
We don't generally provide support for .1 channels in our AUs. The LFE
is normally handled differently (as sometimes the centre channel is as
well) - so our AUs support 5.0 for example. If the bus is 5.1 (that is,
6 channels), then it probably has a mismatch in the channel counts.
Bill
A more literal help would be great, some source code would be
fantastic! Unfortunately, flying half way around the world to a
conference is not practical for me at the moment. Can anyone help
please, I really need to get on with coding the actual DSP bits! ; )
Cheers,
Dave Hoskins
www.quikquak.com
On 20/06/2006, at 6:41 AM, Dave Hoskins wrote:
Hello all, I've been looking through this list for channel layout
usage and examples. But all I've found is a couple of hints, and
people saying there's examples in source code that I can't find,
like the matrix reverb stuff.
Yes - if you run this AU in auval you'll see it has surround
capabilities - and auval is testing the different configs, and the
channel layouts that it reports.
I've created a reverb plug-in that can switch between 2/4/5 channels.
ok - so make sure that as the client changes your format to ensure
that the ACL reflects the number of channels. We expect that the AU's
ACL always reflects the number of channels of a bus correctly - and
the AU itself has to play some role in maintaining this consistency
(and checking it as well). How a format is set doesn't change of
course - the ACL just provides meta information about a format - the
role of each channel.
I've got as far as setting the number of channels, but functions
like 'CreateElements' don't even show in the API references.
Because they aren't an API - its a part of the AU SDK and all the
source is there. There's also some reference documents in / Developer/
Examples/CoreAudio/Documentation
And looking for anything using SetAudioChannelLayout turns up blank!
auval will do this
We're also going to be covering surround AU topics at this year's
WWDC in some depth - if you can come to the conference I think you'll
find the session useful (and we'll also be running a lab for more
focussed Q & A time with developers)
Bill
Can anyone help please? I'll need a little more than 'just over- ride
some functions' answers thanks. : )
Again I don't know why there are no examples of multi-channel audio
units.
Thanks in advance,
Cheers, Dave Hoskins
www.quikquak.com
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
40apple.com
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
_____________________________________________________________________
___ __
--
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.0.394 / Virus Database: 268.9.1/369 - Release Date:
19/06/2006
_______________________________________________
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
________________________________________________________________________
__
--
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.0.394 / Virus Database: 268.9.2/372 - Release Date: 21/06/2006
_______________________________________________
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
--
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.0.394 / Virus Database: 268.9.2/372 - Release Date: 21/06/2006
_______________________________________________
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