Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clicking Loop cue doesn't activate loop if Roland DJ-505 mapping is loaded #13357

Open
spotlesscoder opened this issue Jun 10, 2024 · 30 comments

Comments

@spotlesscoder
Copy link
Contributor

Feature Description

Say I have a cue point with a loop set on the first beat of the outro of a song.
Now I play the song and let it play until the cue point with the loop is reached

How can I make sure mixxx automatically enables the loop when that cue point is reached?

@Holzhaus
Copy link
Member

Save a loop cue (a saved loop) and enable it. A loop cue can be saved by tapping an unassigned hotcue button while a loop is already active. Next time you load the track you can recall the loop by tapping the hotcue button.

@ronso0
Copy link
Member

ronso0 commented Jun 11, 2024

@Holzhaus
Copy link
Member

By they I guess the manual could deserve some work regarding documenting how to do this in the GUI.

@ronso0
Copy link
Member

ronso0 commented Jun 11, 2024

Yep, probably here https://manual.mixxx.org/2.4/en/chapters/user_interface#hotcue-controls, and link to that from both the Looping interface and the controls page.

@spotlesscoder
Copy link
Contributor Author

I still could not figure out to achieve what I want to do

I enabled a loop, then set a cue point. The cue point button now has the circle on it.
I go back to the start of the song and let it play until the cue point is reached again

But at the position of the cue point, the looping does not start - the song just keeps on playing

@ronso0
Copy link
Member

ronso0 commented Jun 26, 2024

So you've created a loop cue.
Then you seeked back to start, which --like any seeking out of a loop-- disables it.

At start, just click that loop cue button and you'll see how the loop is activated (loop range in overview waveform turns green, Reloop button is active).

@spotlesscoder
Copy link
Contributor Author

When I click the loop cue button, the loop does not become green / activated at all :/

@ronso0
Copy link
Member

ronso0 commented Jun 27, 2024

The expected behaviour is: click loop cue button while

  • deck is stopped: jump to cue
  • deck is playing: activate loop, don't seek
loopcue-activation.mp4

Do these steps work for you?
If not, please provide a short screencast.

@spotlesscoder
Copy link
Contributor Author

Unfortunately, it did not work
However, I can enable the loop with the button under the loop button

Untitled.mov

@spotlesscoder
Copy link
Contributor Author

The problem seems to be my Roland DJ-505
When I disconnect it and then restart mixxx, it suddenly works

@spotlesscoder
Copy link
Contributor Author

More specifically, the controller mapping was the problem.
Something must be wrong with my custom mapping I created

The things I remember changing are:
Remove the Jog Wheel Touch mappings for all 4 decks
Testing something for another issue: #13252

Maybe one of the changes messed it up

@spotlesscoder
Copy link
Contributor Author

PS: I created a fresh custom mapping from the stock DJ-505 mapping, again removed all 4 Jog Wheel Touch mappings and it still works :)

@spotlesscoder spotlesscoder reopened this Jun 27, 2024
@spotlesscoder
Copy link
Contributor Author

Damn... Just closed mixxx, re-opened it and it does not work anymore
It only works when I switch the controller mapping to another one (chose a behringer one) and then switch back to my custom mapping

@ronso0
Copy link
Member

ronso0 commented Jun 27, 2024

Okay, great you identified the root cause.

I can imagine that Mixxx silently crashes during shutdown for some reason and doesn't save the mapping selection, i.e. loads the previously selected broken mapping on next start.

Just for testing try to remove the broken mapping from you mappings direcory.
Or make sure you can identify the mappings in the preferences by giving each a distinct name.

@spotlesscoder
Copy link
Contributor Author

I deleted all files in /Users/user/Library/Containers/org.mixxx.mixxx/Data/Library/Application Support/Mixxx/controllers, then restarted mixxx and selected the stock Roland 505 mapping. Changed nothing, closed mixxx, opened mixxx again, loaded the track with a loop cue, pressed play and then the hotcue for the loop - loop still doesn't enable.
Still have to select another mapping, then the Roland 505 mapping again to make it work

@ronso0 ronso0 changed the title How to let cue loop automatically play when reached? Clicking Loop cue doesn't activate loop if Roland DJ-505 mapping is loaded Jul 3, 2024
@ronso0
Copy link
Member

ronso0 commented Jul 3, 2024

Alright, thanks for testing?
@Holzhaus any chance you can try to reproduce that? Or do you have any idea what might be causing this?

@spotlesscoder
Copy link
Contributor Author

Should we change the label from feature to bug or should I report the problem as a new bug?

@Holzhaus
Copy link
Member

Holzhaus commented Jul 9, 2024

Alright, thanks for testing?
@Holzhaus any chance you can try to reproduce that? Or do you have any idea what might be causing this?

I'm on a business trip this week, will try to have a look next week.

@Holzhaus
Copy link
Member

There definitely is some kind of corner case bug. After some testing I could suddenly reproduce it (loop cue could not be enabled). However, it does not seem to be related to the mapping. When I disabled the mapping in the preferences and clicked apply, the bug still persisted. Only a restart of Mixxx fixed it. I was unable to reproduce it afterwards, with or without the controller.

@Holzhaus
Copy link
Member

Holzhaus commented Jul 13, 2024

@spotlesscoder Does the controller's loop mode work for you? Play a track and enable a loop (e.g., with "AUTO LOOP") and then hit the "ROLL / SLICER" button 2 times (w/o SHIFT), so that it turns green. You're now in loop mode. Save the loop by pressing an empty pad (should start blinking white to indicate that the saved loop is active aferwards). You can then toggle the loop state by pressing the pad, use SHIFT+Pad to both jump and toggle or long-press it to delete.

@spotlesscoder
Copy link
Contributor Author

hopefully I find the time to test this next week

@Holzhaus
Copy link
Member

@ronso0 Considering that it's not fixed by disabling the controller, I'm pretty sure this is some bug in LoopingControl or HotcueControl.

@ronso0
Copy link
Member

ronso0 commented Jul 22, 2024

@spotlesscoder I created #13496, please test the CI builds as soon as they're available. Foir details see https://github.com/mixxxdj/mixxx/wiki/Testing

@spotlesscoder
Copy link
Contributor Author

I tested it, behaviour is still the same: I need to switch the controller mapping to a different one and then back to the DJ 505 mapping before I can enable a loop cue later in a playing track (I deleted all custom mappings before testing)

@Holzhaus
Copy link
Member

Holzhaus commented Jul 22, 2024

That's expected, @ronso0's commit didn't fix anything, just added additional log messages. Can you post the mixxx.log file of a faulty run with that branch? The we can maybe debug it better, as I cannot reproduce it reliably.

@Holzhaus
Copy link
Member

That's expected, @ronso0's commit didn't fix anything, just added additional log messages. Can you post the mixxx.log file of a faulty run with that branch?

Also, does the issue occur using the Controller' loop mode as well? (see #13357 (comment))

@ronso0
Copy link
Member

ronso0 commented Jul 22, 2024

Yeah, sorry I forgot to mention that I only added trace output for the loop cue activation path.
Please try to reproduce your previous procedure (fail, switch mapping, success) and share the log in #13496

@spotlesscoder
Copy link
Contributor Author

OK, I will add the logs
btw: what I noticed is that it the bug that the speed control is set to above 1000 BPM after loading the DJ-505 mapping seems to be gone in that build 👍
original bug report: #12569

@spotlesscoder
Copy link
Contributor Author

added the logs

@Holzhaus
Copy link
Member

Holzhaus commented Jul 23, 2024

btw: what I noticed is that it the bug that the speed control is set to above 1000 BPM after loading the DJ-505 mapping seems to be gone in that build 👍
original bug report: #12569

That issue should be fixed via #13463.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants