controller script: support parameter-space access to controls

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

Bug Description

To handle incoming and outgoing signals for controllers, script writers have to look up the range of each control object on http://mixxx.org/wiki/doku.php/mixxxcontrols and write the logic to scale the controller's signals to Mixxx's values. This is inconvenient and results in a lot of code duplication. With XML mappings, this is handled automatically by Mixxx.

See also: https://bugs.launchpad.net/mixxx/+bug/398350

Tags: script
Be (be.ing)
description: updated
Revision history for this message
Sean M. Pappalardo (pegasus-renegadetech) wrote :

This and the linked bug will be addressed with a control system rewrite. (What we've been calling "Control 2.0")

Revision history for this message
Ferran Pujol (ferranpujol) wrote :

So essentially you're proposing to work at parameter level instead of at value level in scripts, isn't it? This is great idea, but IMHO scriptwriters should still be able to access CO at value-level if they need to.

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

Yes. The most simple syntax should automatically scale values but there should be an alternate syntax that would still allow finer control.

Revision history for this message
Sean M. Pappalardo (pegasus-renegadetech) wrote :

Careful, the XML mappings assume 0..127 MIDI ranges. Any physical controls that have ranges that differ from this would not work correctly. There's no way for Mixxx to know such ranges without at least extending the XML schema, a bit like what's on the proposed HID XML schema wiki page.

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

Do you mean there is no way for Mixxx to tell whether a script is for MIDI or HID? Mixxx should have a default range for each protocol and there should be a way for scripts to easily specify a different range for each control.

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

This could be done with a JS library, but it would have to be updated with each new CO that is added.

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

We added engine.getParameter and engine.setParameter a while back so this should be fixed.

Changed in mixxx:
milestone: none → 2.0.0
status: New → Fix Released
importance: Undecided → Low
importance: Low → Wishlist
summary: - automatically scale values of Mixxx COs to input & output signals for
- controllers in scripts
+ controller script: support parameter-space access to controls
tags: added: script
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/8261

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

Related blueprints

Remote bug watches

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