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

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Old 10-06-2023, 07:32 AM   #1
lfluccas
Human being with feelings
 
Join Date: Apr 2023
Posts: 7
Default ReaLearn dynamic VST mapping with OSC feedback - sharing my setup

Hello everyone! I’ve had an Arturia Minilab Mk II for a while and it always bothered me that I couldn’t use its knobs as I had imagined when I first bought it. In my head, I would use them all the time because I’ve always wanted to have a tactile, analog-like workflow, but in reality we all know how deep the MIDI mapping rabbit hole goes. So, I spent some time learning how to use ReaLearn and OSC controllers properly and finally achieved the workflow I imagined. Now, I want to share it with you in case anyone wants to give it a try.

Here is a GIF to illustrate how it works:


  • Each one of the 16 knobs on the Mini Lab are dynamically mappable and its mappings change according to what is in focus on the Reaper window.
  • If a plugin is focused, the respective plugin mapping will be loaded using ReaLearn autoload preset function. If there isn’t any plugin window open, it will load a predefined setting for changing the selected track settings. This mapping works as following:
    Code:
    - Knob 1: Track volume
    - Knob 9: Track pan
    - Knobs 2-7: Controls the first ReaEQ on the track chain (if there's any)
    - Knobs 10-15: Controls the first 6 plugin parameters on the TCP/MCP
    - Knobs 8 and 16: Controls the Send 1 and Send 2 volumes, respectively.
  • There are two banks of mappings (A and B) for each plugin, in a total of 32 mappable parameters per plugin. You can change between banks pushing the knob #1.
  • Also, there is a Lock function, that is activated with the knob #9 push. While the lock is active, you can select any track or plugin without changing my mappings until it is released again.
  • To map a new plugin, there is a toolbar button that activates the “Learn Mode”. In this mode, the knobs stop controlling plugin parameters. Instead, if you turn any of them clockwise, the last touched plugin parameter will be associated with it. If you turn it counter-clockwise, the parameter assigned to that knob (if any) will be removed. When you are done with the mapping, save the preset and assign it to the plugin using the ReaLearn preset menu and Global FX to preset link function. Then, click on the toolbar button to disable Learn Mode and use it normally again.
  • To have visual feedback for each mapped parameter and its value, I’m using OSC commands with the sofware OpenStageControl. It can be viewed as a floating window on the desktop screen using the app FenÍtre (Mac only) or on the phone screen accessing via web, directly on the browser.

This setup took me a while to achieve and it's kinda convoluted because it uses cycle actions, ReaLearn, OpenStageControl and FenÍtre but so far it works very well. I didn’t optimize it to be used by anyone else but me but I guess there are other people wanting to achieve something similar, so I’m sharing all my files here so anyone can give it a try.

How to try it

There are two ways of trying this setup. The easiest one is to load all my configuration into a new portable Reaper install. The alternative is to copy each file to your already in use installation and configure it manually. I don't recommend using it in your main Reaper installation because I haven't tested it enough, so I don't know how stable or reliable these settings are. Always remember to make a backup of your settings.

It's important to mention that this setup is designed specifically to use with the Arturia Minilab Mk II, that is the controller I use. Feel free to experiment and adapt it to your own, if you wish. If you are not familiar with ReaLearn and its functions, I suggest you learn and experiment with it first, because this setup uses many different (and advanced) functions, so if anything stops working, you can make your way around it.

Requirements: Arturia Minilab Mk II, Arturia MIDI Control Center, SWS Extensions, ReaPack + ReaLearn (2.1.6.0-pre.1) and OpenStageControl.

Install instructions

In a fresh installation (easiest way)
  1. Download all files
  2. Start a fresh Reaper portable installation and install SWS Extensions, ReaPack and ReaLearn v 2.16-pre1.
  3. Copy the downloaded folder “ReaLearn/Helgoboss” to your Reaper resource path.
  4. Open the Reaper settings window and Import the configuration file “ReaLearn Dynamic Mapping.ReaperConfigZip”.
  5. Import the file “Minilab mk II Settings - Reaper ReaLearn.minilabmk2” in Arturia MIDI Control Center and load it to your controller in any Memory Slot you like.
  6. In Reaper settings > MIDI Devices, set your Arturia Minilab Mk II as the MIDI Device ID #0 and enable it for control.
  7. Set your OpenStageControl IP and port (Type in settings: Send = “127.0.0.1:9000”). Run the server, open the browser and load the “OpenStageControl - Minilab.json” session file. You can also select this file in the "load" field from the Settings to make it always load by default when you launch OpenStageControl.
  8. Restart Reaper. If everything was set correctly, the led on the upper right side of the OpenStageControl interface will turn on. Load a track with ReaEQ, select the "6 Band (ReaLearn)" preset and give it a try.
  9. (Optional) If you are using a Mac, you can download FenÍtre to keep the OpenStageControl interface in a floating window that you can easily show and hide with keyboard shortcuts.

In an existing installation (make sure to backup your settings first!)
  1. Download all files.
  2. Copy the folder “ReaLearn/Helgoboss” to your Reaper resource path (WARNING: It will replace all your ReaLearn settings!)
  3. In the downloaded “Track Template” folder, copy the file “Map Plugin.RTrackTemplate” to your Reaper Resources/TrackTemplates folder.
  4. In the Reaper Resources window, select "Track template" from the dropdown, add 2 slots and load the previous file to slot 2.
  5. In Reaper settings > MIDI Devices, set your Arturia Minilab Mk II as the MIDI Device ID #0 and enable it for MIDI input and control.
  6. In the downloaded “FX chain” folder, copy the file “Input FX - Map Loader.RfxChain” to your Reaper Resources/FXChains folder. Open the monitoring FX window and load this FX chain.
  7. In the downloaded Scripts folder, copy the script “Lokasenna_Select tracks by name - Mapping.lua” to your Reaper Resources/Scripts/Cockos folder. Open the Reaper Actions list window, click on New action > Load ReaScript and select it.
  8. Open the Reaper Cycle Action Editor Window and import to the main section the “Show/hide Mapping Panel.ini” file from the downloaded Cycle Action folder. In this cycle action, replace the “Unknown” action with the action you created in step 3 and click Apply. (WARNING: These settings depend on the Dummy Toggle 6 and 7, make sure it isn't being used anywhere else)
  9. (Optional) If you like, add the cycle action you just imported to a toolbar or give it a keyboard shortcut.
  10. (Optional) If you like to test the mappings I have made, copy the files from the downloaded "ReaLearn/Data/helgoboss/realearn" folder to your Reaper Resources/Data/helogobss/relearn folder. Also, copy the "vst-reaeq.ini" file from the downloaded "presets" folder into your Reaper Resources/presets folder. (WARNING: This will overwrite all your ReaEQ presets!)
  11. Import the file “Minilab mk II Settings - Reaper ReaLearn.minilabmk2" in Arturia MIDI Control Center and load it to your controller in any Memory Slot you like. If you are using other controller, configure your knobs as following:
    Code:
    Channel 4 for all mappings
    Relative #1 mode for all knobs
    CC 102-117 for knobs 1-16, respectively
    Knob 1 Push button: CC 20 (used for switching banks)
    Knob 9 Push button: CC 21 (used to lock the mapping)
  12. Set your OpenStageControl IP and port (Type in settings: Send = “127.0.0.1:9000”). Run the server, open the browser and load the “OpenStageControl - Minilab.json” session file from the downloaded "OpenStageControl Session" folder. You can also select this file in the "load" field from the Settings to make it always load by default when you launch OpenStageControl.
  13. Restart Reaper. If everything was set correctly, the led on the upper right side of the OpenStageControl interface will turn on. Load a track with ReaEQ, select the "6 Band (ReaLearn)" preset and give it a try. If you want to use the EQ section on the default track mapping, set this preset as the default for ReaEQ and save it as the default FX chain for new tracks.
  14. (Optional) If you are using a Mac, you can download FenÍtre to keep the OpenStageControl interface in a floating window that you can easily show and hide with keyboard shortcuts.
  15. Tip: If you want to use this OpenStageControl Session on your phone, I recommend using this argument in the address bar: "https://127.0.0.1?zoom=1.6". Adjust this number to better fit your screen.

Download

[Link]

Disclaimer: I’m not working or changing anything by now to make it more friendly to other controllers and not giving any kind of support because I’m very busy with other things, but I might document (maybe in video) and organize it better in the future.

Let me know what you think and I hope it is helpful. Feel free to improve it and share if you make it better.

Cheers!

Last edited by lfluccas; 10-08-2023 at 07:52 AM.
lfluccas is offline   Reply With Quote
 

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 10:10 PM.


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