
Sophisticated MIDI/MCU/OSC learn for REAPER
What is ReaLearn?
And how does it compare to other projects?
ReaLearn is a VST instrument plug-in for the Digital Audio Workstation REAPER which works in REAPER only. Its mission is to equip REAPER with the most comprehensive and well thought out MIDI/MCU/OSC learn features that one can imagine, while at the same time providing many related features such as MIDI/OSC feedback (e.g. via LEDs, motorized faders and displays). It's especially suited for performers who frequently need to map control elements like knobs or buttons to REAPER functions such as track volume, FX parameters or actions. Since version 2 it's also quite usable as a tool for customizing control surfaces without having to write templates or code.
REAPER itself has a built-in MIDI/OSC learn functionality but it only provides the bare essentials. Many useful MIDI control scenarios are impossible or quite difficult and time-consuming to achieve with REAPER alone, for example if you want to restrict the controlled target value range. You would need to tinker with things like MIDIToReaControlPath and general purpose MIDI plug-ins, which totally takes the drive out of making music. ReaLearn tries to make that much easier and gives you instant access to lots of advanced features on top of that: Controller presets, conditional activation, projection ... and much more.
Video
to get an impression
Watch 2 minutes of this video to get a first impression ... and stay tuned if you are interested in the details.
Features
what makes it special

MIDI feedback
to LEDs and motor faders
Look at your controller to see what's going on in your DAW.

Grouping
of mappings
Group mappings either by using the built-in group feature or by instantiating multiple ReaLearn instances.

More convenience
intelligent learn
ReaLearn tries to guess the character of MIDI CCs when learning them (knob/fader, relative type, button, etc.). Also, it allows you to learn from everywhere by offering global REAPER actions.

Controller presets
and virtual controls
Describe your own controllers by creating controller presets or downloading them from ReaPack. Design your main mappings to be controller-independent.

Projection
know what's mapped
Project a schematic representation of your currently active controller to a mobile device (phone or tablet) in order to see immediately which control element is mapped to which parameter.

FX mappings
switch preset on FX focus
Link custom-built FX presets to FX types to easily control whatever FX is currently focused.

Fine-tuning
of mappings
"Squeeze" the target values into a specific range. React to just a sub range of a control. Let the parameter value rotate. Reverse the direction. Avoid audible parameter jumps. Build previous/next buttons.

Easy reuse
the way you need it
Save a bunch of commonly used mappings and reuse them using the built-in preset facilities, FX presets, FX chains or track templates.

Many sources and targets
control what you like
Use a keyboard keys, 14-bit CC and (N)RPN messages as source. Control track volume, track send volume and track pan.

Conditional activation
modifiers, paging
Activate or deactivate mappings by the press of a button or by switching through mapping pages.

Flexible routing
and preprocessing
If you want, you can use REAPER's built-in track MIDI routing to feed ReaLearn with MIDI events. That's useful for filtering out control MIDI messages from the MIDI stream or preprocessing MIDI events before they arrive at ReaLearn.

Per-project mappings
or global ones
Create mappings on a per-project basis. You don't need to pollute your global action mappings just for the needs of one project. Global usage is also possible by using ReaLearn as monitoring FX.