Go Back   Cockos Incorporated Forums > REAPER Forums > ReaScript, JSFX, REAPER Plug-in Extensions, Developer Forum

Reply
 
Thread Tools Display Modes
Old 05-06-2023, 03:31 PM   #1
helgoboss
Human being with feelings
 
helgoboss's Avatar
 
Join Date: Aug 2010
Location: Germany
Posts: 2,338
Default Early access: Pot Browser - Slick preset browser, crawler and preview recorder

UPDATE: Pot Browser is available now, as an early access version.

As I've mentioned already, Pot Browser is a part of ReaLearn, so you need to install ReaLearn as described here. Not just any version, it must be the latest one: 2.15.0-pre.4. This is a pre-release, so be sure to read the section "Test new features and improvements" on that page.

Even though Pot Browser is a part of ReaLearn, it can be used without ever touching ReaLearn's MIDI/OSC features (*) The easiest way to use it is to add a ReaLearn plug-in instance on REAPER's monitoring FX chain (View => Monitoring FX). This makes the browser accessible from any project. Once you have done that, you can open the browser from the ReaLearn plug-in window ("Menu => Open Pot Browser") or via REAPER action "ReaLearn: Open first Pot Browser" (only available if at least one plug-in instance of ReaLearn is loaded). For convenient access, you can assign the REAPER action to a toolbar button as I've done in the video: https://www.youtube.com/watch?v=zSRwvC0fhy0

Oh yes, make sure you use this with a recent version of REAPER!

Now have fun exploring this new tool! The user interface is hopefully pretty much self-explaining. There are tooltips all over the place, so just move the mouse pointer over some elements to get help. Some functions are accessible via right-clicking elements.


(*) But of course you can also combine the two using ReaLearn's "Pot" targets. It's much fun to control the Pot Browser from your MIDI/OSC devices


Background

Here's the result of a little side project I've been working on recently and want to publish as "early access" very soon (before finally getting back to full-time development on Playtime 2, so excited!): Pot Browser

Pot Browser literally throws everything into one large pot. It's a preset browser that gives you a unified view over all of your plug-in presets. Well, maybe not all, but ... a lot. In addition to some of REAPER's own preset formats, it supports reading the NI Komplete database. In many situations it can be used as a replacement for Native Instrument's own Komplete Kontrol plug-in, with more powerful features and better integration into REAPER.

The bad news first: It can't load the preset formats of Native Instrument's own plug-ins (e.g. ".nfm8" for FM8 or ".nki" for Kontakt). And maybe it never will, because of their proprietary nature.

The good news: It can load NKS presets, and that means you can enjoy full support for 3rd-party (non-NI) plug-ins that support the NKS standard. That gives you instant access to many thousands of well categorized presets, often with pre-mapped macro parameters.

But watch for yourself:



Oh yes, Pot Browser is going to be a part of ReaLearn, so it comes with a good deal of controller integration possibilities, including support for displaying e.g. preset names on hardware displays. Plus, it means we are NOT dealing with yet another script here. We are dealing with a native extension that runs with full native speed and is not subject to the limitations of ReaScript. Even now, in its early stage, Pot Browser is already taking advantage of multi-threading, database access and many other native features in order to provide a smooth browsing experience.


Interested? Feel free to ask questions!

Features

Open development, FRs welcome: This software is open-source and the developer is open for feature requests. In addition, it has an open architecture that allows for relatively easy addition of new databases.

It's fast!: This is not a script, it's a native extension. So you get native speed, multi-thread background processing and a responsive user interface.

Support for multiple preset sources and formats: Combines presets from multiple sources (so-called "databases"), including REAPER FX chains, REAPER FX presets, REAPER FX default presets, REAPER track templates and NI Komplete/NKS.

Advanced support for NKS presets: Supports loading NKS presets from the NI Komplete database without needing Komplete Kontrol as a wrapper plug-in. Including pre-mapped parameters!

Support for multiple plug-in standards: Supports VST2, VST3, CLAP and JS plug-ins. Audio files are opened in RS5k, REAPER's lightweight sampler.

Automatic track naming: Automatically names tracks according to the preset.

User-friendly interface: The user interface dedicates much screen space to preset browsing. On Windows, it's resizable.

Comprehensive filtering: Provides convenient filters to narrow down the preset list very quickly. Merges Komplete's Instrument/Effect filters with the currently installed products/plug-ins in REAPER for a unified view over all presets, no matter where they come from.

Global exclusion: Users can easily exclude products and databases from showing up.

Text search: Allows users to search presets using text. Advanced search is possible by using wildcards.

Keyboard control: It's possible to control part of the browser by using the keyboard.

Favorite presets: Users will be able to mark favorite presets across multiple databases and filter them (not yet possible in the early-access version).

Controller compatibility: Works with any controller that can be made to work in ReaLearn (= most controllers).

Good for sharing projects: Other users do not need Komplete Kontrol or ReaLearn to load the resulting project.

Preset Crawler: Provides a tool that automates the extraction of presets that are only available from within the plug-in's internal preset browser.

Preview Recorder: Provides a tool that can automatically generate short previews for presets.



Known issues so far

- During early-access phase, settings and favorites will not be saved between REAPER restarts. I will sort that out later. It's possible that I will ask users to purchase a license to be able to save settings/favorites.
- Modifying and saving presets is not possible. At least not conveniently. But of course, you can always manually save a preset, e.g. via REAPER's "Save preset..." or as an FX chain. Pot Browser will pick it up! Planning to add more convenient support for that in the long run.
- Doesn't run on Linux so far. I hope to solve that in the long run.

Some disadvantages compared to Komplete Kontrol

- You can't select multiple filters of one kind at once. That's not something I care about so probably not coming any time soon.
- It can't scan for new Komplete instruments/presets. You need to start Komplete Kontrol once for doing a rescan, after that you are good to go. No need to restart ReaLearn.
- It can't load presets for Native Instruments own plug-ins. AFAIK, NI doesn't publish any information how to open them from "outside". This is proprietary communication between Komplete Kontrol and the NI plug-ins, otherwise it could easily be done. That's why all Pot Browser can do, is to assist you in loading them manually. For some plug-ins, the preset crawler might be a solution.
- Doesn't support the Komplete Kontrol keyboards series. AFAIK, NI doesn't publish any information how to talk to the displays and so on, otherwise it could be done.


UPDATE:
- 2023-05-09: Added list of features
- 2023-05-15: Released version for early access

Last edited by helgoboss; 05-23-2023 at 09:01 AM. Reason: Updated latest version
helgoboss is offline   Reply With Quote
Old 05-06-2023, 04:18 PM   #2
DaniloVillanova
Human being with feelings
 
Join Date: Jan 2019
Posts: 275
Default

Hey, this looks amazing! Few questions:

Does the preset grab function work with any plugin?

Can another sampler be used to load audio files from pot browser?

I have a keyboard with a built in script for Reaper (Nektar T6) which also has MCU support with a screen. How difficult would be to program the screen to show preset names, macro controls, etc.?

Cheers, thanks for this awesome extension!
DaniloVillanova is offline   Reply With Quote
Old 05-06-2023, 05:25 PM   #3
sgarza
Human being with feelings
 
Join Date: Sep 2020
Posts: 13
Default

this looks awesome specially the integration with ReaLearn part. Love your work! Thank you!
sgarza is offline   Reply With Quote
Old 05-06-2023, 06:26 PM   #4
foxAsteria
Human being with feelings
 
foxAsteria's Avatar
 
Join Date: Dec 2009
Location: Oblivion
Posts: 10,329
Default

Now that is awesome!!!
__________________
foxyyymusic
foxAsteria is offline   Reply With Quote
Old 05-06-2023, 09:02 PM   #5
Malandro
Human being with feelings
 
Join Date: Jul 2022
Posts: 145
Default

This looks amazing! Great job. I especially like the ease and the speed of hearing the previews.
Malandro is offline   Reply With Quote
Old 05-06-2023, 10:43 PM   #6
PitchSlap
Human being with feelings
 
PitchSlap's Avatar
 
Join Date: Jan 2008
Location: Vancouver, BC
Posts: 3,828
Default

This looks amazing!
I regret usually skipping NKS presets when installing things, but I'll definitely start now.

The previewing seems super fast.
That had me thinking if it could eventually be possible to build instrument multis using it?

For example, you find a sound you like, lock it, then continue previewing other sounds which play layered with the one(s) already selected.
Then you could add them all to a track, or save as a FX chain for later...
__________________
FRs: v5 Media Explorer Requests, Global Quantization, Session View
Win10 Pro 64-bit, Reaper 6(x64), AMD 3950x, Aorus X570 Master, 64GB DDR4 3600, PowerColor Red Devil 5700XT, EVO 970 2TB, 10TB HD, Define R6

Last edited by PitchSlap; 05-07-2023 at 02:01 AM.
PitchSlap is offline   Reply With Quote
Old 05-06-2023, 10:45 PM   #7
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 15,308
Default

Awesome !
As you do mention that: Of course support Kontakt libraries (.nki) would be great. No idea if that is doable/viable.
(Do I understand correctly that those nkis with support for Komplete/NKS already are covered ?)

-Michael

Last edited by mschnell; 05-06-2023 at 10:56 PM.
mschnell is offline   Reply With Quote
Old 05-07-2023, 01:11 AM   #8
Kabraxis
Human being with feelings
 
Kabraxis's Avatar
 
Join Date: Feb 2015
Location: Turkey
Posts: 246
Default

a w e s o m e

I was just checking NKS files internals. Great work!
Kabraxis is online now   Reply With Quote
Old 05-07-2023, 01:53 AM   #9
Vagelis
Human being with feelings
 
Vagelis's Avatar
 
Join Date: Oct 2017
Location: Larisa, Greece
Posts: 3,900
Default

Really dope, congrats for the amazing work once again! Looking forward
Vagelis is offline   Reply With Quote
Old 05-07-2023, 02:09 AM   #10
7enz
Human being with feelings
 
Join Date: Sep 2022
Posts: 403
Default

will the elements in the UI be viewable if docked?
7enz is offline   Reply With Quote
Old 05-07-2023, 04:34 AM   #11
helgoboss
Human being with feelings
 
helgoboss's Avatar
 
Join Date: Aug 2010
Location: Germany
Posts: 2,338
Default

Quote:
Originally Posted by DaniloVillanova View Post
Hey, this looks amazing! Few questions:

Does the preset grab function work with any plugin?

Can another sampler be used to load audio files from pot browser?

I have a keyboard with a built in script for Reaper (Nektar T6) which also has MCU support with a screen. How difficult would be to program the screen to show preset names, macro controls, etc.?

Cheers, thanks for this awesome extension!
The preconditions for successful preset crawling are:

- The plug-in must have a button to navigate to the next preset. It must be accessible with just one click (e.g. not buried in some menus).
- The plug-in must correctly expose the name of the currently loaded internal preset. (In my experience, this works with most VST2 plug-ins but unfortunately not with most VST3 plug-ins. Just check if you see that REAPER's FX dropdown always shows the same preset name as the plug-in user interface.)

Another sampler ... in theory, yes. If that other sampler provides a way to be programmed from outside (via function call, e.g. C++/ReaScript), then the answer is yes. But which sampler except RS5k supports that? I don't know any. At least on Windows, it might be possible to simulate dragging a file onto the sampler UI. This could be a viable approach with samplers that support drag'n'drop. But how well that would work in practice, I don't know.

About the Nektar T6: If it supports MCU, I mean also for displaying the channel names, then it's absolutely possible to program it to display preset names, macro controls, etc. The "Pot" targets have actually existed for a while already and back then I made a preset for the X-Touch One in MCU mode which displays filter and preset names. But it uses channel 1 only. You can try the demo project: https://raw.githubusercontent.com/he...t-nks-demo.RPP ... I wrote more about that here: https://forum.cockos.com/showpost.ph...7&postcount=15
helgoboss is offline   Reply With Quote
Old 05-07-2023, 04:40 AM   #12
helgoboss
Human being with feelings
 
helgoboss's Avatar
 
Join Date: Aug 2010
Location: Germany
Posts: 2,338
Default

Quote:
Originally Posted by PitchSlap View Post
This looks amazing!
I regret usually skipping NKS presets when installing things, but I'll definitely start now.

The previewing seems super fast.
That had me thinking if it could eventually be possible to build instrument multis using it?

For example, you find a sound you like, lock it, then continue previewing other sounds which play layered with the one(s) already selected.
Then you could add them all to a track, or save as a FX chain for later...
Yes, this would be absolutely possible. There's no streamlined support for that as we speak, but I'll probably add something like this in future. At the moment, you can already tell Pot Browser <New FX> and it will start loading presets in the next FX slot. However, in order to get a true multi, it should also make sure that the second FX receives the same MIDI messages as the first FX and the audio is combined. At the moment, you would need to configure this manually. I'm especially excited about the upcoming FX containers and I hope to support them, too. That would be perfect for multis!
helgoboss is offline   Reply With Quote
Old 05-07-2023, 04:45 AM   #13
helgoboss
Human being with feelings
 
helgoboss's Avatar
 
Join Date: Aug 2010
Location: Germany
Posts: 2,338
Default

Quote:
Originally Posted by mschnell View Post
Awesome !
As you do mention that: Of course support Kontakt libraries (.nki) would be great. No idea if that is doable/viable.
(Do I understand correctly that those nkis with support for Komplete/NKS already are covered ?)

-Michael
Unless there's a miracle and NI gives us a way to load NKIs automatically or someone succeeds in reverse engineering to make this possible ... the only possibility I see right now is to simulate drag'n'drop of the NKI file onto the Kontakt GUI. Something tells me that this would work on Windows, but maybe not on macOS. Haven't look into it yet. Oh, and for NKM files, there's a way, but somewhat hacky (replacing the default NKM file and restarting Kontakt ... ugly). Anyway, even then, there wouldn't be support for macro parameters

No. NKI files are not covered, NKSN files neither. Just NKSF and NKSFX files.
helgoboss is offline   Reply With Quote
Old 05-07-2023, 04:49 AM   #14
helgoboss
Human being with feelings
 
helgoboss's Avatar
 
Join Date: Aug 2010
Location: Germany
Posts: 2,338
Default

Quote:
Originally Posted by 7enz View Post
will the elements in the UI be viewable if docked?
What do you mean? Pot Browser, as we speak, is not dockable.

UPDATE: I could make it dockable. Probably would only make sense in a mode where you only see the right side (the preset table). Yes, could be a nice addition. Then you could have the preset list on the left or right side, always available. Not sure if that's what you mean.

Last edited by helgoboss; 05-07-2023 at 06:02 AM.
helgoboss is offline   Reply With Quote
Old 05-07-2023, 06:09 AM   #15
7enz
Human being with feelings
 
Join Date: Sep 2022
Posts: 403
Default

Quote:
Originally Posted by helgoboss View Post
What do you mean? Pot Browser, as we speak, is not dockable.
the thought was, if it were dockable....
would the browser scale and all the elements & line up vertically or horizontally and wrap if it were docked...

but as you pointed out it is not dockable...

the thinking was based on seeing the tracks you are adding your VSTi's to and then seeing the next track is selected and repeating the process.. easily workable to just view & unview pot browser select the next track rinse repeat
7enz is offline   Reply With Quote
Old 05-07-2023, 06:15 AM   #16
7enz
Human being with feelings
 
Join Date: Sep 2022
Posts: 403
Default

ahhh.. i see you have solved that!! with the Load into: <selected-track>
7enz is offline   Reply With Quote
Old 05-07-2023, 06:38 AM   #17
Vagelis
Human being with feelings
 
Vagelis's Avatar
 
Join Date: Oct 2017
Location: Larisa, Greece
Posts: 3,900
Default

Quote:
Originally Posted by helgoboss View Post
Probably would only make sense in a mode where you only see the right side (the preset table). Yes, could be a nice addition. Then you could have the preset list on the left or right side, always available.
For me this could work perfectly.
Vagelis is offline   Reply With Quote
Old 05-07-2023, 06:45 AM   #18
helgoboss
Human being with feelings
 
helgoboss's Avatar
 
Join Date: Aug 2010
Location: Germany
Posts: 2,338
Default

Quote:
Originally Posted by 7enz View Post
the thought was, if it were dockable....
would the browser scale and all the elements & line up vertically or horizontally and wrap if it were docked...

but as you pointed out it is not dockable...

the thinking was based on seeing the tracks you are adding your VSTi's to and then seeing the next track is selected and repeating the process.. easily workable to just view & unview pot browser select the next track rinse repeat
I could build in a logic that the filter view (left side) will automatically disappear if there's not enough space available. And instead show a button that switches between filter and preset view. Similar to how it works with responsive websites.

So far however, resizing the GUI is supported on Windows only. I hope I can make it work on macOS as well in the future.
helgoboss is offline   Reply With Quote
Old 05-07-2023, 08:06 AM   #19
KennyG5000
Human being with feelings
 
Join Date: Nov 2022
Posts: 56
Default

This is fantastic work, congratulations on such a marvelous achievement! I have been spending the last few months working on a Open Stage Control template using the existing experimental nks pot browser that is built into Realearn with great success, already this creates a wonderful user experience of being able to browse and load presets so smoothly (then have everything auto map to 8 macros a la Komplete Kontrol). This looks like a huge evolution of an already great concept (and looks to solve any limitations of the first implementation too).

I will definitely be exploring this (and updating my template to reflect this new version). I have a few quick questions about it.

Can you save presets you have created using this browser? Will have the issue of having to 'reload' the nks before the macros will map in Realearn if you reopen the session? Will you be able to send all of the presets in a search via o-s-c to template (so they can be browsed/selected remotely) rather than just navigating via previous/next in list?

Favouriting and filtering plugins and presets would have been a wishlist request with the current implementation so majorly excited for these updates, but I have been working daily with the Realearn and it has been an absolute joy (somehow getting hands on access to plugin parameters in this way has changed my whole relationship to certain plugins, it has been a complete game changer in workflow terms so I cannot thank you enough for building these fantastic tools!).
KennyG5000 is offline   Reply With Quote
Old 05-07-2023, 08:21 AM   #20
7enz
Human being with feelings
 
Join Date: Sep 2022
Posts: 403
Default

heres a question using Load into: <selected track>

if for example in Reaper i have multiple tracks selected..
will the <selected track> work independantly? or
does the operation work based upon the whats selected on the TCP & MCP?
and put multiple VSTi's on the track?

im just curious?

also a secondary question... in the load into: <selected track> and navigating the track selection menu, will it respect all hidden tracks from either the TCP or MCP??

Edit: apologies Helgoboss.. i was thinking the Load into: <selected track> was a drop down menu of the list of selectable tracks, but right at the end of the video... i see theres only 3 selections in the dropdown menu... which answers all the questions!!

Last edited by 7enz; 05-07-2023 at 08:52 AM.
7enz is offline   Reply With Quote
Old 05-07-2023, 01:04 PM   #21
paat
Human being with feelings
 
Join Date: Oct 2016
Posts: 229
Default

WOW this looks amazing - I canít wait!!

A couple questions for you:

1. Can you use it to quickly step through entire FX chains? The demo vid looks like itís applying synthís internal presetsÖ but thereís a chain filter, and also I saw .fxchain extension a couple places. So Iím hoping that I can quickly step through chains on the current track.

2. For the preview rendering, is there any parameterization to choose what notes / octave it plays? Can I just place an audio file in the right location for preview, say if I want to record myself playing a chord progression as the preview rather than a single note? Itís more work on my part but Iíd love to have a more realistic preview - I assume itís just placing a correctly named file somewhere.

This sort of thing is by far the biggest thing Iíve felt lacking in ReaperÖ and so Iíve turned to plug-in chainer plugins like Blue Cat Patchwork just because they let me scroll through effects chains quickly.

I have been jealous of NKS previews, not wanting to use the NI plug-in host thing. Now youíre making it available to all plugins! So cool.
paat is offline   Reply With Quote
Old 05-07-2023, 06:01 PM   #22
PitchSlap
Human being with feelings
 
PitchSlap's Avatar
 
Join Date: Jan 2008
Location: Vancouver, BC
Posts: 3,828
Default

Quote:
Originally Posted by helgoboss View Post
Yes, this would be absolutely possible. There's no streamlined support for that as we speak, but I'll probably add something like this in future. At the moment, you can already tell Pot Browser <New FX> and it will start loading presets in the next FX slot. However, in order to get a true multi, it should also make sure that the second FX receives the same MIDI messages as the first FX and the audio is combined. At the moment, you would need to configure this manually. I'm especially excited about the upcoming FX containers and I hope to support them, too. That would be perfect for multis!
Awesome.
I got too excited and didn't finish the video before posting. I was worried the previews might've been using some NKS exclusive feature, but no wonder it's fast when pre-rendered to audio.

There would obviously be a trade-off with pitch-shifting a static preview, but I'd really love to be able to match the preview note to the key of my song (even better if it could also be set/triggered via MIDI input).
For best results, maybe an option to record multiple preview notes per patch (with the downside of extra disc space/time to create)?

Another cool tweak might be an option to record previews at C2 for patches tagged as bass, or include "Bass", "Sub", "BA", "BS" etc. as prefixes or subfixes.

When/if you need a beta-tester I'd happily volunteer.
__________________
FRs: v5 Media Explorer Requests, Global Quantization, Session View
Win10 Pro 64-bit, Reaper 6(x64), AMD 3950x, Aorus X570 Master, 64GB DDR4 3600, PowerColor Red Devil 5700XT, EVO 970 2TB, 10TB HD, Define R6
PitchSlap is offline   Reply With Quote
Old 05-08-2023, 01:56 AM   #23
helgoboss
Human being with feelings
 
helgoboss's Avatar
 
Join Date: Aug 2010
Location: Germany
Posts: 2,338
Default

Quote:
Originally Posted by KennyG5000 View Post
This is fantastic work, congratulations on such a marvelous achievement! I have been spending the last few months working on a Open Stage Control template using the existing experimental nks pot browser that is built into Realearn with great success, already this creates a wonderful user experience of being able to browse and load presets so smoothly (then have everything auto map to 8 macros a la Komplete Kontrol). This looks like a huge evolution of an already great concept (and looks to solve any limitations of the first implementation too).

I will definitely be exploring this (and updating my template to reflect this new version). I have a few quick questions about it.

Can you save presets you have created using this browser? Will have the issue of having to 'reload' the nks before the macros will map in Realearn if you reopen the session? Will you be able to send all of the presets in a search via o-s-c to template (so they can be browsed/selected remotely) rather than just navigating via previous/next in list?

Favouriting and filtering plugins and presets would have been a wishlist request with the current implementation so majorly excited for these updates, but I have been working daily with the Realearn and it has been an absolute joy (somehow getting hands on access to plugin parameters in this way has changed my whole relationship to certain plugins, it has been a complete game changer in workflow terms so I cannot thank you enough for building these fantastic tools!).
Wow, I was not aware that someone is working on an OSC template for that. Looks cool.

Saving presets

I haven't thought about this yet in detail. At the moment, this whole thing is designed as "read-only" (besides marking favorites). And since it picks up presets from everywhere, it might not even need saving presets on its own. You could just create a preset and save it in conventional ways (either "Save preset..." in REAPER's FX window or "Save selected FX as chain..." or even save as NKSF(X) file in Komplete Kontrol). Then you hit refresh in Pot Browser and it magically appears.

But yes, I think it could be a slight workflow improvement if Pot Browser would provide a way to save a preset directly from within the GUI. Then the question comes up: What format? At the moment, I have a soft spot for FX chain files (".RfxChain"). They support all plug-in formats, they can save a whole chain of FXs, they are text files (not binary, which is very much in the spirit of REAPER). Downside: They don't save pre-mapped parameters ... but there's currently no way in Pot Browser to pre-map parameters anyway.


Issue of not remembering macro parameters when reloading the project

On the agenda. (*)

Sending all presets to OSC template

Mmh. This is not something I have planned. It would also bring up questions about which format, separating IDs from names etc. Not sure if I want to go there.


(*) Related to another topic:


Loading and saving of Pot settings

If you watched the video carefully, you saw a little dialog right at the beginning: It informs you that Pot Browser loses all of its settings at the moment! This includes, filter settings, which preset was selected, and even favorites (so favoriting is actually disabled at the moment)!

This is intentional and it will remain like this in the early-access phase. In this stage, bigger changes are still possible e.g. in response to user feedback. And I don't want to commit on a certain format to save settings yet.

But this is not the only reason why settings are not saved. I haven't made up my mind about this yet but I'm thinking about making this a paid feature. That is, disabling "loading and saving of Pot settings" by default and only making it available for users that purchase a license key for the "Pot" feature in ReaLearn (for a relatively small amount of money). Then Pot would still provide much value even in the free version, but offer additional convenience and remove small annoyances that more serious users probably care about. And in the hopefully rare case that someone can't afford a few bucks to support development and still wants the convenience ... ReaLearn is open-source. They could just download the source code, disable the license check and build it on their own - obviously not something I would encourage, but possible.
helgoboss is offline   Reply With Quote
Old 05-08-2023, 02:02 AM   #24
helgoboss
Human being with feelings
 
helgoboss's Avatar
 
Join Date: Aug 2010
Location: Germany
Posts: 2,338
Default

Quote:
Originally Posted by 7enz View Post
heres a question using Load into: <selected track>

if for example in Reaper i have multiple tracks selected..
will the <selected track> work independantly? or
does the operation work based upon the whats selected on the TCP & MCP?
and put multiple VSTi's on the track?

im just curious?

also a secondary question... in the load into: <selected track> and navigating the track selection menu, will it respect all hidden tracks from either the TCP or MCP??

Edit: apologies Helgoboss.. i was thinking the Load into: <selected track> was a drop down menu of the list of selectable tracks, but right at the end of the video... i see theres only 3 selections in the dropdown menu... which answers all the questions!!
The "Load into" menu provides the options <Selected track>, <Master track>, a list of all existing tracks (all tracks, no matter whether hidden or not), and <New track>.
helgoboss is offline   Reply With Quote
Old 05-08-2023, 02:10 AM   #25
helgoboss
Human being with feelings
 
helgoboss's Avatar
 
Join Date: Aug 2010
Location: Germany
Posts: 2,338
Default

Quote:
Originally Posted by paat View Post
WOW this looks amazing - I can’t wait!!

A couple questions for you:

1. Can you use it to quickly step through entire FX chains? The demo vid looks like it’s applying synth’s internal presets… but there’s a chain filter, and also I saw .fxchain extension a couple places. So I’m hoping that I can quickly step through chains on the current track.

2. For the preview rendering, is there any parameterization to choose what notes / octave it plays? Can I just place an audio file in the right location for preview, say if I want to record myself playing a chord progression as the preview rather than a single note? It’s more work on my part but I’d love to have a more realistic preview - I assume it’s just placing a correctly named file somewhere.

This sort of thing is by far the biggest thing I’ve felt lacking in Reaper… and so I’ve turned to plug-in chainer plugins like Blue Cat Patchwork just because they let me scroll through effects chains quickly.

I have been jealous of NKS previews, not wanting to use the NI plug-in host thing. Now you’re making it available to all plugins! So cool.
1. Yes. If the preset is an FX chain or a track template, it by default loads the complete chain. However, I'm probably going to add the possibility to load only one particular FX of the FX chain.

2. Preview rendering works like this: There's a project template which contains one track and a MIDI item. That's it. Pot Browser loads this template and then uses it to render previews. So yes, you could just replace that file ... or maybe I even provide a little dropdown that lets you choose a custom template before rendering the previews.

By the way, Pot Browser uses Komplete/NKS previews where available. It looks for a custom preview if there's no preview available or if it's not Komplete/NKS preset at all.

Last edited by helgoboss; 05-08-2023 at 02:18 AM.
helgoboss is offline   Reply With Quote
Old 05-08-2023, 02:14 AM   #26
helgoboss
Human being with feelings
 
helgoboss's Avatar
 
Join Date: Aug 2010
Location: Germany
Posts: 2,338
Default

Quote:
Originally Posted by PitchSlap View Post
Awesome.
I got too excited and didn't finish the video before posting. I was worried the previews might've been using some NKS exclusive feature, but no wonder it's fast when pre-rendered to audio.

There would obviously be a trade-off with pitch-shifting a static preview, but I'd really love to be able to match the preview note to the key of my song (even better if it could also be set/triggered via MIDI input).
For best results, maybe an option to record multiple preview notes per patch (with the downside of extra disc space/time to create)?

Another cool tweak might be an option to record previews at C2 for patches tagged as bass, or include "Bass", "Sub", "BA", "BS" etc. as prefixes or subfixes.

When/if you need a beta-tester I'd happily volunteer.
Recording multiple preview notes could be an option in the future. E.g. I might add support for having multiple regions in the preview template project where each region represents a different note. The question is then, how to handle multiple existing previews later, when you want to hear the preview? Maybe a dropdown menu "Preferred preview key" on the top? Then it would always try to find a preview for that key and play that one and fall back to the normal preview?

Hey, you mention pitch shifting as an alternative. I just got an idea: I could provide an option to load previews in RS5k. Then you could even "play" the preview. Of course that only makes sense for presets that take very long to load, otherwise why not load the full preset in the first place. Related: It could also be interesting if Pot Browser measure preset loading times. This info could then be used in cases like this.

Good idea, the "bass" tweak. At the moment, it wouldn't be too useful though: Many sounds in Komplete have previews already, I think. So the preview recording feature would make most sense for non-Komplete presets. But non-Komplete presets have one issue. They are not tagged. (See how all the type/character filters disappear when you select a database other than Komplete?)

Last edited by helgoboss; 05-08-2023 at 02:24 AM.
helgoboss is offline   Reply With Quote
Old 05-08-2023, 03:22 AM   #27
KennyG5000
Human being with feelings
 
Join Date: Nov 2022
Posts: 56
Default

Quote:
Originally Posted by helgoboss View Post

Loading and saving of Pot settings

If you watched the video carefully, you saw a little dialog right at the beginning: It informs you that Pot Browser loses all of its settings at the moment! This includes, filter settings, which preset was selected, and even favorites (so favoriting is actually disabled at the moment)!

This is intentional and it will remain like this in the early-access phase. In this stage, bigger changes are still possible e.g. in response to user feedback. And I don't want to commit on a certain format to save settings yet.

But this is not the only reason why settings are not saved. I haven't made up my mind about this yet but I'm thinking about making this a paid feature. That is, disabling "loading and saving of Pot settings" by default and only making it available for users that purchase a license key for the "Pot" feature in ReaLearn (for a relatively small amount of money). Then Pot would still provide much value even in the free version, but offer additional convenience and remove small annoyances that more serious users probably care about. And in the hopefully rare case that someone can't afford a few bucks to support development and still wants the convenience ... ReaLearn is open-source. They could just download the source code, disable the license check and build it on their own - obviously not something I would encourage, but possible.
This is all fantastic news, I am delighted that you are continuing to develop this excellent feature! I would be happy to purchase a license for this, as it will be incredibly useful in this current guise. Likewise, would be happy to beta test if needed!

With the saving question, I would be so happy if it could save a tagged nks file with mapped parameters (then we could almost do away with the Komplete Kontrol software!). As it stands with the Realearn implementation, it is a bit of a workflow killer as if a preset is edited in the session you need to save it as a plugin preset (in whatever FX), open it in Komplete Kontrol and save that preset as an nks to be able to load it identically in the re-opened session (this is if you still want the parameters to map to controllers however).

Also, I can see from your video demo that the mapped macros have the correct nks labels and headers, this would be so cool if they could be sent via Realearn (in my current template I just have a bit of JavaScript that matches the word 'cutoff' to give a header of 'filter' etc as a workaround but the actual nks headings would be so much better!). This might just be me, but I have found giving specific controls a dedicated custom colour on my template to be incredibly helpful, I wonder if this is something that could be tagged in pot browser in the future? (and sent via Realearn).

The final query I can think of for now is can this map macros/tag parameters for any plugin (ie not just for nks)? This would be a game changer if it could, as we wouldn't be tied into using nks files for everything (though admittedly it is a pretty good preset format anyway!).

Oh yes, can you have more than one instance of pot browser in a session of Reaper? (as I often jam with a friend and we both like to have remote control of our own FXs simultaneously via two open stage control instances running out template). I love how Realearn can be used like an FX (with multiple instances), was hoping this will be similar!


Excited to see how this develops!
KennyG5000 is offline   Reply With Quote
Old 05-08-2023, 04:00 AM   #28
helgoboss
Human being with feelings
 
helgoboss's Avatar
 
Join Date: Aug 2010
Location: Germany
Posts: 2,338
Default

Quote:
Originally Posted by KennyG5000 View Post
This is all fantastic news, I am delighted that you are continuing to develop this excellent feature! I would be happy to purchase a license for this, as it will be incredibly useful in this current guise. Likewise, would be happy to beta test if needed!

With the saving question, I would be so happy if it could save a tagged nks file with mapped parameters (then we could almost do away with the Komplete Kontrol software!). As it stands with the Realearn implementation, it is a bit of a workflow killer as if a preset is edited in the session you need to save it as a plugin preset (in whatever FX), open it in Komplete Kontrol and save that preset as an nks to be able to load it identically in the re-opened session (this is if you still want the parameters to map to controllers however).

Also, I can see from your video demo that the mapped macros have the correct nks labels and headers, this would be so cool if they could be sent via Realearn (in my current template I just have a bit of JavaScript that matches the word 'cutoff' to give a header of 'filter' etc as a workaround but the actual nks headings would be so much better!). This might just be me, but I have found giving specific controls a dedicated custom colour on my template to be incredibly helpful, I wonder if this is something that could be tagged in pot browser in the future? (and sent via Realearn).

The final query I can think of for now is can this map macros/tag parameters for any plugin (ie not just for nks)? This would be a game changer if it could, as we wouldn't be tied into using nks files for everything (though admittedly it is a pretty good preset format anyway!).

Oh yes, can you have more than one instance of pot browser in a session of Reaper? (as I often jam with a friend and we both like to have remote control of our own FXs simultaneously via two open stage control instances running out template). I love how Realearn can be used like an FX (with multiple instances), was hoping this will be similar!


Excited to see how this develops!
Saving a preset as NKS should be possible. But it brings up other points:

- There should eventually be a way in Pot Browser to edit the pre-mapped parameter banks (decide which parameters appear in one bank, name them, etc.). And maybe even assign tags etc. This doesn't exist yet, at all.
- Where to save the NKS file?
- How to pick it up? Pot Browser itself just reads the Komplete database. So in order to show up, one would need to start Komplete Kontrol again.

The section names thing, that could be done relatively easy. Assigning colors: You mean if the parameter has a particular name, give it color x? Or if the section (e.g. "Filters") has a particular name, give it color x?

As for saving pre-mapped parameters even for non-NKS presets, this is something I would like to see as well in the future, but it's a bit further away than the other things. Because it would involve inventing a new or extending an existing preset format to make this possible. Maybe I could write some additional info into the RfxChain files. Or come up with a completely new format. No matter what, this would need quite a bit of thought because once you have come up with something, it's hard to change later. Plus, having so much information, queryable ... with many thousands of presets that would need something similar as Komplete Kontrol does: Creating a database file that holds the results of a scan.

Yes, each ReaLearn instance has its own Pot Browser with its own state.
helgoboss is offline   Reply With Quote
Old 05-08-2023, 04:27 AM   #29
helgoboss
Human being with feelings
 
helgoboss's Avatar
 
Join Date: Aug 2010
Location: Germany
Posts: 2,338
Default

I have one topic about which I haven't made up my mind yet. Maybe you guys have some opinions. It's about the question where and how to save preview files.

Preview files are audio files (ogg), by the way.

I came up with roughly 2 possible choices:

1. In a subdirectory of the preset file, same name like preset file

This is how Komplete does it. There's a subdirectory called ".previews" which contains files named just like the preset file plus ".ogg" extension.

Pros:

- Obviously a great approach in terms of discoverability if you love to browse the file system manually. Quite straightforward.
- Also nicely localized: Preset and preview are located close to each other. Which also could help in manually copying/sharing both presets and previews.

Cons:
- Presets sometimes live in directories that are not writable. This is true actually for all Komplete factory presets! So one would need to start REAPER as administrator user to record previews for such presets... Ugly.
- There are preset formats that store more than one preset in a file, whole banks for example. This approach wouldn't work at all for them.
- Previews being named after the preset file means they can get out of date when someone changes the preset and there's no easy way to detect that this preset file is not valid anymore and should be updated. Okay, maybe if the modification date of the preview file is before the modification date of the preset file ... but these timestamps often don't survive copying files. So I wouldn't want to rely on timestamps.
- The association between preset and preview is lost as soon as someone renames the preset or moves it to another location. That's completely unnecessary.

Obviously, the cons don't matter at all for Komplete Factory presets, which are read-only by nature. Which might explain why they have chosen this way. But for us, we want previews for ALL presets, not just Komplete factory presets and not just NKS format.


2. Centralized and cryptic

Put all preview files into "REAPER_RESOURCE_DIR/Helgoboss/Pot/previews". In there, put some cryptically named dirs and files.

Pros:
- The beauty of this is that it can deal with all the cons above.

Cons:
- It's not so easy anymore to discover and listen and share presets manually, by using the file explorer. One can only do it by using Pot Browser (or another future tool that knows how to determine the preview file name)


I tend to solution 2. Or a combination of the two? Mmh. Open to ideas.

Last edited by helgoboss; 05-08-2023 at 04:50 AM. Reason: Added one con of first approach
helgoboss is offline   Reply With Quote
Old 05-08-2023, 04:56 AM   #30
UknownSource
Human being with feelings
 
UknownSource's Avatar
 
Join Date: May 2020
Posts: 434
Default

I want to try this one, possible?

This is something I do like to donate as well.
__________________
"FX-Container"
UknownSource is offline   Reply With Quote
Old 05-08-2023, 05:46 AM   #31
KennyG5000
Human being with feelings
 
Join Date: Nov 2022
Posts: 56
Default

Quote:
Originally Posted by helgoboss View Post

The section names thing, that could be done relatively easy. Assigning colors: You mean if the parameter has a particular name, give it color x? Or if the section (e.g. "Filters") has a particular name, give it color x?
This is all great news. If you can define a bunch of parameters to a section category (like 'filter' or 'envelope'), then it may be easiest just to give the section a custom colour (though it is nice for consistency to have these always the same). I have just been doing this progmatically in Open Stage Control matching keywords (but that has its limitations when there is a something like an amp adsr and a filter adsr that you want to differentiate between). But defining sections, giving them a unique header and colour would be amazing! Even if Realearn just tagged the parameter with its assigned 'section', the colour but could to taken care of easily at the Open Stage Control side. But the colours on the pot broswser gui would be nice too for visual feedback!

I would be more than happy if pot browser could save an nks (even into a separate 'user' folder), even better if we no longer had to open Komplete Kontrol to scan/create these (but I understand that is asking a lot!).
KennyG5000 is offline   Reply With Quote
Old 05-08-2023, 01:53 PM   #32
Reflected
Human being with feelings
 
Reflected's Avatar
 
Join Date: Jul 2009
Posts: 3,298
Default

It looks like a fantastic tool
I can't wait to try it out myself. Keep up the great work!

Subscribed.
Reflected is offline   Reply With Quote
Old 05-08-2023, 08:16 PM   #33
PMan
Human being with feelings
 
Join Date: Aug 2019
Location: Surrounded by the Great Lakes!
Posts: 681
Default

This looks amazing!

Will it be available for Linux?
PMan is offline   Reply With Quote
Old 05-09-2023, 04:01 AM   #34
PitchSlap
Human being with feelings
 
PitchSlap's Avatar
 
Join Date: Jan 2008
Location: Vancouver, BC
Posts: 3,828
Default

Quote:
Originally Posted by helgoboss View Post
Recording multiple preview notes could be an option in the future. E.g. I might add support for having multiple regions in the preview template project where each region represents a different note. The question is then, how to handle multiple existing previews later, when you want to hear the preview? Maybe a dropdown menu "Preferred preview key" on the top? Then it would always try to find a preview for that key and play that one and fall back to the normal preview?

Hey, you mention pitch shifting as an alternative. I just got an idea: I could provide an option to load previews in RS5k. Then you could even "play" the preview. Of course that only makes sense for presets that take very long to load, otherwise why not load the full preset in the first place. Related: It could also be interesting if Pot Browser measure preset loading times. This info could then be used in cases like this.

Good idea, the "bass" tweak. At the moment, it wouldn't be too useful though: Many sounds in Komplete have previews already, I think. So the preview recording feature would make most sense for non-Komplete presets. But non-Komplete presets have one issue. They are not tagged. (See how all the type/character filters disappear when you select a database other than Komplete?)
I was mostly thinking of a dropdown menu for matching the project key using pitch-shifting, with multiple (2?) recorded preview notes depending on how well it handles +/- 6 semitones to cover all notes. If a single note is acceptable, maybe second/third recorded notes could be for octave +/-?

Being able to "play" the preview notes by MIDI would be super useful if you want to loop a MIDI item and quickly cycle through sounds regardless of the synth.
I guess that's the main appeal of something like NKS or Arturia Analog Lab, but loading times can be a drag and this could work for non-NKS synths (measuring loading times is a nice idea.)

Obviously just triggering wave previews would be crude compared to the actual instrument, but it only needs to get the point across.

In some cases I can imagine preferring the preview for an old-school sampler vibe, so being able to load into RS5K would be awesome. All the preview recordings can basically double as a giant RS5K library.

I'm assuming internal preset crawling/preview recording can only work for instruments where the name populates the plugin title bar, but would still be useful for Reaper user presets.

As for the "bass" tweak, and lack of tagging for non-NKS presets, perhaps there could be an option for keyword based auto-tagging?
Melda's MDrummer has this for importing samples and while not perfect, works quite well. i.e. "Pad, "PD ", "PD_"... in the preset name could be tagged as pads etc.

Quote:
MDrummer uses file names to determine types of the samples. It is impossible to determine a drum type by audio analysis, because many drums just are too alike, in fact in many cases even a human isn't able to tell what kind of drum certain sample is.
So the engine is searching for substrings in the file name, including path. For example, "bass" and "kick" are typical names for bass drum samples. MDrummer contains the most typical keywords by default, but you can edit them in the sample analysis page of the wizard.
__________________
FRs: v5 Media Explorer Requests, Global Quantization, Session View
Win10 Pro 64-bit, Reaper 6(x64), AMD 3950x, Aorus X570 Master, 64GB DDR4 3600, PowerColor Red Devil 5700XT, EVO 970 2TB, 10TB HD, Define R6
PitchSlap is offline   Reply With Quote
Old 05-09-2023, 04:18 AM   #35
_Stevie_
Human being with feelings
 
_Stevie_'s Avatar
 
Join Date: Oct 2017
Location: Black Forest
Posts: 5,088
Default

Quote:
Originally Posted by helgoboss View Post
I have one topic about which I haven't made up my mind yet. Maybe you guys have some opinions. It's about the question where and how to save preview files.

-- snip --

I tend to solution 2. Or a combination of the two? Mmh. Open to ideas.
I see your issue, but also keep in mind that NI itself created a decentralized space where all older library previews are stored. I have them in Native Instruments\Previews and with that it's also not possible to share preset and preview together, because they are stored in some hash generated directory.

Having said that, I tend to solution 2 as well.
__________________
My Reascripts forum thread | My Reascripts on GitHub
If you like or use my scripts, please support the Ukraine: Ukraine Crisis Relief Fund | DirectRelief | Save The Children | Razom
_Stevie_ is offline   Reply With Quote
Old 05-09-2023, 04:41 AM   #36
UknownSource
Human being with feelings
 
UknownSource's Avatar
 
Join Date: May 2020
Posts: 434
Default

I need to understand something, is it an alternative to NI KOMPLETE for Reaper?
__________________
"FX-Container"
UknownSource is offline   Reply With Quote
Old 05-09-2023, 05:25 AM   #37
helgoboss
Human being with feelings
 
helgoboss's Avatar
 
Join Date: Aug 2010
Location: Germany
Posts: 2,338
Default

Quote:
Originally Posted by UknownSource View Post
I want to try this one, possible?

This is something I do like to donate as well.
In a few days, yes.
helgoboss is offline   Reply With Quote
Old 05-09-2023, 05:30 AM   #38
helgoboss
Human being with feelings
 
helgoboss's Avatar
 
Join Date: Aug 2010
Location: Germany
Posts: 2,338
Default

Quote:
Originally Posted by KennyG5000 View Post
I would be more than happy if pot browser could save an nks (even into a separate 'user' folder), even better if we no longer had to open Komplete Kontrol to scan/create these (but I understand that is asking a lot!).
Implementing the scanning is not planned right now. But I might just try it one day out of frustration because I don't particularly like Komplete Kontrol

But even if I do implement it: I would not be able to scan the presets for NI's own plug-ins. So in this case, they wouldn't even appear in the list, that's for sure.
helgoboss is offline   Reply With Quote
Old 05-09-2023, 05:31 AM   #39
helgoboss
Human being with feelings
 
helgoboss's Avatar
 
Join Date: Aug 2010
Location: Germany
Posts: 2,338
Default

Quote:
Originally Posted by PMan View Post
This looks amazing!

Will it be available for Linux?
Eventually, I very much hope so. At the moment not. The only showstopper is that I didn't find a way yet to run the GUI framework reliably on GTK. But I also didn't try hard.
helgoboss is offline   Reply With Quote
Old 05-09-2023, 05:33 AM   #40
helgoboss
Human being with feelings
 
helgoboss's Avatar
 
Join Date: Aug 2010
Location: Germany
Posts: 2,338
Default

Quote:
Originally Posted by _Stevie_ View Post
I see your issue, but also keep in mind that NI itself created a decentralized space where all older library previews are stored. I have them in Native Instruments\Previews and with that it's also not possible to share preset and preview together, because they are stored in some hash generated directory.

Having said that, I tend to solution 2 as well.
Ah cool, didn't know that.

Yea, the more I think about it, I want solution 2. Less headache.
helgoboss 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 05:05 AM.


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