Support 4-deck control with 2-deck controllers

Bug #1296355 reported by Owen Williams
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Fix Released
Wishlist
Be

Bug Description

Lots of controllers have hard-coded bindings to Channels 1 and 2, but now that mixxx supports 4 decks this may become a problem.

If I have one of these controllers, I might want to have a magic "layer" button that switches the controller from channels 1 and 2 to controlling decks 3 and 4.

Or, I might have two controllers, one that I use for decks 1 and 2 and one for decks 3 and 4. And I know of at least one controller that I'd want to be 1 and 3, with the other being 2 and 4.

Yes, controller configs will have to be rewritten.

So I think controllers should abandon [Channel1] and instead use a keyword like [ControlA] and [ControlB]. Internally in Mixxx, through user preferences, we can map ControlA and ControlB to whatever channels the users wants on a per-controller basis. And if the user hits the layer button, the ControlA switches from Channel1 to Channel3. Note that we'd have to remap midi lights on the fly.

This is probably post-1.12

Owen Williams (ywwg)
Changed in mixxx:
importance: Undecided → Wishlist
milestone: none → 1.13.0
Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

A group-changer control abstraction may be the right way to go for this.

Another option is to skip putting the abstraction in the control layer (to avoid complicating it) and instead put it in the controller mapping / script layer. We have full control over when controller scripts and mapping look up controls -- they do so on the fly every time so it can be changed on the fly as well.

A related issue is that all skins should support "highlighting" a deck. It could be done with a simple [ChannelX],highlight CO to show that it has the focus of a controller. (Need to think about what that looks like for multiple controllers)

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

I like the idea to have virtual decks for mapping and a group changer controller with the required controls.
IMHO we need the same for Samplers and EffectUnits. So we should look for a common solution.

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

how about [ChannelX],controllerActive - - name the CO after why the value is what it is, not what we think the UI response to that value is :)

Revision history for this message
Peter G. Marczis (marczis) wrote :

In fact this whole thing can be solved in JS mapping if you wish to do that... so just add that magical layer switch, store that in on place and when do control, based on that variable control Channel1 or 3... Of course some support from the mixxx would be great, but this can be achieved, only with mapping.
Just a side note anyway :) I think that would make easier for mappings if we have this virtual change, but I would like to have it per channel as you may wish to control Channel 3 / and Channel 2 in the same time.

Changed in mixxx:
status: New → Confirmed
Revision history for this message
Be (be.ing) wrote :
Changed in mixxx:
assignee: nobody → Be (be.ing)
status: Confirmed → In Progress
Revision history for this message
Be (be.ing) wrote :
Changed in mixxx:
status: In Progress → Fix Committed
Changed in mixxx:
status: Fix Committed → Fix Released
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/7351

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.