Paul Davis wrote:
>We've
been talking about 'TEMPO' and 'TRANSPORT' and 'TICKS' and
'METER'
>controls, which (honestly) kind of turns my stomach. This is not what
>controls are meant to be doing. the answer strikes me in shadowy details:
>
>Each host struct has a timeline member. Plugins register with the host for
>notification of ceratin things:
>host->register_time_event(plugin, event, function);
>events:
> TIME_TICKS // call me on every tick edge
> TIME_TRANSPORT // call me when a transport happens
> TIME_METER // call me when the meter changes
>
this is the best suggestion so far. i love callbacks. note that
"meter" includes both tempo and time signature. you knew that, though.
i can't see anyone wanting to use TIME_TICKS.
--p
Callbacks do make sense here, I agree. You never know about the ticks,
though. In film scoring, it's not uncommon
to nudge things around a tick or two here or there to enable audio
events to sync up with the picture. I can see wanting
to chase audio on every tick in some very high resolution contexts like
that.
-dgm