remove "assume constant tempo" default

Bug #1390346 reported by Daniel Schürmann
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Mixxx
Triaged
Medium
Unassigned

Bug Description

What is the reason to recommend "assume constant tempo" enabled?

IMHO in Mixxx 1.12 it does not help that much and makes the beat grid unreliable.

Should we uncheck it by default?

See also:
http://www.mixxx.org/forums/viewtopic.php?f=3&t=6727&p=23075#p23075
https://bugs.launchpad.net/mixxx/+bug/1114643

Changed in mixxx:
milestone: none → 1.12.0
importance: Undecided → Medium
Revision history for this message
Raf Van De Meirssche (rafvdm) wrote :

I would guess that with "assume constant tempo" enabled, Mixxx does not scan the entire track for beats but stops as soon as it has found a few beats and then simply assumes the next ones.
But that's only a guess, I'm not a developper within Mixxx.

And if I am right, I don't know wether to check or uncheck it by default.
For me personnaly, it would be better to uncheck it, because I play mainly pre-drum-machine-age music, but then you should also see my remark in https://bugs.launchpad.net/mixxx/+bug/1114643.
On the other hand I think that for a lot of DJ's playing only recent music, it is better checked.
And perhaps there are more of the latter playing from PC, while the "old guys" often tend to stay with there CD's.

Anyway, in my opinion, there is no right choice for this option.
At least, not for the arguments I offer here.

Please also note that for http://www.mixxx.org/forums/viewtopic.php?f=3&t=6727&p=23075#p23075, I was not totally clear.
I don't think that that topic really has to see with the discussion here.
My error, sorry.

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

Thank you for taking time to comment.

It looks like that Mixxx is not able to recommend a specific setting, since it cant predict if its pre-drum-machine-age music or not.
It seams to be a per track choice in an ideal case, so we should remove the "recommended", right?

Raf, if you think without technical limitations, what would be the best solution in an ideal world?

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

I made this the default because it's what many users expect by a "beatgrid" (reinforced by other software).

BTW -- assume constant tempo still analyzes the entire track -- we do a variety of calculations on the detected beats to find the median BPM across 4-beat windows through the song plus some other smoothing to arrive at the final "constant" BPM that we then project from the first detected beat.

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

Is it possible to switch to non cons beats after the track is analyzed with "assume const"?

It is OK for me as const by default. But is is recommended in general?

Is a non const beatgrid usefull? What happens if you play a pre-drum-machine-age tack synced to a master clock.
Will it drone? Or is there a fuzzy like method to avoid following drummers faults?

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

In my experience (since I use non-const beatgrids) master sync acts erratically. When I was working on it a bit w/ Owen I made sure the general approach would work with non-const beatgrids but I think we have some kinks to work out.

If non-const beatgrids worked perfectly with all the existing features (halve/double tempo is kind of wonky too, master sync, etc.) then I'd also support making non-const the default.

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

Based on the lack of editing support for BeatMaps I think we can't do this for 1.12.0.

Also, it just behaves somewhat unexpectedly with master sync. If a track speeds up leading up to a drop or breakdown or something then master sync darth vaders the track to keep it in sync with the master. While powerful for syncing hard to sync tracks, you kind of need to know what you're getting yourself into.

Changed in mixxx:
milestone: 1.12.0 → 2.1
status: New → Triaged
Revision history for this message
naught101 (naught101) wrote :

Not sure if this is a separate request or not, but I think a per-track option would make sense. Most of my music (~90%?) is constant-tempo, and so the "assume constant tempo" option works fine (and improves results for those tracks, from what I can see). But the constant tempo beat grid is totally useless for variable-tempo tracks. Would it be possible to have an option for each track "this track has multiple tempos" that makes mixxx ignore the constant-tempo grid just for that track, and just uses the detected beats?

This would still work even without explicit beatmap editing...

Revision history for this message
naught101 (naught101) wrote :

Ah, I think my comment is dealt with at lp:1207096

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

I am afraid it is hard for the user to reside, which type of beat suits best.
We may compare the const beats with the beatgrid and use the beatgrid if some const beats are shifted by a certain amount. However, we should allow breaks if the beatsgrid fit again to the const beats after the break.
This was also discussed in a different bug, I cannot find yet.

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

It's a little clunky, but if you find a track that needs non-const tempo, you just change the preference, re-analyze the track in question, and then change the preference back.

Revision history for this message
Be (be.ing) wrote :

> We may compare the const beats with the beatgrid and use the beatgrid if some const beats are shifted by a certain amount. However, we should allow breaks if the beatsgrid fit again to the const beats after the break.

I have been wondering for a long time how Mixxx could automatically shift between the constant beatgrids and non-constant beatmap only during parts of a track where the tempo is changing. This seems like a promising approach.

Be (be.ing)
Changed in mixxx:
milestone: 2.1.0 → none
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/7630

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.