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

discretely valued effect parameter knobs #8756

Open
mixxxbot opened this issue Aug 23, 2022 · 8 comments
Open

discretely valued effect parameter knobs #8756

mixxxbot opened this issue Aug 23, 2022 · 8 comments

Comments

@mixxxbot
Copy link
Collaborator

mixxxbot commented Aug 23, 2022

Reported by: Be-ing
Date: 2017-01-13T08:19:29Z
Status: Confirmed
Importance: Wishlist
Launchpad Issue: lp1656225


It would be helpful to create a new type of effect parameter for adjusting discrete values. The first use case that comes to mind is selecting a number of beats for tempo synced effects (refer to Bug #9763). Because many controllers would control these parameters with continuous potentiometer knobs, it would be helpful to map the range of discrete values to the range of a continuous knob. Instead of a knob showing in the skins, only the exact value would be shown. If the value is less than 1, it should probably be shown as a fraction (for example, 1/8 beat) rather than a number with a decimal point.

@mixxxbot
Copy link
Collaborator Author

Commented by: daschuer
Date: 2017-01-13T09:26:55Z


I do not like the idea to have an extra parameter type apart from buttons and knobs.
Since such a parameter is controlled by a knob, it should be one of the knob nature.

The prepared solution for it is CONTROL_KNOB_STEPPING:

CONTROL_KNOB_STEPPING, // A step rotary, steps given by m_steps

This ControlHint, allows to make labeled scale on the knob or a value display as requested here.

We have only not managed to make a widget for it.

@mixxxbot
Copy link
Collaborator Author

Commented by: ronso0
Date: 2017-01-19T02:21:32Z


I'll join in to push this idea!
IMO especially the Echo effect is only usable for 'random delay' effect ATM. It's very hard to somehow adjust Echo delay on Pfl first (for a running track) then apply it to Channel and mix it in. Matching the BPM is pure chance...or hard work/time.

I imagine that it's kind of hard to implement: first press Echo's 'Sync' button then adjust a stepped Potmeter to set the delay to 1, 1/2, 1/4 of a beat.
When a new track is loaded, I'd expect both to reset to some default value, like 1/2 or 1 beat of track's BPM, or better: the stepped Potmeter's last value.

@mixxxbot
Copy link
Collaborator Author

Commented by: ronso0
Date: 2017-01-19T02:27:06Z


Btw: Isn't that the way way some of those fancy (Pioneer?) mixers handle it?

@mixxxbot
Copy link
Collaborator Author

mixxxbot commented Aug 23, 2022

Commented by: daschuer
Date: 2017-01-19T09:22:23Z


Yes, such a effect sync feature would be great.
This is tracked here: #8312
Would you mind to add you comment there as well, or file a new bug, if it is do-able independently.

@mixxxbot
Copy link
Collaborator Author

Commented by: ronso0
Date: 2017-01-20T16:00:05Z


Done. Must have mixed those two up.

@mixxxbot
Copy link
Collaborator Author

mixxxbot commented Aug 23, 2022

Commented by: ronso0
Date: 2020-03-05T19:44:45Z


some thoughts on the widget implementation:

1 traditional knob with free pointer position

  • scale has either highlightable notches or separated arc segments for clear GUI feedback
    = controller & GUI knobs are always in the same position

2 new knob widget that snaps to notches

  • for clear GUI feedback it doesn't allow positions in between notches
    = continuos controller knobs might not match the GUI knob position
  • for use with mouse wheel, mouse drag or touch screen drag we should install a scroll distance that must be overcome to make a step with the knob, and reset accumulated scroll ticks after mouse/finger release when the next step wasn' reached

For both versions, both notches and arc segments could accept clicks for easy adjustment.

@mixxxbot mixxxbot transferred this issue from another repository Aug 24, 2022
@ronso0
Copy link
Member

ronso0 commented Nov 9, 2022

With #11041 I saw LV2 parameter knobs where the displayed value would always snap to integers (range was something like 1-8 IIRC), though I don't remember which effect in particular I tested.

Though I can't find any related implementation of ValueScaler::Integral
Or is my memory just wrong?

@ronso0
Copy link
Member

ronso0 commented Nov 12, 2022

A first step is #11061 which makes knobs with ValueScaler::Integral snap to integers.

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