Go Back   Cockos Incorporated Forums > REAPER Forums > REAPER for Live Use

Reply
 
Thread Tools Display Modes
Old 04-28-2021, 07:19 AM   #1
baldo
Human being with feelings
 
Join Date: May 2018
Posts: 52
Default A simple groovebox-like workflow

Hello dear reaper users and future reaper users,

I like hardware grooveboxes as I enjoy “self-jam” and interactive “jamming plateform” such as ableton or maschine, not only to perform live but also as an fun, enjoyable creative tool.

On that matter, reaper is not very appealing at first : there are not many controllers that integrates quickly, no native session view and setting up stuffs in reaper is time comsuming.

As an hobbyist musician and producer and as a long time reaper user, I am now sharing some of the resources and tips to achieve a more interactive, groovebox workflow that can also inspire to make live music.

Don’t hesitate to post your own resources and workflow tips for an interactive workflow, I would be happy to see that.

Cheers.

--the groovebox workflow--

Goal : a mostly mouse and computer keyboard free experience allowing you to navigate through tracks and patterns, record on the fly midi or audio in a looper way without stopping the playback/sequencer

--Prerequisite knowledge--
The heart of reaper for this, is first to understand how to customize reaper with actions, midi control surface and toolbar. I assume you know how to do this in reaper. Otherwise here are a bunch of videos for this :
-https://www.youtube.com/watch?v=CZ1I...el=REAPERMania
-https://www.youtube.com/watch?v=uaFn...el=REAPERMania
-https://www.youtube.com/watch?v=Lzes...el=REAPERMania

--Transport and track navigation mapping-- :
The first things to do is to map a midi controller with at least transport (play, rec, loop, metronome, solo mute), track navigation and undo as midi keyboard shortcuts.

--Automatic arm--
To avoid the painful arming of the tracks, auto-arming track is great when performing with reaper, it will save you a lot of time :
https://www.youtube.com/watch?v=WPE8...el=REAPERMania
this way you won’t have to arm a track when you want to record on top of it.

--Reaper regions as “scenes/patterns” --
To emulate scenes/pattern of our groovebox, i am using a less commonly known but powerful tool of reaper : Regions (https://www.youtube.com/watch?v=rPUF...el=REAPERMania ) which can be used as a non linear arrangement tool (https://www.soundonsound.com/techniq...ranging-reaper ).
Regions can seemlessly replace ableton live style scenes using the actions :
-go to next/previous region (actions available in sws extension https://www.sws-extension.org/ )
-go to region number xx action (that obeys seeks) (https://stash.reaper.fm/v/41328/gotoRegionObeySeek.zip
First map these actions as shortcuts (on your midi keyboard) to trigger regions.
Unlike native reaper action that “triggers” region, these actions both obey to reaper seeking preferences and loop on themselves, and as such regions can be triggered without loosing the beat and for as long as you want.
To achieve this, you will also need to enable smooth seek in options menu. Even better, you can also modify the behaviour in preferences > seeking to ask reaper to trigger the change at the end of the current regions or after a given number of bars.

--Quick Tracks adding--
Setting reaper tracks (audio, midi, overdub, monitoring etc) is slow.
Usually, I use either midi tracks with overdub midi and monitoring monitoring or audio tracks without monitoring (monitoring directly from my audio interface)
To quicken the setting track process, I use these actions as shortcuts/toolbar buttons to quickly add/set pre-configured tracks :
-insert midi track (audio port 1, no monitoring) : (https://stash.reaper.fm/v/41896/add_...monitor_on.eel )
-insert audio track (midi port all, channels all, monitoring on, overdub) : (https://stash.reaper.fm/v/41895/add_...onitor_off.eel )
-switch to audio/midi track : (https://stash.reaper.fm/v/41897/set_...onitor_off.eel, https://stash.reaper.fm/v/41898/set_...monitor_on.eel )
- switch to midi track (monitor on and overdub) and prompt for midi port and channel:
(https://stash.reaper.fm/v/42032/set_...nd_channel.lua)

-- Using midi channels instead of track selection --
An well known alternative to track selection when you have a keyboard with easy channel change (keystep, m-audio oxygen pro, or else) is to use tracks whose inputs is mapped to a different midi channel. However, setting a channel in reaper is natively painful.
These scripts changes quickly the input channels of a given track:
(https://stash.reaper.fm/v/41721/Trac...20chan1-16.zip )
Just make a toolbar buttons or shortcuts on your computer keyboard.

--Quick fx adding VSTI, FX, etc--
Browsing your effect can be long in reaper. Hopefully, you can create shortcuts for your FX chains. In the FX browser, just right click on a fx chain to add a shortcut. Even better, once you do this, the effect chain appears in the action menu. You can now create toolbar buttons for this.


--Proper midi overdub within time selection--
Now If you try to use your keyboard mapping in reaper with midi overdub, you might notice that it has a strange behaviour when recording in a looping section.
To solve this go in preferences > audio > loop recording and set MIDI overdub/replace recording always create selection-lenght media items to correct this.

--audio Live looping (loop station style)-- :
To record audio in a looper pedal fashion, the easiest way is to set
options > new recording media items that overlaps existing media items > create new media in separate lanes (layers). Switch back to default mode when not needed

--Performance tools--
Very popular feature of grooveboxes is the performance tools : keysnap, note repeat and arpeggiator. If you don’t have these on your midi controller, here is a bunch of resources I use:

-Key snap : Use reacontrol midi to snap your midi notes to a given key/scale. To add more scale to reaper install Reascale (https://reaperblog.net/2012/03/how-to-use-reascales/). Now the scales will be available with the ReaControl midi plugin to map them.
- Key remap for pads: For those
who owns a midi controller with pad layed out as a MPC (keylab, MPK etc), I recommand the 16 pads MIDI notes Map. You can install it from ReaPack (https://reaperblog.net/2016/06/how-t...on-for-reaper/ ). It provides you a efficient and quick way to remap you midi pads. It is very useful for drums of for saving a scale (major, minor, etc)

-Arpeggiator and note repeat. I use 3 script for an interactive use of the reaper note repeater and arpegiator :
-quick insert or change preset of note repeat : (https://stash.reaper.fm/v/41891/addOrChangeRepeat.lua )
-quick insert or change preset of arp : (https://stash.reaper.fm/v/41890/addOrChangeArp.lua )
-quick remove input fx (https://stash.reaper.fm/v/41894/delete_inputfx.lua )
The two first action will either add an arpeggiator/note repeater in the input FX of the selected track or change its presets (you have to make your own presets). The last one will delete the input FX. With these 3 actions, you can quickly add, remove and change the settings of your arp/note repeater to improve your workflow.


--Automations--
I map 3 native action to record/read automation :
-adjust last touched fx parameter (MIDI CC/OSC only)
-global automation override : all automation in trim/read mode
-global automation override : all automation in touch mode


The first action allows to automap a knob or a slider to the last FX parameter, which is very handy : just move a parameter with your mouse, now it is mapped ! From there I use the two other action to toggle between record and read.

--Realearn(advanced)--
Finally, one of the best resource to achieve this workflow is to use Realearn. It will give you a more flexible way to map action to a controller and save the mapping as a preset. Moreover, you might be able to use midi feedback with your controller to create an advanced custom mapping where the lights on your controller can reflect the state in which reaper is.



Now you have a basic, yet working non-linear interactive workflow ! navigate beetween tracks and regions, record midi with performing tool and audio loops, record automation etc.

Last edited by baldo; 05-19-2021 at 07:38 AM.
baldo is offline   Reply With Quote
Old 04-30-2021, 02:42 AM   #2
Regisfofo
Human being with feelings
 
Regisfofo's Avatar
 
Join Date: Mar 2017
Location: France
Posts: 627
Default

Thanks fot the pretty comprehensive post ! Made me learn some neat tricks!

I'll try to add some things of my worflow when I'll have a little more time.
Cheers
Regisfofo is online now   Reply With Quote
Old 05-01-2021, 02:26 PM   #3
baldo
Human being with feelings
 
Join Date: May 2018
Posts: 52
Default

thank you for your comment :-)

I will share a few more tricks very soon.
baldo is offline   Reply With Quote
Old 05-02-2021, 05:17 AM   #4
baldo
Human being with feelings
 
Join Date: May 2018
Posts: 52
Default PART 2 : Dynamic Mappings with Realearn (ADVANCED USERS)

----PART 2 : Dynamic Mappings with Realearn (ADVANCED USERS)----


NOTE : It is quite and advanced topic, and I would not recommand the following for begginers


Realearn by helgoboss (https://www.helgoboss.org/projects/realearn/ ) is one of the most exciting tool for setting midi controller maps in reaper. It allows to save and load different mappings for controllers easily, provides feedback and solves a lot of the native reaper learning issues. It has a lot of features, that I won’t explain as there are already a lot of resources for this.

However, one of my favorite feature is that you can set Realearn plugin to either respond to any midi messages coming to it (like the midi notes of a midi item or the midi fed to a track) or to respond globally to the midi messages of a specific controller (even when no track is armed/playing).

In other terms, it allows you to do this :

1°) Create general mappings for a midi controller that will work at any time (even when the track that hold Realearn is not armed). To have this behaviour you have to select <FX input> in the control input field of realearn.

And/Or

2°) Create specific mappings that will only work when the track containing a realearn instance is selected and fed with midi from your controller. To have this behaviour you have to select <name of your controller> in the control input field of realearn.


This feature gives you access to dynamic mappings : using several instances of relearn, you can define actions that will be triggered only if a track is selected/armed and actions that will be triggered no matter what.

Also, note that when using a realearn instance like in point 1°) , it doesn’t matter on which track you put Realearn. For that reason, one might set it in the monitoring FX to share the mapping across all projects.

---------------------------------------------------------------
--The dynamic groovebox workflow mapping--
---------------------------------------------------------------

Now here is my favorite dynamic mapping achieved with realearn

Here is what you can do (see picture below) :
-Create an instance of realearn (that you put in monitoring FX or master FX) that will work at any time and contains most of your mappings : transport control, track selection, undo, and automation mapping (as described in first post).
-Create an instance of relearn on track 1, that will map midi notes to region : midi note 1 goes to region 1, midi note 2 to region 2 etc (I do this up to region 40).



As a result :
-Select a track from your controller
-When a track other than track 1 is selected, you can play your midi keyboard
to play your track, record midi etc.
-When the first track is armed and selected, you can use midi notes/keys of your keyboard to trigger the different regions/patterns/scenes of your project, giving you access to an ableton live style workflow.

when my “jam” is over, I then reorder region to arrange my song.

Cheers


EDIT : To go to regions, you can either use the actions I made that are given in the first post, or use the recently dedicated features within Realearn.
Using Realearn, you will have access to midi feedback which is cool if you have a compatible keyboard controller. However, Realearn region seeking function doesn't obey to reaper seeking preferences and always wait for the end of the region before seeking.

Last edited by baldo; 05-11-2021 at 01:28 AM.
baldo is offline   Reply With Quote
Old 05-04-2021, 08:09 AM   #5
Regisfofo
Human being with feelings
 
Regisfofo's Avatar
 
Join Date: Mar 2017
Location: France
Posts: 627
Default

Nice!
When mapping to region, how do you make them to loop?
Regisfofo is online now   Reply With Quote
Old 05-06-2021, 03:35 AM   #6
baldo
Human being with feelings
 
Join Date: May 2018
Posts: 52
Default

@regisfofo :

I use the scripts I am talking about in the first post :
https://stash.reaper.fm/v/41328/gotoRegionObeySeek.zip

These scripts allows you to call the region 1 to 40 while looping and obeying seeking reaper preferences (so if you want to use it without loosing the beat you should activate smooth seek in options)
baldo is offline   Reply With Quote
Old 05-06-2021, 04:03 AM   #7
baldo
Human being with feelings
 
Join Date: May 2018
Posts: 52
Default Part 3 : Easy scales with your controller

-- Part 3 -- Scales and mapping

In the fist post of this thread, I talked about scales mapping.
When using maschine, mpc or a smart midi keyboard such as komplete kontrol, a very fun feature is the ability to play a lot of different scales using only drum pads or the white keys.

I really enjoy this feature, which i find not only for beginners but also being really fun and offering a lot of creativity, specially when coupled with an arpeggiator.

However and to my knowledge, there is not such functionnality in reaper. For that reason I wrote a jsfx plugin that does this :



The plugin is available on the stash :
https://stash.reaper.fm/v/41955/easy...-1-3-beta.jsfx

Note that it is still in beta, and might be a bit buggy.

However, you might already enjoy it :-).

Cheers

Last edited by baldo; 05-07-2021 at 05:49 AM.
baldo is offline   Reply With Quote
Old 05-07-2021, 06:29 AM   #8
baldo
Human being with feelings
 
Join Date: May 2018
Posts: 52
Default Part 4 : sync reaper regions with a real groovebox

---- Part 4 : sync reaper regions with a real groovebox----

Note : this is quite a advance topic that directly comes from Part 2.

So now, let's say you have a real hardware groovebox at home and
that you want to use reaper along with it.

One exemple of use case is if you have a drum machine and you want to record melodic part in reaper. In my case, I have a digitakt which is amazing for drums, but not so good when it comes to recording a huge number of loops of acoustic instruments.

If you want to do this while using the worklow I described in the previous posts, you might want to find a way to sync your hardware groovebox patterns with the reaper regions... and that's actually not very difficult.

First, map everything with realearn as in part 2 (my second post).

Second, if your groove patterns are triggered by midi notes, let's just send the same midi notes you are sending to realearn to another track that feeds your hardware groovebox and done !



However, if your hardware groovebox needs some other type of other message to change patterns (Program Change for digitakt), you will need some kind of JS fx to translate your message. Here is a script to translate midi notes to program change : https://stash.reaper.fm/v/41961/MIDI%20Notes%20to%20PC

Edit :
With Realearn, you have other way to this, as you can use midi feedback to send the pattern change command to your controller. This might be a better solution, as the feedback will ensure that your hardware device is always sync to the region

Last edited by baldo; 05-11-2021 at 01:32 AM.
baldo is offline   Reply With Quote
Old 05-07-2021, 06:39 AM   #9
Regisfofo
Human being with feelings
 
Regisfofo's Avatar
 
Join Date: Mar 2017
Location: France
Posts: 627
Default

Quote:
Originally Posted by baldo View Post
@regisfofo :

I use the scripts I am talking about in the first post :
https://stash.reaper.fm/v/41328/gotoRegionObeySeek.zip

These scripts allows you to call the region 1 to 40 while looping and obeying seeking reaper preferences (so if you want to use it without loosing the beat you should activate smooth seek in options)
Sorry read you too fast !
Man, you've gone deep! thanks for sharing all that!
Regisfofo is online now   Reply With Quote
Old 05-07-2021, 08:22 AM   #10
baldo
Human being with feelings
 
Join Date: May 2018
Posts: 52
Default

@regisfofo :

Yeah well, the story behind all this is that along with reaper, I have used ableton and maschine but I feel frustrated with these softwares, and reaper feels like home to me. Ableton and maschine feels heavy and not flexible enough to me.
On the other hand, reaper is awesome when you do everything with a mouse and a computer keyboard, but lacks immediacy when you try to use it in a more interactive way.

I tried a bunch of things, like playtime and other stuffs, but in the end I found out that using regions as pattern for non-linear arrangement is the most reliable things to me. Also, Realearn is a real game changer to me. This software is awesome.

Maybe I would not really use this for a real "live use", but everything works pretty well for me. :-)
baldo is offline   Reply With Quote
Old 05-07-2021, 01:52 PM   #11
Regisfofo
Human being with feelings
 
Regisfofo's Avatar
 
Join Date: Mar 2017
Location: France
Posts: 627
Default

Yes I hear you. I'm kind in a same situation.
I did live playing with reaper using lbx stripper script wich can work great for such things too but is reaaaal hard to set up correctly.
I ventured a little to bitwig witch is a great piece of software and used Moss script for both reaper and bitwig.
But Reaper's is like home for me too and realearn just made so much more things possible now!
I'm in the process of constructing some draft / practice template with quick switching of sounds to try to catch ideas on the fly or just improvise to warm up (I'm a guitar player ).
It feels kind of related to your groovebox style approach but for a slightly distinct use.

Hear this : I have a fixed number of sounds for each instruments (pads/bass/drums etc...) set in distinct folders. Then I use dynamic mode target to activate only one sound per folder using my keyboard and a modifier. Beauty is realearn allow to hide all unused tracks so it don't appear too clutered either. And realearn's setup keep pretty small and readable too.
It's working pretty well so far but I have still plenty to do to refine and test it (and not so much time...)
It will certainly incorporate your region idea now
Regisfofo is online now   Reply With Quote
Old 05-07-2021, 04:13 PM   #12
baldo
Human being with feelings
 
Join Date: May 2018
Posts: 52
Default

Ok I understand you well : you are using a different track folders that behave basically like ableton tracks, and each children track (within each folder) behaves like an "ableton clip".
It is a kind of smart muting, is that it ?

That's not bad at all
baldo is offline   Reply With Quote
Old 05-07-2021, 11:58 PM   #13
Regisfofo
Human being with feelings
 
Regisfofo's Avatar
 
Join Date: Mar 2017
Location: France
Posts: 627
Default

Hey that's another idea in fact, might be interesting too...

But what I meant is there's a drums folder, each nested track in it has one of my favorite drum sound set up so I can quickly choose to get me practicing/drafting a musical idea without to much tweaking and hopefully without the need from a screen (I need to setup a little feedback for my controller witch is a launchpad pro by the way).
And same for an electric guitar sound folder etc...
Regisfofo is online now   Reply With Quote
Old 05-10-2021, 02:22 AM   #14
baldo
Human being with feelings
 
Join Date: May 2018
Posts: 52
Default

Ok, Now I get it.

Yeah well, that's not exactly what I am looking for, but well, that's nice !

Actually, I am more interested in knowing to which extent I can use reaper like "maschine" and jam with other external gear.

I tried a lot of things (I didn't describe on this thread) and I also want to keep it simple.


For now, I don't feel satisfy with either of playtime, drivenByMoss, lbxstripper or realive for that purpose.

I am still hoping that a more "plug and play" solution will be once coded by someone (may I will do it myself one day ?). Until then, using a few home-made script and realearn feels like the best solution for me rn.
baldo is offline   Reply With Quote
Reply

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 03:50 AM.


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