Re: GarageBand too clever by half.
Re: GarageBand too clever by half.
- Subject: Re: GarageBand too clever by half.
- From: Stefan Gretscher <email@hidden>
- Date: Wed, 8 Feb 2006 16:19:17 +0100
In addition to Kellys general remarks about inNumberFrames and
MaxFramesPerSlice, here's an explanation why you're seeing the
described rendering behaviour with GarageBand:
Just like Logic, GarageBand has the concept of the currently selected
"live"-track which is always rendered with a lower buffer size to
keep the latency down for comfortably live-playing the instrument
living on this track. The non-live tracks OTOH are rendered at a
larger buffer size to minimize CPU load.
Regarding your scheduler, won't it work if you set it up its caching
to handle MaxFramesPerSlice-sized buffers? As Kelly wrote, you'll
never get more samples than this, only as much or less.
Best,
Stefan
Am 08.02.2006 um 11:02 schrieb Ian Kemmish:
I have observed that when GarageBand calls my MusicDevice AU's
Render method, the first three calls have inNumberFrames equal to
1024, and the fourth and subsequent calls have it equal to 256.
Is it expected that calling Render with varying values for
inNumberFrames is a rare or a common thing to happen?
My AU maintains a scheduler for internal events, which has to
handle potentially thousands of events from less than a millisecond
up to many minutes. When it comes to implementing the event queue,
I have the choice of either aggressive cacheing or many expensive
sorting operations. I opted for aggressive cacheing -- but this
means that responding to changes in the value of inNumberFrames is
a *very* expensive operation. If I need to sweat over improving
this, I'd like to know....
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - -
Ian Kemmish 18 Durham Close, Biggleswade, Beds
SG18 8HZ
email@hidden Tel: +44 1767 601361 Mob: +44
7952 854387
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - -
------------------------------------
Stefan Gretscher
plug-in development & 3rd party plug-in support
Logic Pro team, Apple Computer
email: email@hidden
phone: (+49)-4101-495-586
(Central European Timezone)
_______________________________________________
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