sync uses the first playing or the last not playing deck

Bug #1784185 reported by Daniel Schürmann
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Low
Daniel Schürmann

Bug Description

When syncing a deck, it picks the first playing deck as reference. In case no deck is playing, it picks the last loaded deck. This is inconsistent, it should pick the first loaded deck in the later case as well.

Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

I don't feel strongly either way, but I wonder why Owen did it this way. He may have a reason.

tags: added: sync
Changed in mixxx:
importance: Undecided → Low
status: New → Confirmed
Revision history for this message
Owen Williams (ywwg) wrote :

When the DJ isn't using master sync, we have to guess which deck they want to sync to. I think the reasoning was: We should pick a playing deck as a reference, and absent any other information, the first one will do.

In the second case, if there is no playing deck, then the last-loaded deck was likely to be the one the DJ was just listening to, so that seems like a fine sync source.

First-loaded doesn't seem right to me because that track is probably further back in the past, but since this is a case where no other deck is playing, it may work fine. An alternative consistent logic could be, in order of priority:

1. Sync to master clock
2. Last-loaded playing deck if possible
3. Last-loaded non-playing deck if necessary

Revision history for this message
Daniel Schürmann (daschuer) wrote :

We may consider to respect the load or play order of a deck.
Currently only the Mixxx initialization order is used:
https://github.com/mixxxdj/mixxx/blob/9da873a777a147a3afadfb3a988ec42112359d1e/src/engine/sync/enginesync.cpp#L113

For me this is highly reliable to sync always to the deck with the lowest index. I think if we change it to the Deck the user has last touched, that could be surprising.

Looking at the code, I consider the current situation a side effect of the implementation which should be IMHO fixed.

Changed in mixxx:
status: Confirmed → In Progress
assignee: nobody → Daniel Schürmann (daschuer)
milestone: none → 2.1.5
Revision history for this message
Daniel Schürmann (daschuer) wrote :
Changed in mixxx:
milestone: 2.1.5 → 2.1.6
Changed in mixxx:
milestone: 2.1.6 → 2.1.7
Changed in mixxx:
status: In Progress → Fix Committed
Changed in mixxx:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers