Service pack for Carla plugin host
Important
These patches (in this current/stable form) are currently adopted as is to special Carla git tree. To use it, no more need to patch by hand, but one need to:
git clone https://github.com/falkTX/Carla/
cd Carla
git checkout rack-ui-rework
make
source/frontend/carla
Carla plugin host is well known and quite useful software, especially if you not only musician, but also electronic or radio engineer.
However, it contain a number of long lasting bugs, most of them are not likely to going to be solved (i am would be happy if it is wrong). So i try to solve some, as well as add some new bugs scalable art.
I have carefully described each bit of what's changed or new: please see CHANGELOG.
This patch suite is intended to be used with current Carla git (54ebc83, which is v. 2.6.0-alpha1), not with release set. You must know how to patch and compile things.
I have tested it using 64-bit Archlinux; and only Lv2, Internal, Ladsp, and Sound kits, using JACK only, are tested (but that not means others will not work).
Please check CHANGELOG for commands and file list.
With Qt5:
make clean && make
With Qt6:
pacman -S python-pyqt6
make clean && make FRONTEND_TYPE=6
- For floating point values:
-
0...9: Set absolute value, like 0 to 90 percent of full scale.
-
Home,End: Same, 0 and 100%. Note:Homecurrently interferes with Canvas control hotkey (use0then).
- For integer and boolean values:
-
- Keys are same.
-
-
- If full scale span < 10, sets exact value.
-
-
-
- If full scale span < 20, sets doubled value. Etc. So, on larger spans, it is mostly work as for floats, but with integer step.
-
PgUp, PgDn: Scroll value up and down. Change precision: coarse (Shift), normal, fine (Ctrl), extra fine (both Ctrl & Shift).
Enter: Edit value. If it is button, cycles it instead (button editing is possible using E or Context menu).
E: Edit value.
D, R: Default value (Reset).
Space: Cycles scalepoint values. If it is button, it will be cycled also, if no scalepoints for it. If it is special Wet or Vol knobs with special state MUTE or THRU (Bypass) enabled: cycle this state, restoring previous value on un-mute/un-bypass.
Exactly same as Space on hover.
Set default value. If it is special Wet or Vol knobs with special state MUTE or THRU (Bypass) enabled: un-mute/un-bypass it, but unlike of click, previous value is lost and replaced by default value.
Edits value, except special cases: with Wet or Vol knobs when Left click is used, and if it's button. Note: Editing still possible for these using Enter (if not button), E, or Context menu.
(As well as DJ Jog device wheel action, it's often just HID scroll wheel)
- For floating point values:
Continuous change. Precision control: same as with
PgUp,PgDn. - For integer and boolean values:
Cycles all possible values, with step best suited for span. Precision control: Only
ShiftandCtrlwill work.
Scalepoints: (But, see #1976)
If exist for this control, they are used when values using keyboard and mouse cycling, but not when direct set (drag and 0 to 100 percent set) which still allows to use intermediate values, if any.
As before/classic (Continuous change); added Ctrl to increase precision. But:
- If it is scalepointed control, drag will either:
-
- not work (due to click used already), or
-
- work as usual with intermediate value set possibility. (Selected by tweak).
- If it is special Wet or Vol knobs and there is special state MUTE or THRU (Bypass) enabled and active: drag will un-mute/un-bypass it, but unlike of click, previous value is lost and replaced by drag result.
#1478 related



