Re: AudioUnit FormatConverter
Re: AudioUnit FormatConverter
- Subject: Re: AudioUnit FormatConverter
- From: Jeff Moore <email@hidden>
- Date: Thu, 29 Dec 2005 10:09:02 -0800
This is starting to stray into territory I'm a bit less knowledgeable
about, but I think that the reason why is that when you connect two
AUs together, they negotiate the format they use amongst themselves,
especially if there's a graph involved.
Also, I'm not at all sure why you would want to stick a conversion to
an integer format in the middle of a chain of AU's in the first
place. First, AUs are specifically set up to work in 32 bit floats.
Second, generally speaking, all hardware will provide 32 bit floats
for input and take 32 bit floats for output. Third, if you use
AUConverter in a real time chain of AU's, the only sensible
transformation it can provide is sample rate conversion. All it's
other capabilities are really only for off-line processing, and even
then, you really ought to use an AudioConverter directly to do that
work.
So maybe before we go too far off into the weeds, you ought to take a
step back and explain a bit about why you are sticking this 32 bit
integer transformation in here.
On Dec 28, 2005, at 12:24 PM, George Malayil-Philip wrote:
Thanks. But, by AUConverter, I am guessing you mean Audio Units of
type
kAudioUnitType_FormatConverter and subtype
kAudioUnitType_AUConverter. I am
trying to do the conversion on such a unit, and if the formats can
be set on
these, why doesn't the conversion work? Thanks.
Regards
George M.P.
The output scope format on AUHAL is not settable I think. It is
always locked to the virtual format that the device is using through
the HAL. This is not the case with AUConverter where both sides of
the conversion can be changed.
On Dec 28, 2005, at 2:09 AM, George Malayil-Philip wrote:
Hi,
With this audio unit hooked up as input to the outputUnit, I get
perfect
output. What's confusing me though is that if I replace
outputFormat with
inputFormat in the call to set converterUnit's output Stream
Format, I still
get perfect output?!? How is this? Does a AUConverter always output
BEF32
despite the settings on input and output formats? I am asking this
because
in another program I tried a similar thing, except in the reverse,
I set up
the converterUnit to convert BEF32 to BEI32, but it doesn't seem to
do that.
Is there any other call I need to set to make this work? Or can't
AUFormatConverter's be used this way?
--
Jeff Moore
Core Audio
Apple
_______________________________________________
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