Graphical User Interface mirroring the QuNeo MIDI controller. It can be used as a standalone GUI in SuperCollider, or in conjunction with an actual QuNeo hardware. When used with the hardware, GUI and QuNeo mirror each other (ie, pushing a button on the device will be reflected on the GUI and vice-versa).
The class assumes SuperCollider is running on a Linux computer with the Jack Audio Connection Kit handling both audio and MIDI (the default setup in the Santa Clara Laptop Orchestra). MIDI functionality will need some tweaking to work as expected on other systems (Mac OS and Windows).
The class is designed to work with a custom QuNeo Preset (a set of mappings for MIDI note numbers and control messages). The preset file is included with SCLOrkTools.
When used with the QuNeo controller, SCLOrkQuNeo will send back LED update information to the device so that changes on the GUI are also reflected on the hardware.
Creates a new instance of the SCLOrkQuNeo Graphical User Interface.
an instance of SCLOrkQuNeo.
Methods onSliderChange and onButtonChange allow users to define custom action for sliders and buttons. The function receives two arguments: slider value (0.0 to 1.0) and slider number for sliders; velocity (0-127) and midinote for buttons. GUI will show the control number or midinote for each slider or button. The two rotary knobs are considered sliders (ccNum 4 and 5).
Note: When playing buttons from the QuNeo, velocity will be a value between 0 and 127. When playing buttons from the GUI, velocity will be either 127 (button push) or 0 (button release).
This method is called when the user presses the "MIDI ON/OFF" button. There is no need to call it directly. The method will initialize MIDICLient and check whether there is a QuNeo connected.
Linux-specific. This method accesses the command line to check whether QuNeo is plugged in (amidi). It also checks whether the QuNeo is visible in the MIDIClient.destinations list.
verbose |
true or false. |
Linux-specific. Connects QuNeo MIDI In to SuperCollider MIDI Out and vice versa. This is done through Jack, so it assumes QuNeo is visible to Jack (e.g. using a2jmidid).
Customize the label (string of characters) shown on each slider.
ccNum |
The number of the slider you want to change the label. |
string |
The new label (a string of characters between double quotes). |
keepNumber |
true or false. If true, original number label (eg. "cc9") will be kept, prepended to the new label. |
Same as above but for buttons.
midinote |
Midinote number of the button you want to re-label. |
string |
New label. |
keepNumber |
true or false. If true, original number label will be kept prepended to the new label. Strings that are too long will not fit nicely on button. One or two short words are best. You can force a line break in the string using \n if needed. |
The MIDI channel used to communicate with the QuNeo. In the preset used by SCLOrk, this is channel 12 (11 in SuperCollider). No need to use this method directly.