Go Back   Cockos Incorporated Forums > REAPER Forums > REAPER for Live Use

Reply
 
Thread Tools Display Modes
Old 08-24-2016, 06:06 AM   #1
Soli Deo Gloria
Human being with feelings
 
Soli Deo Gloria's Avatar
 
Join Date: Oct 2013
Location: Buenos Aires, Argentina
Posts: 916
Default Native Preset Management : more flexibility and per instance handling

First of all, excuse me if this has already been requested...I havenīt found a proper request such as this but I might be wrong.

Native preset management, as it stands, is not precisely what I would call "flexible". You can only save/recall presets in a global fashion (that is, user presets appear on every instance of the plug). There seems to be no easy way to have a dedicated bank of presets for every instance of a FX (I mean, at least without having to deal with .ini files and all of that, which in itself would be a total mess for many of us).

Regarding this, Native Instrumentsīsynths (mainly FM8, Absynth and Massive come to mind right now, which are the ones I use most) are, in my opinion, exemplary...you can activate/deactivate a bank of 128 programs per instance in which you can load anything that is included in the global database : internal, third party and user presets are easily arranged in the bank and you can have a dedicated list per instance.

Now, if we could just have a way to manage presets more flexibly, with options to have global and/or per instance user libraries, it would be remarkably more useful. When you import a .RPL library, for example, the imported presets are added to the existing list, so you end up with a massive list of all prresets for all projects. Deletion of user presets seems to be done one by one, if Iīm not mistaken. At the very least, .RPL libraries should have the possibility to be saved/recall per instance, in my opinion.


Please, correct me if Iīm wrong in some of my statements, but I havenīt found an easy way to handle presets per FX instance. I also donīt know if this section of the forum is attended at all, but I canīt help suggesting this since it would be of great help with, for example, something like Live Configs from the SWS Extensions...
Soli Deo Gloria is offline   Reply With Quote
Old 08-24-2016, 08:39 AM   #2
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,171
Default

Quote:
Originally Posted by Soli Deo Gloria View Post
I havenīt found an easy way to handle presets per FX instance.
How easy do you want it to be ?

I use a (very small) self-made JSFX that sends out a program change message (defined by a slider) when activated. Now I use SWS LiveConfigs to change global patches and in each appropriate "line" of LiveConfigs I set a preset of that JSFX that I stored before with an appropriate name.

Works great, but I admit that this is not exactly "easy".

A decent request could be to to have the makers of SWS update LiveConfigs to send out midi messages to tracks. But I do see that this is not exactly easy to do (I suppose it would need some receiver plugin in the tracks FX chain) and SWS development is not fast these days.

-Michael
mschnell is offline   Reply With Quote
Old 08-24-2016, 09:56 AM   #3
Soli Deo Gloria
Human being with feelings
 
Soli Deo Gloria's Avatar
 
Join Date: Oct 2013
Location: Buenos Aires, Argentina
Posts: 916
Default

Hi mschnell!

The thing is... Reaperīs preset list for each FX is global, isnīt it? I donīt find an easy way to create a dedicated user preset list for each instance of a FX. To have a global list with all presets for all projects is not really workable in my case...
Soli Deo Gloria is offline   Reply With Quote
Old 08-24-2016, 01:17 PM   #4
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,171
Default

Sorry but I don't really understand what you mean.

A "preset" in a plugin (also known as "program", "patch", or "instrument in a bank" in Kontakt speak) is selected by sending a program change message to the plugin. And not (especially not with Kontakt) by loading a Reaper "preset", which is a collection of all published parameters of the plugin and in Kontakt will result in reloading all samples.

So (AFAIK) the only fast way to switch instruments in Kontakt is to organize the instruments in a bank and send a Midi PC message to Kontakt. (I did not research if there is a "bank position" or similar plugin parameter that might be able to be automated by Reaper, as I searched for a method that can be used with any plugin that internally features multiple patches to be be selected.)

That is way I made a JSFX that features a slider with the PC-No to be sent. Now I save multiple Reaper presets for this plugin (and not for the one that creates the sounds) and when loading the preset, simply a Midi PC is sent, that again selects the appropriate patch/instrument in the sound plugin.

-Michael
mschnell is offline   Reply With Quote
Old 08-24-2016, 06:34 PM   #5
Soli Deo Gloria
Human being with feelings
 
Soli Deo Gloria's Avatar
 
Join Date: Oct 2013
Location: Buenos Aires, Argentina
Posts: 916
Default

Well, the concepts of preset/patch/bank are understood from the beginning, of course. I think Iīm not explaining myself correctly in english, so Iīll put an example :

Say I have three tracks, each with an instrument and an instance of ReaEQ. Now the issue is : if I want to have a custom preset list for each instance of ReaEQ, I canīt. All I can have is a global user preset list, which appears on every instance in the same way. If I import a .RPL library, it is simply added at the end of the list, so itīs not flexible at all. I simply need to change presets with a list per instance, to set up, for example, different EQ sections for each particular instrument on each track (linking them, i.e., to program changes). Up until now, Reaper presets are handled globally and you can only see a single user presets list on every instance.

Am I explaining it better, now?
Soli Deo Gloria is offline   Reply With Quote
Old 08-24-2016, 10:16 PM   #6
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,171
Default

You can save a preset of any plugin with a name. Same will contain the settings of all parameters of that plugin.

So if you have a track containing Kontakt and RaeEQ and want four sounds/patches, You can do the following:

- Add my little "Slider to Midi PS" plugin before Kontakt to process the Midi Stream
- set Kontakt to the first sound ("instrument in bank") by moving the slider of "Slider to Midi PS" and tweak the EQ
- save a preset (by "+") of both "Slider to Midi PS" and ReaEQ wirh appropriate names.
- do same for the other two sound(patches
- set four "lines" in SWS LiveConfigs" to each load the appropriate presets of "Slider to Midi PS" and ReaEQ.

Now when selecting a line in LiveConfigs, both Kontakt and ReaEQ will switch to the desired setting.


I did not yet use LiveCoinfigs to activate multiple tracks at the same time. I understand that this is possible by using multiple pages "Configs" (that of course can be handled in the way described). I use multiple pages assigned each to a masterkeyboard to independently switch the patches (unmute the appropriate track and push presets to the plugins there) of either.

IMHO for using multiple sound in parallel in such a "live" situation, it's more appropriate to use a single track and do "parallel FX chains" by making use of assigning the "pins" of the plugins to the appropriate channels (up to 64) within an FX "chain" (than is more like a "net" then).

-Michael

Code:
desc:Slider to Midi PS

slider1:1<1,16,1>Midi Channel
slider2:1<1,128,1>PS

@init
 ps = 0xC0-1;
 mes2 = 0;
 mes2old = -1;

@slider
 mes1 = ps + slider1|0;
 mes2 = (slider2|0) - 1;

@block
 mes2 != mes2old ? (
 midisend(0,mes1,mes2);
 mes2old = mes2;
 );

Last edited by mschnell; 08-24-2016 at 10:34 PM.
mschnell is offline   Reply With Quote
Old 08-24-2016, 11:05 PM   #7
noise_construct
Human being with feelings
 
Join Date: Nov 2015
Posts: 1,566
Default

Yes, it could be beneficial to be able to choose between per-project presets and the global list.
noise_construct is offline   Reply With Quote
Old 08-25-2016, 08:30 AM   #8
Soli Deo Gloria
Human being with feelings
 
Soli Deo Gloria's Avatar
 
Join Date: Oct 2013
Location: Buenos Aires, Argentina
Posts: 916
Default

Quote:
Originally Posted by mschnell View Post
You can save a preset of any plugin with a name. Same will contain the settings of all parameters of that plugin.

So if you have a track containing Kontakt and RaeEQ and want four sounds/patches, You can do the following:

- Add my little "Slider to Midi PS" plugin before Kontakt to process the Midi Stream
- set Kontakt to the first sound ("instrument in bank") by moving the slider of "Slider to Midi PS" and tweak the EQ
- save a preset (by "+") of both "Slider to Midi PS" and ReaEQ wirh appropriate names.
- do same for the other two sound(patches
- set four "lines" in SWS LiveConfigs" to each load the appropriate presets of "Slider to Midi PS" and ReaEQ.
Fine, thanks for the tips and the code! Now, while that is clear as crystal, letīs put another example to clarify the topic. Weīll now forget about Kontakt; suppose you have a track with Absynth and an instance of ReaEQ. Dealing with Absynthīs patches is as easy as it can get, so letīs focus on ReaEQ... You have a project to play live and you save 10 different presets on ReaEQ for different moments of the gig (Iīm talking about Reaperīs own preset system). It is obviously easy with to switch between those ten ReaEQ presets linking them to Program Changes, therīs no doubt about it, but from now on every instance of ReaEQ has that same list of user presets (!). Suppose that you have a different list with other 10 presets exported as a .RPL file. You create another track, put another synth and ReaEQ and import the .RPL list on that second ReaEQ. Now, you have a global user presets list with 20 presets!

Am I not being clear with this? Thereīs only a single, global, unified user preset list for all instances of a given plugin. Besides, whatīs more inconvenient is that its presets can only seem to be removed one by one (!) - unless you deal with .ini files, which is not friendly at all -. A global user preset list is just fine to have a collection of standard settings available everytime you load a plugin, for sure... But on many cases you need a dedicated preset list per instance, to switch between different configurations on each instance of the plugin.

Remember, just grab FM8 or Absynth, to give just a couple of examples, and activate its internal program bank (which is graciously informed to the host, as we know). You now have a dedicated program/preset list for that instance alone, and if you open another instance of the same instrument, you have another blank list available for it. Thatīs the most flexible approach, but it does not seem to be the case with Reaperīs preset system...

Quote:
Originally Posted by noise_construct View Post
Yes, it could be beneficial to be able to choose between per-project presets and the global list.
Thanks for chiming in and supporting the request! I would emphasize "per-instance presets", as it is the most open and flexible way in my opinion...
Soli Deo Gloria is offline   Reply With Quote
Old 08-25-2016, 09:17 AM   #9
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,171
Default

Quote:
Originally Posted by Soli Deo Gloria View Post
FIt is obviously easy with to switch between those ten ReaEQ presets linking them to Program Changes, ... Am I not being clear with this?
I never tried this, so I did not understand that this is your problem. I used LiveConfigs from the beginning of the design of my setup.

Here, LiveConfigs receives the Program change messages from outside (in fact via MidiPC2CC and MidiToReaControlPath) and now LiveConfigs pushes the Paramneters to an (e.g.) ReaEQ instance. Here the instance and the track are clearly defined. No "global" setting at all.

The "request" would be no less than a full integration of LiveConfigs in Reaper. That might be nice, but OTOH, there are only few users that really need such thing. So IMHO using LiveConfigs as a (free) add-on is a good solution.

-Michael

Last edited by mschnell; 08-29-2016 at 09:59 PM.
mschnell is offline   Reply With Quote
Old 08-25-2016, 09:57 AM   #10
Soli Deo Gloria
Human being with feelings
 
Soli Deo Gloria's Avatar
 
Join Date: Oct 2013
Location: Buenos Aires, Argentina
Posts: 916
Default

Quote:
Originally Posted by mschnell View Post
The "request" would be no less than a full integration of LiveConfigs in Reaper. That might be nice, but OTOH, there are only few users that really need such thing.
Do you think so? What I say doesnīt necessarily have to do with Live Configs, one could take advantage of it with only Program Changes coming from a Midi item in a studio situation, to put an example... NIīs popular synths prove that what I suggest must not be that arcane/esoteric...the ability to have a dedicated preset list for each instance of a FX/instrument, no more no less.
Soli Deo Gloria is offline   Reply With Quote
Old 08-29-2016, 07:18 PM   #11
woodslanding
Human being with feelings
 
woodslanding's Avatar
 
Join Date: Mar 2007
Location: Denver, CO
Posts: 413
Default

What you need to be able to do is save/load an FXB file. Part of the VST spec. All figured out adequately by Steinberg 15+ years ago. Should be saved as part of the plugin instance state by the host. Works with all the hosts I've tried so far (haven't checked with Reaper, as I don't use it live.)

Do Reaper/JS plugIns have no analogue?

I would just recommend using VSTs then. Lots of free ones. But it seems silly that the Reaper plugs wouldn't have at least the equivalent technology to VST, being quite a bit more recent a standard.
__________________
eric moon
Very Stable Genius
https://gogolab.com/
woodslanding is offline   Reply With Quote
Old 08-29-2016, 10:11 PM   #12
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 8,171
Default

Of course Reaper does save the VST parameters according to the VST standard and of course with Kontakt you can load an instrument and tweak it's parameters and then have Reaper save the sound either in a "Preset" (via the "+" Icon) or in the project via "Save Project".

But with that Kontakt will reload the complete sample library when the preset is loaded (e.g. when having Reaper push the saved parameters ("+"-Preset) onto the plugin, and Kontakt obviously takes a considerable amount of time to do that.

Hence using Kontakt's internal preset ("instrument") list is more appropriate for a live setup. (Moreover a modification of an instrument parameter done live is preserved after an internal preset change back and forth, but lost when using Reaper's "+" presets).

And (AFIK), the parameter "position in internal preset list" is not part of the VST standard, but usually managed by sending a midi program change message to the plugin.

-Michael
mschnell is offline   Reply With Quote
Old 04-19-2018, 10:08 PM   #13
woodslanding
Human being with feelings
 
woodslanding's Avatar
 
Join Date: Mar 2007
Location: Denver, CO
Posts: 413
Default

Just getting back into this 2 years later...

I've discovered that I can save reaper presets for kontakt, and was very excited to realize I could save them into library banks.

Then I realized that when I load a reaper bank into kontakt, the presets are merged with those already there which quickly results in a gigantic preset list. So I searched and found this thread again.

Is there some way to kludge bank behaviour out of reaper preset libraries, so they work like the banks in Massive, Reaktor, Synth1, etc? Maybe I could write a script that deletes all existing presets and then loads a bank? But then of course all my instances would show the new bank, correct?

+1 for load reaper library banks per instance
__________________
eric moon
Very Stable Genius
https://gogolab.com/
woodslanding is offline   Reply With Quote
Old 04-19-2018, 11:24 PM   #14
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 23,634
Default

I absolutely don't see any benefit of per-instance preset list, personally... What could help is having subfolders in the current preset list, though, so that you could sort those presets better.

Also being able to have presets in Project Bay might be beneficial too...
EvilDragon is online now   Reply With Quote
Old 04-21-2018, 02:16 PM   #15
woodslanding
Human being with feelings
 
woodslanding's Avatar
 
Join Date: Mar 2007
Location: Denver, CO
Posts: 413
Default

well, on further thought, it occurs to me I can just have a script that, when I say 'open kontakt pianos' deletes all the presets for kontakt, and loads the piano library.

The fact that the other instances now would see pianos doesn't matter, because when I open the kontakt drum instance, it will do the same thing.

This is presuming I can create a script with a bunch of buttons called 'pianos', 'drums', etc, and each can run the script with the data from its button name, opening the appropriate track and loading its library.

The underlying issue being that I don't want to use the reaper preset menu, because I will be using a touchscreen, and everything needs to be selectable from buttons in a script.

EDIT: well, I guess if I can actually load a preset file by name, I can make my own sublists anyway.... is this possible? If the presets are not in folders that does mean that there is an issue of needing unique names for every single one... but that's manageable

I've just got patch changes set up this way in my live host, and would like to be able to do something similar in REAPER.
__________________
eric moon
Very Stable Genius
https://gogolab.com/

Last edited by woodslanding; 04-21-2018 at 10:55 PM.
woodslanding is offline   Reply With Quote
Old 04-25-2018, 01:56 PM   #16
woodslanding
Human being with feelings
 
woodslanding's Avatar
 
Join Date: Mar 2007
Location: Denver, CO
Posts: 413
Default

Looking into this further:

Apparently RPL files can contain one preset (like fxp) or many (like fxb). All the ones you just save internally via 'save preset' get stored in the .ini for the instrument and NOT as separate files. That's why you can't find the files when you search by name. If you rename the ini file, i.e. "VST-Kontakt 5 8 out.ini.OLD" so that reaper doesn't find it, it will not load any presets.

There is the 'reset to factory defaults' command. It does not seem to clear presets out of the ini file--but it does make the instance of Kontakt ignore it. That eliminates the need to delete any presets!

So, to change the preset list for a particular instance of Kontakt, I can reset to defaults and load an RPL with the presets for the appropriate bank. Then I can get the user preset names list (or bank) from the instance, and populate my buttons with it. Pressing a button would load the preset by name.

Provided all four commands are scriptable.... maybe someone can clarify that...

cheers,
-eric
__________________
eric moon
Very Stable Genius
https://gogolab.com/
woodslanding is offline   Reply With Quote
Old 04-26-2018, 09:13 PM   #17
woodslanding
Human being with feelings
 
woodslanding's Avatar
 
Join Date: Mar 2007
Location: Denver, CO
Posts: 413
Default

Oh yes, I remember. This is where I gave up 2 years ago, because the only way anyone could figure for me to get access to the list of preset names in the reaper dropdown was to call every preset in order, which is obviously a bad idea in the case of Kontakt.

But now it occurs to me I could probably parse a given library file to get a list of presets before I load it into the vst....

That doesn't help with vsts that furnish a list to the host, though.

Crap.

Oh yeah, I remember. Then I found out there were ways to automatically create a reabank from a vst, and I guess I could parse that to get a list in that situation.

Sure would be nice if I could just get the preset list from Reaper. But that's a 2 year old API request now, so I guess that's a no go. Just doesn't seem like it would be hard to do.

Just nobody but me wants it.
__________________
eric moon
Very Stable Genius
https://gogolab.com/
woodslanding is offline   Reply With Quote
Old 04-27-2018, 12:51 AM   #18
ecl
Human being with feelings
 
ecl's Avatar
 
Join Date: Jul 2014
Posts: 404
Default

Quote:
Originally Posted by EvilDragon View Post
What could help is having subfolders in the current preset list, though, so that you could sort those presets better.

Also being able to have presets in Project Bay might be beneficial too...
Totally Agree,Folder Sorting, Editing Names, List Position...

All this would be really helpful

ecl is offline   Reply With Quote
Old 05-05-2018, 03:52 PM   #19
Soli Deo Gloria
Human being with feelings
 
Soli Deo Gloria's Avatar
 
Join Date: Oct 2013
Location: Buenos Aires, Argentina
Posts: 916
Default

Quote:
Originally Posted by EvilDragon View Post
I absolutely don't see any benefit of per-instance preset list, personally... What could help is having subfolders in the current preset list, though, so that you could sort those presets better.

Also being able to have presets in Project Bay might be beneficial too...
Really?? I see it the other way around, from a practical point of view... While I donīt deny the usefulness, in many cases, of a global preset list, there are countless situations from a compositional point of view where you need to have dedicated preset lists for one or various specific instruments in a project, lists of presets which will only be used there, i.e. across different sections of the composition. Think about it twice and youīll see itīs not a whim but a potential necessity (and one which I happen to encounter quite often). Iīd rather think about this request as the coexistence of both concepts, not just one...

Subfolders is not a bad idea, I agree, but the NI solution (as found in FM8, Absynth, etc) is for my taste far more elegant since it avoids the potential clutter you can get with a global list

BTW, I rediscovered this thread just because I faced the problem once again and did a quick search for any unnoticed workaround regarding this...

Last edited by Soli Deo Gloria; 05-05-2018 at 04:01 PM.
Soli Deo Gloria is offline   Reply With Quote
Old 03-08-2019, 12:31 AM   #20
woodslanding
Human being with feelings
 
woodslanding's Avatar
 
Join Date: Mar 2007
Location: Denver, CO
Posts: 413
Default

I am organizing and controlling presets from reaticulate now. He is starting to add more support for 'regular' presets, and is curious if others are interested. I recommend checking it out.

By creating reabank files, you can sort your presets and select groups of them from submenus.... and select individual presets from named buttons. And the list updates as you select different tracks. You can put presets from multiple plugins into the list easily.

The hardest part is creating the reabank files. MPL's action to create reabank files works pretty well on my desktop machine, but tanks on my laptop, where it doesn't seem to wait for new presets to load, so I only get the first couple.

But on my desktop, I've been able to create reabank files even from Kontakt.

cheers,
-eric
__________________
eric moon
Very Stable Genius
https://gogolab.com/
woodslanding is offline   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 08:20 AM.


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