falkTX / Carla

Audio plugin host
https://kx.studio/carla
1.59k stars 145 forks source link

request: more options for knob control #11

Open wolftune opened 11 years ago

wolftune commented 11 years ago

I'd like a modifier key that switches the scroll-wheel on knobs and parameters between being very subtle or giving a bigger change. Right now, it is very subtle, moves very slowly. There could be a preference setting for default being slow small change vs larger quicker change. Then the modifier key could be used to get the alternate behavior.

There should also be a preference to let the cursor click-and-drag be linear even for the circular knobs.

ghost commented 10 years ago

+1 request to add a preference to let the cursor click-and-drag be linear even for the circular knobs. The current "real knob" mode is cumbersome and imprecise in the context of software and mouse.

rhetr commented 9 years ago

+1, I didn't even know that the scrollwheel works on knobs since it's so small. Click and drag should refrain from jumping between values as well.

egasimus commented 9 years ago

+1 for fine mode and for linear drag.

rhetr commented 9 years ago

is scrolling over knobs already implemented? I'm unable to get it to work for me.

jpka- commented 2 months ago

Hello. I also thought the mouse scroll wheel not working, unless i use plugins with integer parameters (ladspa TAP reverb). So it works, but with quite incorrect speed. On floats it extremely slow, need about 3333 pulses per full knob revolution. Ctrl/Shift rotates it 3 times faster. Alt rotates it back. Contrary, on integers, it is too fast. 3 positions per wheel step, or 10 with modifier (so unable to select integer between 3's boundaries). Floats speed fixed to full revolution. Integer speed fixed to min-max values. Dive into source codes, i see that all steps calculated correctly. But just not used in UI, which stuck to these turtle or cheetah speeds. I can live with that, either make mouse drag from mouse wheel with bash script (drag works correctly); or, i can modify tap plugins to use integers and stretch min-maxes by three. Both ways are quite weird and it can be much more interesting if maintainer can fix the step value lost somewheere on the way to Qt UI (is looks like bug, not an unimplemented feature). Thanks.

jpka- commented 2 months ago

I also found that it is possible with 'qt5ct' to decrease wheel speed from 3x to 1x (for integers). It is under 'Interface -> Scroll lines'. Fast step remains to be 10x. While this is exactly as i need, but it is not so useful, because i still need 3x scroll for texts. And it show that this magic 3x constant is not part of Carla. Other Qt apps with knobs, like 'QSynth', are not depend of this setting. In 'xev' i always see one 'press' per wheel pulse. P.S. I have 'QT_QPA_PLATFORMTHEME=qt5ct' in '/etc/environment', i use Archlinux.

jpka- commented 2 weeks ago

I found that, with (current) https://github.com/falkTX/Carla/blob/main/source/frontend/carla_skin.py#L600 & 601, or (2.5.8 release) /usr/share/carla/carla_skin.py lines 607 & 608, setPrecision() not used for floats, so default used from https://github.com/falkTX/Carla/blob/main/source/frontend/widgets/commondial.py#L62 . Changed 10000 to 60, i am get 20 pulses per revolution for floats. Worksforme, but still not as should, because it all still depends from mouse accel from 'qt5ct'. P.S. 1) To make also integers work with mouseaccel=3, multiply value by 3 at line 601 (or 608): widget.setPrecision((paramRanges['max']-paramRanges['min'])*3, True); 2) Making it all work with mouseaccel=3, brokes keyboard arrow control (slowes 3 times). 3) Not all floats works, some large values still not (ex. TAP Reverb: Decay); 4) 'd' value from https://github.com/falkTX/Carla/blob/main/source/modules/dgl/src/EventHandlers.cpp#L463 looks like calculates correctly, but not used at places above.

jpka- commented 2 weeks ago

From previous #issuecomment-2327263474 (3. Not all floats works): it can be wrong, i.e. it looks like integer. So all floats should now work.