Re: Scheduling ramp parameters
Re: Scheduling ramp parameters
- Subject: Re: Scheduling ramp parameters
- From: William Stewart <email@hidden>
- Date: Wed, 12 Jul 2006 10:56:43 -0700
On 11/07/2006, at 1:36 PM, Bjorn Roche wrote:
Hey all,
I have an AU host app that works fine with non-ramp-able
parameters. However, I recently tried my first plug-in that
actually supports ramp-able parameters, Audio Ease's Altiverb 5
(anybody know any more?). When I try scheduling parameters with
that, it either ignores the transition or produces a loud noise. In
Ableton Live it works fine. I have two suspicions about why this
might be:
1. Instead of lumping all my scheduling together and making one
call to AudioUnitScheduleParameters(),
Yes, this is expected
I am making a number of calls with only one AudioUnitParameterEvent
per call, like this:
AudioUnitScheduleParameters( audioUnit, &ape, 1 );
this is ok too.
I know this is inefficient, but I understood it to not be wrong. Is
it? I plan to go back later and clean that up, but for now it makes
my code much more straightforward.
2. I am scheduling the parameters right before my own render call,
rather than in the pre-render notification. It has been suggested
on this list that the best place to schedule parameters is in the
prerender notification, but I don't see how it could be an issue as
long as I do it right before the render and from within the same
thread.
If the AU does something to clear this state between your call to
AudioUnitRender and its call to your pre-render, then this doesn't
work of course. You should also bare in mind that the AU's only
thread context for doing work is the call the host makes to
AudioUnitRender. The suggested guideline is to schedule these
activities in the pre-render notification for this reasons.
Bill
My code does something like this:
loop while there are more events to schedule:
setup scheduling stuff for one audio unit parameter event
AudioUnitScheduleParameters( audioUnit, &ape, 1 );
AudioUnitRender( audioUnit,
&ioActionFlags,
&timeStamp,
0,
chunksize,
audioBufferList );
that should be fine, too, right? I am, after all, in the same
thread and there's no chance of a render going on while I am
scheduling. I am not relying on an AUGraph or anything like that. I
shouldn't really NEED to create a separate function for pre-render
notifications, but is it possible that an Audio Unit might not work
correctly without the scheduling happening there?
Thanks for the help,
bjorn
-------------
Bjorn Roche
Check out my CD Mastering Software
for Mac OS X : http://www.xowave.com
_______________________________________________
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