Feature Request: Time aligned mouse transition

Bug #1654773 reported by Rene Obermueller
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Won't Fix
Wishlist
Rene Obermueller

Bug Description

I'd like to see this Traktor feature in mixxx. I have attached screenshots from Traktor to show the behaviour.

1.png:
I move the mouse along the preview waveform. A single step on here equals a chunk of 4 beats. bars+95 then actually is a move by 95*4 = 380 beats. After the screenshot I click, and set hotcue #3 there.

2.png
I am back at the beginning of the track. I move the mouse along the preview waveform. This time, I go to bars+94, this results in jump to 4 beats before bars+95 (or 4 beats before hotcue #3).

3.png
I set a hotcue #5 on this location.

4.png
The transitions are always relative to the current position. For example, if I go back to the start of the track, and move 1 beat to the right, then use the same bars+94 transition as before, I end up 1 beat after hotcue #5 set before.

5.png
I set a hotcue #6 on this location.

What's the point to this? When preparing tracks, I want all hotcues on first beat. This method may not work with all tracks, but 95% of the time it does give me a first beat after transition, and that way it saves me from scrolling/listening around the target location.

Perhaps it might be an idea to provide this behaviour only with a modifier button (e.g. ctrl+click) as to not disrupt the existing behaviour.

Revision history for this message
Rene Obermueller (the+r) wrote :
Revision history for this message
Rene Obermueller (the+r) wrote :

I had a brief look at this. I think I may be able to do it myself (time permitting). But the question is, would such a feature be adopted?

Part 1 (see attached mock up screenie)

Add a mouseover caret to WOverview AND/OR add an additional position dragging caret. If beat info is available, add a display to the caret(s) that indicates the distance to current position in beats and beats/4. This should be possible to somehow get from the track object. But I'm not sure what to do if something isn't 4/4 time. Traktor doesn't do that part any better, though. ;)

Part 2

Add modifier keys, I'm thinking along the lines of

Alt+Click / Alt+Release jumps to the next beat.
Ctrl+Click / Ctrl+Release jumps to the next bar.

There should at least be a hint in the tooltip window. I'm not sure how everyone feels about modifier keys like this, but I think it's better than changing the default behaviour. Moreover, one may possibly want/need all 3 depending on situation, so it'd be rather long-winded to use a configuration option.

Part 3

Just eye candy. If either of the modifier keys is pressed, the caret can actually be displayed in the location that matches the jump target.

Part 4

Perhaps the modifier keys should be configurable.

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

> I'm not sure what to do if something isn't 4/4 time.

We need a general solution for specifying the beats-per-bar of a track, and not just for this proposed feature. I think assuming 4/4 is okay for this, at least for a proof-of-concept.

RJ Skerry-Ryan (rryan)
Changed in mixxx:
importance: Undecided → Wishlist
status: New → Confirmed
Revision history for this message
Rene Obermueller (the+r) wrote :

I had worked on this one and a half years ago and came up with a demo including the hotkeys mentioned above (see screenshot attached), but my math for the jumps was off. Then RL got in the way and I never got round to giving it another look.

I'm happy to push what I had to github if that's helpful in any way. I'm not sure I can continue to work on it in the near future.

Revision history for this message
Rene Obermueller (the+r) wrote :

I got a bit more time again and would like to have another go, hence trying to assign the entry to myself.

Changed in mixxx:
assignee: nobody → Rene Obermueller (the+r)
Revision history for this message
Be (be.ing) wrote :

Doing anything with bars is premature until Mixxx has this information available. Fortunately we have two Google Summer of Code students working on that this summer. If you want to participate, take a look at:
https://github.com/mixxxdj/mixxx/pull/2512
https://mixxx.zulipchat.com/#narrow/stream/109171-development/topic/support.20for.20bar.20and.20phrase.20info.20and.20variable.20BPM
https://mixxx.zulipchat.com/#narrow/stream/109171-development/topic/beatgrid.20editing.20UI
https://mixxx.zulipchat.com/#narrow/stream/109122-general/topic/What.20is.20a.20phrase.20in.20music.3F

We will not merge anything that simply assumes all music ever made is in 4/4 like other DJ software. However, you could develop a prototype using that assumption which would later be usable when Mixxx actually knows where downbeats are.

> What's the point to this? When preparing tracks, I want all hotcues on first beat.

If that's all you want this for, showing the downbeats on the waveforms would be easier to use than this. If what you want is to jump by a specific number of beats, we already have beatjumping. You can even type an exact number of beats if you want something that isn't a power of 2.

Revision history for this message
Rene Obermueller (the+r) wrote :

Thanks for the heads up.

Yes, the beatjump is already incredibly useful to me, so thanks for the addition of that, and I suppose an improved display would be almost all I need.

I'd still like a mouseover caret in the waveform overview, and perhaps it could stick to the next beat if quantification is enabled, for now. That should not depend on the above. Then, one could easily add an additional downbeat sticking mode later on, once all of the above is available.

Would that be acceptable?

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

Yeah, I think quantizing seeks from mouse clicks on the waveform would be reasonable.

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

Oh wait, Mixxx already does that when quantize is on.

In 2.3 we now have the time that would be jumped to shown on mouse button down. This only shows real time though, not musical time.

Revision history for this message
Rene Obermueller (the+r) wrote :

OK, I just had a look at 2.3 and I think it's already very usable for me. Downbeat marking in the waveform would then be another very useful addition.

So I don't think this feature request here holds any additional value on top of that, at least not for me. Happy to close it now from my point of view.

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

Okay, let's close this then.

When we have downbeat information in Mixxx, one feature I want to have is to show musical time (bars) in addition to real time on the waveforms when hovering cues and right clicking.

Changed in mixxx:
status: Confirmed → Won't Fix
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/8749

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.