Comment 1 for bug 1851985

Revision history for this message
Owen Williams (ywwg) wrote :

There are a lot of problems with master sync and non-const beatgrids. I have been doing a lot of hacking and thinking to try to figure out how to resolve some hard problems.

For instance: What should happen if a track with a non-constant grid slows down? I have a track that has a dramatic moment where it slows from 120 to 100bpm very quickly. Right now Mixxx keeps the BPM constant so this effect is lost (and the musical pitch suddenly rises unless I have keylock on). Should it be locked to the internal clock speed? Should it be allowed to slow down? What if there's another track playing? Should it slow down too?

In my exploration, it seems that mixxx needs a concept of which deck should be considered "in charge" for the purpose of master sync. We do have the idea of an explicit master deck, but in the current code this is an invisible Internal Clock -- that's why it appears that the non-const track is matching the stopped deck. In reality, it's matching the Internal Clock, which was initialized to some BPM (which may have been the first deck, but could have been the second deck if both were stopped).

Unfortunately trying to determine which deck "should" be master is very hard. What if the currently-playing deck is constant beatgrid, and a non-const beatmap track is loaded?