ControlPotmeter allow out-of-bounds option

Bug #1294750 reported by RJ Skerry-Ryan
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Fix Released
High
RJ Skerry-Ryan

Bug Description

In https://github.com/mixxxdj/mixxx/commit/db2f130cb32f5484ca064b83d211cb3afeeb595e
we removed the range limiting on ControlPotmeters to support master sync.

This should instead be an option to ControlPotmeter to allow out-of-bounds set()s.

RJ Skerry-Ryan (rryan)
Changed in mixxx:
assignee: nobody → RJ Ryan (rryan)
importance: Undecided → High
status: New → In Progress
milestone: none → 1.12.0
Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

Spoke with Owen and the change was only needed for the 'rate' control.

Fixed in https://github.com/mixxxdj/mixxx/commit/e21ffec0fe67e327b43fac81d3a55078112fa6f5

Changed in mixxx:
status: In Progress → Fix Committed
Revision history for this message
Daniel Schürmann (daschuer) wrote :

On the second thought I think this is a fix but at the wrong position.

The buttons are just an input option and should behave exactly like the slider displayed in the GUI.
In the original bug description only _up _down and _set_on is effected.
Bug #1081137

Owen's original problem was to allow out of bound values for programmatic needs, not control commands.

So the root bug was that the _up _down controls where bypassing the limit check.

Patch
https://github.com/mixxxdj/mixxx/commit/e21ffec0fe67e327b43fac81d3a55078112fa6f5
now allows to control beyond all limits for rate slider but limits all COs to be out of bound for programmatic reasons.

Possible solution:
* Remove m_bAllowOutOfBounds and check for limits in incValue() like functions. https://github.com/mixxxdj/mixxx/blob/master/src/controlpotmeter.cpp#L141 or in a common function it calls.

Changed in mixxx:
status: Fix Committed → In Progress
Revision history for this message
Owen Williams (ywwg) wrote :

I thought about that too, but I don't mind if someone is able to push the rate control "past the edge," even with a controller. It's a little easter egg for those tracks that are just a little too far apart. So I'd prefer to keep it as-is.

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

Are you sure that this works without an issue? There is now limit at all.

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

You can make the track go backward if the rate goes below zero! Yeah I guess we should be able to specify hard clamps that are outside the UI range (for rate, I'd put those at 0 and like 4, maybe)

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

Hm, yea looks like we want rate limiting to apply on all PotmeterControls COs.

I think we still want rate limiting on almost all ControlPotmeters (except 'rate') to prevent buggy code in Mixxx (e.g. something going wrong in AutoDJ) from screwing up the engine.

Revision history for this message
RJ Skerry-Ryan (rryan) wrote : Re: [Bug 1294750] Re: ControlPotmeter allow out-of-bounds option

On Thu, Mar 20, 2014 at 9:44 AM, RJ Ryan <email address hidden> wrote:

> Hm, yea looks like we want rate limiting to apply on all
> PotmeterControls COs.
>

Pre-coffee: range limiting

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

Potmeters need limiting built in by default because otherwise broken logic in Mixxx or even in a MIDI script could cause major problems (blown speakers, trainwrecks, etc.). Even programmatic access done outside the engine (e.g. in AutoDJ) should be sanity checked unless we are sure we want to allow the control to exceed its limits.

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

So I see this solution as: make potmeter controls obey the range limits.

RJ Skerry-Ryan (rryan)
Changed in mixxx:
milestone: 1.12.0 → 2.1
Be (be.ing)
Changed in mixxx:
status: In Progress → Fix Released
milestone: 2.1.0 → 2.0.0
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/7344

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.