Go Back   Cockos Incorporated Forums > REAPER Forums > MIDI Hardware, Control Surfaces, and OSC

Reply
 
Thread Tools Display Modes
Old 02-19-2020, 08:11 PM   #1
billybuck
Human being with feelings
 
Join Date: Jan 2020
Posts: 67
Default Saving preset change info for VSTi's that don't use MIDI program change

I'm looking for a novel solution to a problem that's becoming more prevalent as fewer VSTi's support MIDI program change directly. There are now many hardware/software combos like my Arturia Keylab/Analog Lab, that trigger preset changes natively via MCU/HUI, or solely by mouse-clicking "unlearnable" arrows in the VSTi's GUI.

My band's songwriting process is to record long improvisations, then later chop those up, as in, "hey, that bit would make a good verse," etc. During these improvs, our keyboard player makes great use of Analog Lab's umpteen thousand presets, changing them at will as the music evolves.

Currently, the only way I can capture those preset changes is to record the audio output of the VSTi. However, that's less than ideal. It would be great to be able to edit flubs in MIDI during the editing process, or make after-the-fact changes to a preset such as removing massive reverb FX that don't sit well in a mix.

But, obviously, if I record two hours of improv as MIDI rather than audio, it's not going to note any of those preset changes he makes. Once we stop the recording and hit save, the entire MIDI track will now be rendered in whatever his last preset choice was.

I've even considered mounting a video camera over the Keylab's LCD screen during sessions (!) so I can see what preset he's using when, but this seems completely ridiculous. Every other nuanced parameter of the recording, from twists of the cutoff and resonance knobs, velocity, etc are being recorded on the MIDI track *except the very critical value of the core of the sound he's using.* How did we get here, and why is this OK?

I know that it's possible to laboriously select 128 favorite presets and then name and save them as Reaper FX presets that can be triggered via MIDI program change (and potentially noted on the MIDI track) but there are two issues with this method - one is that there's no practical way to send those preset names back to any controller's LCD screen so the keyboardist knows what patch he or she is selecting, and two, it completely defeats the purpose of hardware/software packages like the Arturia with limitless presets and their excellent preset filtering abilities (basses/pads/strings/leads/pianos/FX), which are rendered useless by using native DAW pre-selected preset lists.

Does anyone have a novel method for handling this? I'd even be OK with a script that writes out to a text file with the current track time and the hex code sent by the controller or VST. But do we really have to do this in the Year Of Our MIDI 2020?

This dilemma reminds of the late-night TV commercials for say, a cheap plastic, sliding drawer spice rack in which an old lady opens a cabinet with spices stored in the traditional way, and they all come tumbling out onto the floor. Inevitably, she throws up her hands in frustration and hollers "THERE MUST BE A BETTER WAY!"

Last edited by billybuck; 02-19-2020 at 08:19 PM.
billybuck is online now   Reply With Quote
Old 02-19-2020, 11:11 PM   #2
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,492
Default

While I don't understand the implication of what you call "hardware/software combo"....

Quote:
Originally Posted by billybuck View Post
My band's songwriting process is to record long improvisations, then later chop those up, as in, "hey, that bit would make a good verse," etc. During these improvs, our keyboard player makes great use of Analog Lab's umpteen thousand presets, changing them at will as the music evolves.
So this thread would better be located in the "Live" subforum,

Please take a look at the stick thread over there to maybe find additional input to your question / discussion.

How does the keyboarder change the patches ? If he uses the instrument's GUI, this supposedly can't be directly recorded, but see below (*).

IMHO it's not a good idea at all to directly touch the GUI of Reaper and everything embedded in it in a Live situation. Patch- / sound- changes should be doable in a "blind" and "haptic" way.

In my Live setup I use a control surface device to generate Midi messages that result in patch changes and soud tweaking. (In a previous instance of the setup I just used buttons on the Masterkeyboard for this.) And of course these messages can be recorded together with the musical Midi messages to be reproduced in an upcoming mix of the song.

So the question boils down to how to remote-control the patches by Midi messages.

(*) As Reaper allows for extensive scripting there should be a way to monitor the changes the VSTi imposes to it's VST parameters and convert them to Midi messages that can be recorded together with the musical Midi messages.

One way I can think of is to to one or multiple JSFX plugins that send Midi messages when their "Sliders>" are moved (see ReaPack -> Slider To MIDI PS and Slider to MIDI NRPM as examples) and define appropriate coupling between the VST parameters of the VSTi and the JEFX(es). One way for recording and the opposite way for playback.

With more scripting I suppose there will be smarter solutions.

-Michael

Last edited by mschnell; 02-20-2020 at 08:24 AM.
mschnell is offline   Reply With Quote
Old Yesterday, 06:07 AM   #3
TonE
Human being with feelings
 
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 2,050
Default

Better way is using bank select with program change, is not this enough? Not sure what your hardware or software is supporting exactly. Example: free Synth1, lots of banks available, easily switchable via above method, access to around 90 * 128 sounds.
TonE is online now   Reply With Quote
Old Today, 08:41 AM   #4
billybuck
Human being with feelings
 
Join Date: Jan 2020
Posts: 67
Default

The problem I'm describing is with the increasing number of VSTi's that *don't* support MIDI program change.

There's a trend with vendors like Arturia and NI offering products where the keyboard controller integrates closely with the VSTi so the player can browse and view patch names on the controller screen, but this data gets sent using OSC or the Mackie protocol. With those protocols, there's no way to note patch changes that occur while a recording is in progress.

Since data is being sent, there must be a way to capture/timestamp it, say to an external text file, and my OP is meant to ask if anyone has any novel ideas on how this could be done, or if there are any third-party scripts that could be useful as a starting point.
billybuck is online now   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 01:48 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, vBulletin Solutions Inc.