06-11-2016, 03:34 PM
|
#1 |
|
Human being with feelings
Join Date: Aug 2010
Location: Germany
Posts: 2,902
|
All information can be found on the ReaLearn website.
--- Hi everyone, I'm just realizing how much better GitHub Discussions is to ask and answer questions. It automatically gives you a list of questions/replies that you have not answered yet (notification button on the top right). And you will get proper email notification. Plus, the threads are nicely separated. @Everyone: If possible, please use GitHub Discussions instead of this REAPER forum thread. Thanks --- A lot has happened since the initial release of ReaLearn. Since v1.10.0, the latest version can always be found on GitHub.
--- Dear REAPER users, lately I've been working on another little REAPER plug-in called ReaLearn. Its purpose is to improve REAPER's MIDI learn capabilities. It's free. You can download it here: http://www.helgoboss.org/projects/realearn/ Right now it's still in beta stage. Any crash or bug report is appreciated. Background: As silent film accompanist working with keyboards and VST instruments mainly, I want to be able to quickly map MIDI controls to FX parameters. REAPER has this capability but I've always found it too limited for my use cases. Even with the new MIDI link feature added to the mix, I found there were many things left to be desired (I think MIDI link is tailored to other purposes). Of course, in REAPER there's always a way: With a little bit of JS preprocessing and MidiToReaControlPath, most things turn out to be possible at the end. But it's fiddly to set up. That's why I wrote ReaLearn. It's a REAPER-only VSTi plug-in (like Playtime). You load it exactly like other VSTi's - although I recommend to load it into the input FX chain instead of the normal one. Here's a screenshot: ![]() Some basic wording before I introduce the features:
Features:
Technically, some of those things were possible already before by using a mix of Jeffos' MidiToReaControlPath and (JS) MIDI plugins. But it's a workflow killer because you would need to map one MIDI message to another one before actually mapping it to a parameter. Plus, MidiToReaControlPath forwards to the global control path which can lead to unintended side effects with existing global action mappings (I had that quite often already ... it's messy). Following features are not part of ReaLearn yet:
For the developers among you: I'm planning to release the source code of ReaLearn later this year. Cheers Benjamin
__________________
Playtime - Session View for REAPER ReaLearn - Sophisticated MIDI/MCU/OSC Learn for REAPER If you want to contact me directly, please use info@helgoboss.org (no PMs please)! Last edited by helgoboss; 01-21-2025 at 02:40 AM. Reason: Improve title |
|
|
06-11-2016, 05:56 PM
|
#2 |
|
Human being with feelings
Join Date: Apr 2013
Location: France
Posts: 11,104
|
HI !
I think your screenshot is on a private FTP cause a Login Popup is displayed when displaying the thread. A part from that, thanks for sharing this tool for free I will take a look. but a video demo will surely help :P Cheers !
__________________
Free ReaScripts - Premium Scripts - Custom Scripts Dev - Learn ReaScript - XR Theme - Stash Files - ReaLinks - ReaComics - Donation |
|
|
06-11-2016, 09:35 PM
|
#3 |
|
Human being with feelings
Join Date: Jan 2008
Location: Vancouver, BC
Posts: 3,836
|
Looks interesting. I've also felt Reaper's MIDI learn is pretty cumbersome (especially compared to Ableton Live) so I never actually use it.
I'll have to play around with this to really understand what it does, but thanks in advance. I'm not sure if this is within the scope of the plugin, but one things I've always wished for is a generic version of Novation's Automap. I'm wondering if user's could create presets mapping MIDI controls to the most important parameters of third-party plugins and then share them to create something like a crowd-sourced Automap? Just load the preset for the effect you want to control and with one-click you're ready to start tweaking. It could be a huge workflow enhancement. (I could be totally out to lunch here, but thought the idea was worth sharing )
__________________
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 |
|
|
06-11-2016, 10:58 PM
|
#4 | |
|
Human being with feelings
Join Date: Aug 2010
Location: Germany
Posts: 2,902
|
Quote:
__________________
Playtime - Session View for REAPER ReaLearn - Sophisticated MIDI/MCU/OSC Learn for REAPER If you want to contact me directly, please use info@helgoboss.org (no PMs please)! |
|
|
|
06-12-2016, 12:22 AM
|
#5 |
|
Human being with feelings
Join Date: Nov 2015
Posts: 1,566
|
MIDI devices need to be enabled for both notes and control for this to work, just control doesn't work.
I find this too fiddly to replace MIDI learn (a one key click operation), but for editing static mappings in a studio setup situation it offers some features that could be useful. |
|
|
06-12-2016, 04:20 AM
|
#6 |
|
Human being with feelings
Join Date: Aug 2006
Location: Berlin
Posts: 11,991
|
Very interesting idea. Will certainly check it out when I am back in the studio.
Thank you for sharing this.
__________________
Using Latch Preview (Video) - Faderport 16 setup for CSI 1.1 , CSI 3.10 Website "My ego comes pre-shrunk" - Randy Thom |
|
|
06-12-2016, 05:02 AM
|
#7 |
|
Banned
Join Date: Sep 2015
Posts: 1,650
|
Nice work! I love the pass through options - I'll never understand why there isn't an option to automatically filter learned CCs in hosts.
There's an issue at the moment with controlling JS parameters where the parameters jumps from min to max, either immediately or within a small range. Thanks for sharing!
|
|
|
06-12-2016, 10:17 AM
|
#8 | ||||
|
Human being with feelings
Join Date: Aug 2010
Location: Germany
Posts: 2,902
|
Quote:
![]() You don't need to "Enable input for control messages" though like with the built-in MIDI learn system. This was actually one of the most important goals of ReaLearn - that you can use REAPER's normal MIDI path. This is what makes it more flexible in certain scenarios (and naturally a bit more complex - because you need to deal with track MIDI routing). Quote:
![]() I personally think it's not so much the static setups that can benefit of ReaLearn but rather the highly dynamic ones (because of the routing). It's another tool in the toolbox. I'm planning to introduce some usability improvements like an action which you can map to a button or key for one-click MIDI learn. Concerning usability: Remember that you can always save FX chains, track templates and project templates in REAPER. You don't have to repeat the initial setup for ReaLearn over and over again. Just find your workflow once and save it. Quote:
Quote:
You can also export the ReaLearn FX as FX chain and pass this one around. Of course, it would need more than that to make it really usable. I'm planning an import/export like that with readable text files (not FXP or RfxChain files). Ideally, there would be some automated online sharing possibility as well, but for now that's indeed out of scope One drawback however is that it would work in REAPER only (because ReaLearn uses the REAPER API). It would need substantially more work to make this work in other DAWs as well.
__________________
Playtime - Session View for REAPER ReaLearn - Sophisticated MIDI/MCU/OSC Learn for REAPER If you want to contact me directly, please use info@helgoboss.org (no PMs please)! Last edited by helgoboss; 06-12-2016 at 12:52 PM. |
||||
|
|
06-29-2016, 09:06 AM
|
#9 |
|
Human being with feelings
Join Date: Aug 2010
Location: Germany
Posts: 2,902
|
Released ReaLearn 1.0.0-beta2
Changes: #3 Added action 'ReaLearn: Learn source for last touched target' for one-click MIDI learn (available as long as at least once ReaLearn FX loaded, I recommend to create a toolbar button for that) #4 Fixed REAPER freeze when controlling FX parameter and writing new automation #2 Fixed parameter jumps with JS effects #1 Fixed pitch wheel range The new action for one-click MIDI learn tries to figure out the most appropriate ReaLearn instance if there are multiple ones in the project.
__________________
Playtime - Session View for REAPER ReaLearn - Sophisticated MIDI/MCU/OSC Learn for REAPER If you want to contact me directly, please use info@helgoboss.org (no PMs please)! |
|
|
07-02-2016, 12:21 AM
|
#10 |
|
Human being with feelings
Join Date: Sep 2012
Posts: 41
|
Hey, i like the tool a lot, but i recognized some strange bahviour:
If there is paramater-linking going on somewhere in the project and i use the "learn target" function in realearn, it always detects all "parameter-linked" parameters, even if those parameters are not changeing. Just make a new project, load reacomp and reaeq on a track and link with parametermodulation for example the threshhold from reacomp to the freq slider in reaeq. in realearn click the "learn target" button and the parameterlinked freq slider form reaeq is detected, even if the parameter is not changeing! If there are is multiple parameter linking in the project and i click the "learn target" button multiple times all the linked parameters are detected alternatly. Is this normal? a bug in realearn or a bug in reapers parameter linking? |
|
|
07-02-2016, 06:07 PM
|
#11 |
|
Human being with feelings
Join Date: Jun 2011
Posts: 57
|
Thanks for sharing!
|
|
|
07-03-2016, 08:30 AM
|
#12 | |
|
Human being with feelings
Join Date: Oct 2008
Posts: 1,598
|
Quote:
excellent
|
|
|
|
07-03-2016, 09:12 AM
|
#13 |
|
Human being with feelings
Join Date: Jun 2006
Posts: 22,771
|
is this something which would link plugin parameters en masse to enable mirrored presets for the same plugin?
|
|
|
07-03-2016, 12:07 PM
|
#14 | |
|
Human being with feelings
Join Date: Aug 2010
Location: Germany
Posts: 2,902
|
Quote:
Can you please explain in more detail? What are mirrored presets?
__________________
Playtime - Session View for REAPER ReaLearn - Sophisticated MIDI/MCU/OSC Learn for REAPER If you want to contact me directly, please use info@helgoboss.org (no PMs please)! |
|
|
|
07-03-2016, 12:09 PM
|
#15 |
|
Human being with feelings
Join Date: Jun 2006
Posts: 22,771
|
I think I've totally misunderstood what this does.
What I'm looking for is something to link ALL parameters from one plugin to another to automatically copy plugin parameters - for instance, if you want the same exact eq or guitar/cab combination or something. after reading a bit more, I don't think this is what your plugin does, I'm sorry. |
|
|
07-03-2016, 12:19 PM
|
#16 | |
|
Human being with feelings
Join Date: Aug 2010
Location: Germany
Posts: 2,902
|
Quote:
__________________
Playtime - Session View for REAPER ReaLearn - Sophisticated MIDI/MCU/OSC Learn for REAPER If you want to contact me directly, please use info@helgoboss.org (no PMs please)! |
|
|
|
07-03-2016, 12:44 PM
|
#17 |
|
Human being with feelings
Join Date: Feb 2013
Location: Germany
Posts: 251
|
Thank you, that is looking interesting. Will check it when I have my AKAI Advance back from repair.
|
|
|
07-03-2016, 12:53 PM
|
#18 |
|
Human being with feelings
Join Date: Aug 2010
Location: Germany
Posts: 2,902
|
Released ReaLearn 1.0.0-beta3
Changes: #9 Added new target 'Track pan' #8 Added option 'Ignore out-of-range source values' and disable it by default (this only has an effect if you restrict the source range using the min/max sliders) #5 Fixed bug that caused ReaLearn to misinterpret parameter modulation and automation as 'touch' events
__________________
Playtime - Session View for REAPER ReaLearn - Sophisticated MIDI/MCU/OSC Learn for REAPER If you want to contact me directly, please use info@helgoboss.org (no PMs please)! |
|
|
07-11-2016, 12:40 PM
|
#19 |
|
Human being with feelings
Join Date: Feb 2016
Posts: 232
|
Good grief! This needs to be rolled into Reaper! Amazing work!
** Do you see any issues or performance hits if I just add this as a default input FX? In other words, if I have 100 instances of this, do you think it's gonna cause problems? Last edited by DruMunkey; 07-11-2016 at 12:55 PM. |
|
|
07-20-2016, 10:09 PM
|
#20 |
|
Human being with feelings
Join Date: Feb 2016
Posts: 232
|
I think I've found an issue...
My controller is an APC40 MkI I have it set up as midi in, but NOT a controller in Reaper's MIDI settings. However, I have a dedicated "input" track where the APC is the input device, in the FX chain I do a metric crap ton of remappings, etc., then use MidiToReaControlPath at end of chain to send all the CC's out into Reaper Control Land This works 100% fine for learning using reaper's built in learn, but it doesn't seem to work with ReaLearn. If I have reaLearn on another track (input FX or regular FX) it doesn't pick up any knob twiddling... However, if I explicitly have the APC as an input on the track ReaLearn is on, it works... So why is ReaLearn not picking up the control signals from another track even though I have verified that the APC is sending control messages? |
|
|
07-20-2016, 11:08 PM
|
#21 |
|
Human being with feelings
Join Date: Feb 2016
Posts: 232
|
Track volume also seems to have a weirdly non-linear behavior. I map a knob in relative mode, and when the volume slider is around 0dB, it's linear, but below like -20 dB, it makes really big jumps...
I have step size as low as it will go @ .01 |
|
|
07-21-2016, 12:56 PM
|
#22 |
|
Human being with feelings
Join Date: Feb 2016
Posts: 232
|
FR's:
The more I'm using this little beast, the more I'm LOVING it. I REALLY recommend you all throw a little money Benjamin's way for this. It REALLY has potential to change the way Reaper can be used. An AMAZING feature is the ability to map midi notes to inc/dec a VST param or CC. I've had to cobble multiple JS's etc. to do the same thing that is done with this plugin |
|
|
07-22-2016, 10:57 AM
|
#23 |
|
Human being with feelings
Join Date: Feb 2016
Posts: 232
|
Bummer... I just tried reloading a project that had reLearn on it... Crashes Reaper on load. Verified 100%. Event Viewer points out it's ReaLearn...
Faulting application name: reaper.exe, version: 5.2.1.1, time stamp: 0x57675257 Faulting module name: ReaLearn.dll, version: 1.0.0.0, time stamp: 0x577965b9 Exception code: 0xc0000005 Fault offset: 0x000000000011916a Faulting process id: 0x1718 Faulting application start time: 0x01d1e4408d970056 Faulting application path: D:\Programs\Reaper\reaper.exe Faulting module path: D:\VSTs\Utility\ReaLearn\ReaLearn.dll Report Id: c5aa8fd1-969a-4cc0-a5f6-04dfe19bb4d3 Faulting package full name: Faulting package-relative application ID Damn... |
|
|
07-22-2016, 11:11 AM
|
#25 |
|
Human being with feelings
Join Date: Aug 2010
Location: They put me in a home.
Posts: 3,434
|
__________________
47.8% of statistics are made up. |
|
|
08-02-2016, 03:26 PM
|
#26 |
|
Human being with feelings
Join Date: Jun 2015
Location: France
Posts: 1,442
|
Hi,
I installed the bêta 3 version and I can't find the vst on Reaper. Not in my vst folder. I found it everywhere on the Mac but there is nothing. OSX Yosemite. Thx for this good project. Tcho .
|
|
|
08-04-2016, 11:28 AM
|
#27 | ||||||||
|
Human being with feelings
Join Date: Aug 2010
Location: Germany
Posts: 2,902
|
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Not as fancy as drawing curves but powerful ...Quote:
Quote:
Should be in /Users/<USER>/Library/Audio/Plug-Ins/VST/ReaLearn.vst
__________________
Playtime - Session View for REAPER ReaLearn - Sophisticated MIDI/MCU/OSC Learn for REAPER If you want to contact me directly, please use info@helgoboss.org (no PMs please)! |
||||||||
|
|
08-04-2016, 11:32 AM
|
#28 |
|
Human being with feelings
Join Date: Aug 2010
Location: Germany
Posts: 2,902
|
Released ReaLearn 1.0.0-beta4
Changes: #11 Added new source '(N)RPN' for MIDI (N)RPN messages (both 7 and 14 bit) #13 Added support for 14-bit CCs #14 Added 'Max jump' slider to absolute mode for controlling soft-takeover behavior (also known as 'pickup') #10 Fixed bug that caused volume control to be non-linear (now behaves exactly like the volume control action) #12 Fixed action target so user interface stays responsive while loading actions #15 Fixed REAPER freeze on project load when putting a plug-in in front of ReaLearn which sends MIDI messages #17 Fixed weird behavior after duplicating mapping with FX parameter target (and probably also other target types) #19 Fixed bug that caused mapping list to be out of date after duplicating tracks
__________________
Playtime - Session View for REAPER ReaLearn - Sophisticated MIDI/MCU/OSC Learn for REAPER If you want to contact me directly, please use info@helgoboss.org (no PMs please)! |
|
|
08-07-2016, 05:20 AM
|
#30 |
|
Human being with feelings
Join Date: Aug 2016
Posts: 89
|
Helgoboss,
we put all our hope in you. Looks that you're the chosen one to bring MIDI feedback to Reaper. Last edited by Piszpan; 08-07-2016 at 05:33 AM. |
|
|
08-11-2016, 09:19 PM
|
#31 |
|
Human being with feelings
Join Date: Oct 2014
Location: Bs.As. Arg.
Posts: 39
|
Amazing work. Really useful. Thank you !!!
|
|
|
08-14-2016, 12:10 AM
|
#32 |
|
Human being with feelings
Join Date: Jul 2016
Posts: 92
|
hi, an FL like mapping formula between the in and out would be nice someday
![]() thx
|
|
|
08-14-2016, 08:26 AM
|
#33 |
|
Banned
Join Date: Sep 2015
Posts: 1,650
|
Nice work on this, thanks!
One very inconvenient feature request could be to have a MIDI filter companion effect that filters any MIDI currently being used for learned things. |
|
|
08-19-2016, 05:36 PM
|
#34 |
|
Human being with feelings
Join Date: Oct 2014
Location: Bs.As. Arg.
Posts: 39
|
I found some problems with some Control Changes such as cc 6 or 100 and 101. I did not try them all. Realearn detects them but then does not control anything...
|
|
|
08-31-2016, 07:10 PM
|
#35 |
|
Human being with feelings
Join Date: Dec 2015
Posts: 84
|
First of all awesome work! My question would be about Program Change messages. From my footswitch (that I would want to control Playtime with) I control a lot of global custom actions. But they are all with PC messages. I thought ReaLearn could allow me to get past the fact that Playtime cannot accept PC messages. It does in fact detect and learn them when I click source learn. But perhaps I am missing something. Because there is no value assigned with the learned PC message(that I can see). Is this normal?
Basically lets say I learn PC 21 to the source learn. It just says Program Change, and no "21". Additionally after seemingly successfully learning the target, it just doesn't control anything. Any input would be greatly appreciated! I am really really interested in Playtime but it would be a deal breaker if I can't get my PC messages to trigger things in it. Thanks! |
|
|
09-01-2016, 04:05 PM
|
#36 |
|
Human being with feelings
Join Date: Dec 2015
Posts: 84
|
For real though, if anyone would be able to offer insight as to why when set up as recommended. I can learn a Program Change message and learn a target trigger in Playtime, all instant with ReaLearn. But then nothing happens when trying to trigger with the controller?
I have tried even with 1 mapping only (below) in case it was taking all program change messages to be the same, and thus multiple different mappings would somehow interfere. Still nothing.
|
|
|
09-01-2016, 11:59 PM
|
#37 |
|
Human being with feelings
Join Date: Feb 2006
Location: France
Posts: 932
|
Whoah, it's fantastic !
I was desperatly searching for a way to automate the sends volume with MIDI objects, and now it is so easy ! It make it also a lot easier to link the ReaSurround parameters to MIDI controllers, so Thank you very much :-) |
|
|
09-11-2016, 02:15 PM
|
#38 |
|
Human being with feelings
Join Date: Aug 2016
Posts: 89
|
I thought that the most elegant MIDI controller linking solution is the one inside Presonus Studio One - until now.
It seems that ReaLearn has some big advantage: it can store different sets - just as VST presets. This can be useful e.g. when using u-he Diva or some modular soft synths, where you can change your building blocks inside the same VSTi. So for every "mutation" of the synth you can just save a separate preset with ReaLearn. Great. (But still... Studio One supports MIDI CC feedback. )
|
|
|
10-14-2016, 04:55 PM
|
#39 |
|
Human being with feelings
Join Date: Aug 2016
Posts: 89
|
@helgoboss,
I am aware that probably most of your time is dedicated to Playtime at the moment. However, I still hope that you will develop ReaLearn further. While it is already a HUGE improvement over Reaper's native MIDI learning, jumping parameters after you load a preset that doesn't match current hardware knobs positions is still a problem. I guess that implementing proper MIDI CC feedback is not an easy task (otherwise someone would already do it years ago). So, could we have e.g. a hook mode and/or a scaled mode? As in this video: https://youtu.be/QWnvxvHg67U?t=237 |
|
|
10-21-2016, 08:15 AM
|
#40 |
|
Human being with feelings
Join Date: Jan 2010
Location: Canada
Posts: 1,061
|
helgoboss
I've set up ReaLearn with eight Custom actions and it does not remember the settings. The first one is remembered, but not the other seven. On top of that I've tried to saving the preset and also exporting/importing the vst bank/patchfile. None of these alternatives will reset the ReaLearn vst. I would have to recreate them every time! Before ![]() After
|
|
|
![]() |
| Thread Tools | |
|
|