On 04/26/2014 12:37 AM, Tobias Doerffel wrote:
> Hi,
>
> global automation patterns are placed in Song::globalAutomationTrack()
> which is a hidden/internal automation track where all automation
> patterns are placed at MidiTime( 0 ). This all is provided for
> convenience as the user does not have to deal with managing and
> connecting automation patterns if he just wants to control a knob/...
> in the song-global domain.
>
> If the song-global automation pattern of a control (i.e. tempo) is not
> empty and you manually assign another automation pattern it will be
> the same as having two automation patterns connected, i.e. the
> behaviour can be undefined if they overlap (which will certainly be
> the case for song-global automation patterns).
>
> This is just what I remember from the implementation - correct me if I'm 
> wrong.
>

This doesn't quite answer my question, or possibly I'm being stupid and
not understanding things here...

What I mean is, say I want to reliably know the tempo at Miditime x...
can I just read the value in the song-global pattern at Miditime x and
assume it's correct? If we assume the usual situation, where the
song-global automation is empty (AFAIK most people don't really use
these), and tempo is controlled with regular automation patterns...
wouldn't reading only the song-global pattern then return the wrong
value? Or are all regular automation patterns automatically connected to
the song-global pattern?

How is this handled at playback? When I press play, and the playhead
moves over a (non-global) automation pattern connected to tempo... where
does the playback routine read the tempo from?

I'm asking these questions because I'm trying to figure out what exactly
is needed to a) fix the time widget and b) make sampletracks tempo-aware
so they can be played from the middle. To do both of these reliably, we
need to be able to convert miditime to absolute time in a way that tempo
automation is taken in account...

------------------------------------------------------------------------------
Start Your Social Network Today - Download eXo Platform
Build your Enterprise Intranet with eXo Platform Software
Java Based Open Source Intranet - Social, Extensible, Cloud Ready
Get Started Now And Turn Your Intranet Into A Collaboration Platform
http://p.sf.net/sfu/ExoPlatform
_______________________________________________
LMMS-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/lmms-devel

Reply via email to