Re: AUVal Reported error: kAudioUnitErr_TooManyFramesToProcess
Re: AUVal Reported error: kAudioUnitErr_TooManyFramesToProcess
- Subject: Re: AUVal Reported error: kAudioUnitErr_TooManyFramesToProcess
- From: "Sophia Poirier [dfx]" <email@hidden>
- Date: Tue, 12 Feb 2008 16:36:44 -0500
Or update to the latest version of Xcode (2.5 for Tiger, 3.0 for
Leopard) and the problem is addressed in AUBuffer.h
Sophia
On Feb 12, 2008, at 7:16 PM, Dave Hoskins wrote:
----- Original Message -----
From: William Stewart
To: Overloud - Alfonso De Prisco
Cc: email@hidden
Sent: Friday, December 21, 2007 3:19 AM
Subject: Re: AUVal Reported error:
kAudioUnitErr_TooManyFramesToProcess
You need to debug the mono to stereo case - it has nothing to do with
TooManyFrames error (that is an expected error)
The testing in Leopard is more stringent than it is in Tiger and
one of the
areas where we found bugs is in the AUs that were not handling
mono to
stereo correctly. If your AU is a subclass of AUEffectBase, then
it likely
has >a problem for mono to stereo (as AUEffectBase is really aimed at
dealing with AUs that process the same num channels in to out)
As to what the problem might be - I can't tell except that the
error below
indicates that auval is asking for 256 frames of stereo, float
data (so the
buffer sizes of the ABL would be 256 * sizeof(float)), but the
buffer sizes
that >your AU is returning is not equal to that figure. In other
words, the
sizes of your buffers are not indicating that you have 256 float
samples.
Bill
On Dec 20, 2007, at 5:19 PM, Overloud - Alfonso De Prisco wrote:
Hi,
we're having problems validating AU plugins under Mac OS X.
Such issues are keeping us from releasing a few commercial plugins...
I compiled an AU plugin with Mac OS X 10.4.10 and tried to
validate it in
Mac OS X 10.5.1, using the auval version 1.2.1b3 that comes with it.
This is the last part of the resulting report:
1 to 2 Channel Render Test at 256 frames
ERROR: Output Buffer Size does not match requested num frames
* * FAIL
--------------------------------------------------
AU VALIDATION FAILED: CORRECT THE ERRORS ABOVE.
--------------------------------------------------
Hello. According to the Juce forum here
http://www.rawmaterialsoftware.com/juceforum/viewtopic.php?t=2422
it has
something to do with the Bypass function in AUEffectBase.cpp, and
they fix
it by hacking it like the following, surely this cannot be the
cannot be the
correct error for this?
if (ShouldBypassEffect())
{
// leave silence bit alone
if(!ProcessesInPlace() )
{
//
###############################################################
NEW BIT...
AudioBufferList& inputABL(theInput->GetBufferList());
AudioBufferList& outputABL(theOutput->GetBufferList());
if(inputABL.mNumberBuffers != outputABL.mNumberBuffers)
{ //
if number of buffers differs from input to output
const AudioBuffer *srcbuf = inputABL.mBuffers;
AudioBuffer *destbuf = outputABL.mBuffers;
for (int outputBufferIndex =
outputABL.mNumberBuffers-1;
outputBufferIndex >= 0; outputBufferIndex--) {
int inputBufferIndex = (outputBufferIndex >=
(int)inputABL.mNumberBuffers) ? (inputABL.mNumberBuffers-1) :
outputBufferIndex;
if (destbuf[outputBufferIndex].mData !=
srcbuf[inputBufferIndex].mData)
memmove(destbuf[outputBufferIndex].mData,
srcbuf[inputBufferIndex].mData, srcbuf
[inputBufferIndex].mDataByteSize);
destbuf[outputBufferIndex].mDataByteSize =
srcbuf[inputBufferIndex].mDataByteSize;
}
} else {
theInput->CopyBufferContentsTo(outputABL);
}
//
###############################################################
// theInput->CopyBufferContentsTo (theOutput-
>GetBufferList());
}
}
Cheers,
Dave H
_______________________________________________
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