|
![]() |
|
Thread Tools | Display Modes |
![]() |
#1 |
Human being with feelings
Join Date: Nov 2015
Location: Athens, Greece
Posts: 58
|
![]()
I was having fun with midiLooper and ReaLearn so I decided to upload an example project, so that anyone who is interested can start playing without wasting time to set up the plugins. Enjoy!
Get the example project here https://stash.reaper.fm/46023/MidiLo...01%20-%20B.RPP Plugins you will need for this project 1) Helgoboss Realearn (installable via Reapack) Website: https://www.helgoboss.org/projects/realearn/ 2) midiLooper, from the reboot of the legendary pizMidi plugins by sleiner (https://github.com/sleiner) Download the plugin collection from the builds section: https://github.com/sleiner/pizmidi/a...uns/3372937075, extract and copy into your VST folder. These builds expire after a while, so if the previous link no longer works the newer builds should be available here: https://github.com/sleiner/pizmidi/a...lows/build.yml 3) input_quantize - download the following two files and copy into the 'Effects' subfolder in REAPER's resource path (you can find this by clicking on 'Options' in REAPER's menu and then selecting 'show REAPER resource path in explorer/finder...' file 1: https://raw.githubusercontent.com/Ia..._quantize.jsfx file 2: https://raw.githubusercontent.com/Ia...y-lib.jsfx-inc For anyone interested the full repo where these JSFX come from, it is at https://github.com/IanHalbwachs/gianniMIDI How the project is set up This example project has five instances of midiLooper, each on a separate track each of which sends MIDI to a different track containing a virtual instrument. The powerful and flexible ReaLearn by Helgoboss is used to control the parameters of the midiLooper instances with an Akai APC key 25. I set up this controller because I currently own it, but midiLooper's paramaters could be mapped to any MIDI controller using ReaLearn. Although midiLooper can launch clips when it receives MIDI notes, I chose to control its parameters with ReaLearn because it allows visual feedback by lighting the LEDs on the Akai APC key 25, so we can see which loops are playing/recording. This example project is set up so that clip playback, stop and recording always starts at the beginning of the following bar. This is achieved using the 'input_quantize' JSFX. midiLooper does have a 'wait for next bar' option for clip playback, however this option doesn't affect clip recording, making it difficult to sync recorded loops with the rest of the arrangement. As a workaround I used the 'input_quantize' JSFX plugin before the instance of ReaLearn which controls the midiLoopers. When 'input_quantize' is active, it only allows the MIDI notes we send to control ReaLearn to pass at the beginning of the next bar, thus forcing our loop to start recording at the start of the bar, keeping our loops in sync. This workaround forced me to use two instances of ReaLearn, one placed after 'input_quantize' which handles play/stop and record/play and one placed on another track to handle master play/stop and the conditional activation of mappings, all fuctions which shouldn't be delayed until the next bar. Usage Loop Playback Each of the first five columns on the 8x5 button matrix on the APC is mapped to separate instance of midiLooper, controlling Play/Stop for clips 1-5 (of a total of 16 available clips.) Press a button to begin playback at the start of the next bar. In this example project, the project has to be playing back in order for clips to launch, because PPQ mode is selected for 'Host Sync Mode' on midiLooper. If 'sample' is selected for 'Host Sync Mode', the project doesn't have to be playing back. Loop Recording If the round button below a column is pressed (lights up red), the buttons on that column become record/play. Press a button and recording will begin at the start of the next bar. Press the same button again to stop recording and start playback. Recording only needs to be stopped if 'Record Length' is set to 'Manual'. Record length can also be set to a number of bars, and recording will automatically stop after the set number of bars has passed. Monitoring When the 'rec arm' button in pressed, the button matrix no longer controls the playback and recording of loops and the bottom row of buttons on the 8x5 matrix now controls the 'thru' parameter on the midiLooper. If 'thru' is enabled for an instance, we are able to monitor what we are playing live on our MIDI keyboard. This is useful if we want to record a loop, or if we want to play one of our virtual instruments live. (the 'monitor' option also has to be enabled for this to work). Track Volumes In the example project, the track volume control for the five tracks with the virtual instruments is mapped to the first five rotary knobs on the APC key 25. Loading a Clip into a Loop Slot Click the 'Load' button next to the top left of the piano roll in midiLooper to open a file chooser menu where a MIDI file can be selected. MIDI files can also be dragged and dropped from REAPER's media explorer or the file explorer (windows) or finder (macos). Dragging and dropping doesn't work in Linux. Drawing a MIDI pattern into the piano roll Left click on 'Loop Area' above the piano roll to set the loop start position and right click to set the end position. Left doubleclick on the piano roll inserts a note. Right singleclick on a note erases it. Left click+drag on a note moves it Shift + left click+drag moves a note freely if snap to grid is enabled. Alt+Left Click+drag right or left increases or decreases note length. Alt+Left Click+drag up or down increases or decreases note velocity. More info on midiLooper here: https://thepiz.org/plugins/?p=midiLooper |
![]() |
![]() |
![]() |
#2 |
Human being with feelings
Join Date: Feb 2020
Posts: 9
|
![]()
Can't seem to download the midilooper plugin. Also, the jsfx files only download the code.
|
![]() |
![]() |
![]() |
#3 | |
Human being with feelings
Join Date: Nov 2015
Location: Athens, Greece
Posts: 58
|
![]() Quote:
For the jsfx you 'save as' from your browser, or you can select all the text and copy into a text editor and save the file from there. Don't forget to save to reaper's 'effects subfolder' (from reaper's options menu click 'show REAPER resource path in explorer/finder...') |
|
![]() |
![]() |
![]() |
#4 |
Human being with feelings
Join Date: Feb 2021
Posts: 7
|
![]()
Great initiative!!
Going to try this very soon and let you know my findings. Thanks! |
![]() |
![]() |
![]() |
Thread Tools | |
Display Modes | |
|
|