Hi folks,
I love certain Lv2 instruments and effects, like OBXD and the IR reverb. However, one cannot directly automate their parameters in LMMS, making them somewhat lifeless. Below, I describe an effective workaround to automate parameters from LMMS to Carla and lv2 parameters
What you gain: automatically change lv2 parameters, sending messages from lmms via velocity. Discrete changes only (not smooth vector changes)
What you sacrifice: a single midi note, some time, maybe some frivilous processing
What you need: carla-lmms, carla-git, Note2CC.lv2 (https://x42.github.io/midifilter.lv2/ht ... etocc.html), all in Kxstudio Repos
Instrument set-up (i.e., what you normally do with Carla)
1) in LMMS, load a Carla-Patchbay instrument, add midi notes to the instruments piano roll as you normally would
2) open Carla-Patchbay, click "add plugins" to load your favourite instrument. I tried it with the Cabbage-lv2 additive syntheszier.
3) Setup all the Carla Patchbay connections as you normally would: i.e., in the Patchbay tab, connect the 'Midi-out:events-out' to the 'events-in' of your instrument; connect the 'audio-out' of your instrument to the 'Audio-Output' box ,etc. Make sure you are successfully generating sound and controlling the instrument from LMMS.
4) Select a midi-note to use for Automation-via-velocity. No need to do anything now, just find a low note (like midi-note 1) that is too low for audible sound. In this example I choose midi-note 1. Consider adding a notch-filter or low-pass filter in your carla-patchbay chain to further ensure that it doesn't generate any sound. (A better, but more elaborate solution is to additionally use MIDI Key-Range FIlter and Midi Channel Map to ensure that midi-note 1 is remapped to produce no sound, only send CC/automation messages, but the follow will work to demonstrate the idea).
Lv2 Automation
1) In Carla-Patchbay, click 'Add Plugins' and search and add Note2cc.
2) in the Carla Patchbay tab, ensure that the 'Midi Output: events-out' is connected to Note2cc:event-in'. Likewise, connect 'Note2cc:events-out' to the 'events-in' of the instrument you want to automate.
3) in the Carla 'Rack' tab, click on the WRENCH ICON of your instrument to load the Parameter Editor (not the instruments' GUI)
4) in the 'Edit' Tab (bottom of the Parameter Editor), make sure "Send Control Changes" is CHECKED. If this option is greyed out, you cannot do automation. Mentally note and remember of the 'Midi-Control-Channel'
4) in the Parameter Editor, locate the slider/controls for the parameter you want to automate i.e., click among the bottom tabs in the Parameter Editor until you find your parameter. For the Cabbage Additive synth example, I wish to automate the parameter 'Partials' which is the third parameter in the tab "Parameters (1)"
5) For the target parameter, change the "(none)" dropdown option to "cc#2" (or whatever control value you want; its only a concern if you are simultaneously using an external midi-hardware controller and must reserve cc#2 for other purposes). You will use this cc value in step 7 below
6) Close the Instrument's Parameter Editor
7) Open the Parameter Editor for Note2CC (i.e., click the WRENCH icon in Carla Rack tab), and click on the bottom tab labelled "Parameters (1)". Set the follow parameters:
"Filter Channel" slider to 1, (none), ch 1;
"Operation Mode" slider to 0, (none), ch1;
"CC Parameter" slider to 2, (none), ch1; important step, make sure the slider value equals the cc# value from step 5 above
"Active Key (midi-note)" slide to 1 note, (none), ch1; important step, you will use this midi note below in step 8.
Exit the Note2CC parameter Editor
8 ) Almost done! Back in LMMS, open the piano-roll of your Carla-Patchbay instrument, and add notes on midi-note 1. At the bottom of the piano-roll, adjust the velocity of midi-note 1 to increase or decrease the target-parameter's value. High velocity = high parameter value, etc. TIP: make the note as short as possible, like 1/64, so that it triggers the new parameter value but doesn't consume a lot of DSP power. The parameter value will sustain until the next midi-note 1 is triggered to change it.
9) Verify its working: run the piano roll in loop-mode and watch whether the parameter value slider is indeed going up and down as desired.
Hope that is useful. Consider exporting the Carla-Patchbay to a .carxp file so that you can use the setup as a template in the future. If anyone has an easier method, please let us know.
If you find this useful, I can elaborate on the use of MIDI Key-Range FIlter and Midi Channel Map to ensure that midi-note 1 is remapped to produce no sound, only send CC/automation messages.
I love certain Lv2 instruments and effects, like OBXD and the IR reverb. However, one cannot directly automate their parameters in LMMS, making them somewhat lifeless. Below, I describe an effective workaround to automate parameters from LMMS to Carla and lv2 parameters
What you gain: automatically change lv2 parameters, sending messages from lmms via velocity. Discrete changes only (not smooth vector changes)
What you sacrifice: a single midi note, some time, maybe some frivilous processing
What you need: carla-lmms, carla-git, Note2CC.lv2 (https://x42.github.io/midifilter.lv2/ht ... etocc.html), all in Kxstudio Repos
Instrument set-up (i.e., what you normally do with Carla)
1) in LMMS, load a Carla-Patchbay instrument, add midi notes to the instruments piano roll as you normally would
2) open Carla-Patchbay, click "add plugins" to load your favourite instrument. I tried it with the Cabbage-lv2 additive syntheszier.
3) Setup all the Carla Patchbay connections as you normally would: i.e., in the Patchbay tab, connect the 'Midi-out:events-out' to the 'events-in' of your instrument; connect the 'audio-out' of your instrument to the 'Audio-Output' box ,etc. Make sure you are successfully generating sound and controlling the instrument from LMMS.
4) Select a midi-note to use for Automation-via-velocity. No need to do anything now, just find a low note (like midi-note 1) that is too low for audible sound. In this example I choose midi-note 1. Consider adding a notch-filter or low-pass filter in your carla-patchbay chain to further ensure that it doesn't generate any sound. (A better, but more elaborate solution is to additionally use MIDI Key-Range FIlter and Midi Channel Map to ensure that midi-note 1 is remapped to produce no sound, only send CC/automation messages, but the follow will work to demonstrate the idea).
Lv2 Automation
1) In Carla-Patchbay, click 'Add Plugins' and search and add Note2cc.
2) in the Carla Patchbay tab, ensure that the 'Midi Output: events-out' is connected to Note2cc:event-in'. Likewise, connect 'Note2cc:events-out' to the 'events-in' of the instrument you want to automate.
3) in the Carla 'Rack' tab, click on the WRENCH ICON of your instrument to load the Parameter Editor (not the instruments' GUI)
4) in the 'Edit' Tab (bottom of the Parameter Editor), make sure "Send Control Changes" is CHECKED. If this option is greyed out, you cannot do automation. Mentally note and remember of the 'Midi-Control-Channel'
4) in the Parameter Editor, locate the slider/controls for the parameter you want to automate i.e., click among the bottom tabs in the Parameter Editor until you find your parameter. For the Cabbage Additive synth example, I wish to automate the parameter 'Partials' which is the third parameter in the tab "Parameters (1)"
5) For the target parameter, change the "(none)" dropdown option to "cc#2" (or whatever control value you want; its only a concern if you are simultaneously using an external midi-hardware controller and must reserve cc#2 for other purposes). You will use this cc value in step 7 below
6) Close the Instrument's Parameter Editor
7) Open the Parameter Editor for Note2CC (i.e., click the WRENCH icon in Carla Rack tab), and click on the bottom tab labelled "Parameters (1)". Set the follow parameters:
"Filter Channel" slider to 1, (none), ch 1;
"Operation Mode" slider to 0, (none), ch1;
"CC Parameter" slider to 2, (none), ch1; important step, make sure the slider value equals the cc# value from step 5 above
"Active Key (midi-note)" slide to 1 note, (none), ch1; important step, you will use this midi note below in step 8.
Exit the Note2CC parameter Editor
8 ) Almost done! Back in LMMS, open the piano-roll of your Carla-Patchbay instrument, and add notes on midi-note 1. At the bottom of the piano-roll, adjust the velocity of midi-note 1 to increase or decrease the target-parameter's value. High velocity = high parameter value, etc. TIP: make the note as short as possible, like 1/64, so that it triggers the new parameter value but doesn't consume a lot of DSP power. The parameter value will sustain until the next midi-note 1 is triggered to change it.
9) Verify its working: run the piano roll in loop-mode and watch whether the parameter value slider is indeed going up and down as desired.
Hope that is useful. Consider exporting the Carla-Patchbay to a .carxp file so that you can use the setup as a template in the future. If anyone has an easier method, please let us know.
If you find this useful, I can elaborate on the use of MIDI Key-Range FIlter and Midi Channel Map to ensure that midi-note 1 is remapped to produce no sound, only send CC/automation messages.