View Single Post
Old 05-14-2016, 11:40 PM  
Human being with feelings
Join Date: Jul 2009
Posts: 3,286
Default MIDI editor tools: warp, stretch, deselect etc

A variety of scripts for useful MIDI editor tools.

This GIF demonstrates some of the CC editing tools:

INSTALLATION: All the scripts can be easily installed via the ReaPack extension.

HELP: Most of the scripts contain extensive Descriptions and Instructions inside the script file itself. These can be read in REAPER's built-in script editor (by clicking the "Edit" button in the Actions list), or in ReaPack's "About" window. To help you get going, also refer to the next post, and if you have any queries, please post them in this thread.

PERFORMANCE TIP: If the MIDI editor gets slow and jerky when a certain VST plugin is loaded, check for graphics driver incompatibility by disabling graphics acceleration in the plugin.

PIN-ON-TOP: if the ReaScriptAPI extension is installed, script GUIs will automatically attach pin-on-top buttons.

MULTI-CHANNEL MIDI EDITING: REAPER has advanced multi-channel editing features (particularly if combined with the channel-related scripts below). Channels can be employed as 16 all-purpose groups that can be independently edited, similar to FL Studio's "color groups". In particular, if "nodes" are drawn in one channel and the connecting curve in another (which the "Connect nodes" script can easily do), it is easy to re-selected and edit the nodes separately.


The "js_Mouse editing" scripts (such as Warp, Stretch and Arch) resemble Reaper's own left-drag mouse modifier actions (such as "Draw CCs", Arpeggiate, "Paint notes", etc), in that the scripts follow mouse movement and continue to run until the user stops the script.

However, the scripts are more advanced than the native actions:

* The scripts' functioning (such as the ramp shape or the channel of inserted CCs) can be tweaked while the script is running, using the mousewheel, mouse middle button and right button.

* Whereas native actions can only be started and stopped by left-dragging and lifting the mouse button, the scripts be started and stopped in multiple ways (in addition to left-dragging), allowing a more customized and streamlined workflow.


* All the scripts can be linked to easy-to-remember keyboard shortcuts such as "S" = Stretch, "1" = 1-sided Warp, "A" = Arch, etc.

* Alternatively (or additionally), the "Mouse editing" scripts can be linked to toolbar buttons and executed using REAPER's native "toolbar arming" features, or a scripted alternative (instructions in the script file, or this later post). This GIF is old and outdated, but still demonstrates toolbar arming:


LFO Tool
The mighty LFO Tool has its own thread.

General tools
* MIDI Inspector: A MIDI Inspector that improves on the native Properties windows in several ways.
* Insert empty space in time selection -- without moving MIDI and tempo markers off the grid

MIDI editing tools
* Quick draw linear, sine or LFO curves
* Arch and Tilt CC curves to mouse position
* 1-sided warp (accelerate)
* 2-sided warp (and stretch)
* Insert CC at mouse position, leaving others selected
* Stretch and Compress
* Connect CCs with smooth Bézier curves or any other weird and warped ramps
* Remove redundant CCs
* Deselect all MIDI events outside time selection

* Fit selected events to time selection in last clicked lane
* Fit selected events to time selection in lane under mouse
* Fit all selected events to time selection
* Set time selection to selected events in last clicked lane
* Set time selection to selected events in lane under mouse

* Split / Trim notes by drawing a line with the mouse
* Select and deselect MIDI notes by step pattern

Tools for multi-channel MIDI editing
(Described in another thread.)
* Option - Selecting single note or CC in active take sets channel for new events
* Option - Switching active take sets channel for new events to channel of existing events
* Set MIDI send channel of selected tracks to channel of existing MIDI events in track
* Deselect all MIDI except in active channel of active take
* Set MIDI send channel of selected tracks to channel of existing MIDI events in track
* Autoincrement MIDI send channels of selected tracks
* Select active MIDI channel

Notation scripts
* Select all notes that have customized display lengths or positions
* Set beaming of selected notes to custom rhythm
* Set display length of selected notes to double and add staccato articulation
* Set display length of selected notes to quadruple and add staccatissimo articulation
* Set displayed length of selected notes to custom value

Inline MIDI editor
Most of the MIDI editing scripts will also work in the inline editor.
* Select active MIDI channel
* Select CC lanes to show

... and many other scripts! Please browse through the ReaPack repository for the "js_" scripts.


A taste of the other nifty scripts in ReaPack:
Kawa's script pack / X-Raym's script pack / Lokasenna's Theory Helper / mpl's script pack / eugen's TrackFXs Routing Matrix / airon's Color Swatch Tool
Attached Images
File Type: png MIDI Inspector with FileBox eXtender pin-on-top button.png (9.4 KB, 12040 views)

Last edited by juliansader; 02-13-2019 at 02:49 PM.
juliansader is online now   Reply With Quote