Google+

Automating Reaper (Again)

Last week, Van and I were able to go to the National Worship Leader’s Conference in San Diego for a day. We had fun at the conference, but as always, the best part was hanging out with our friends. In this case, Daniel Murphy from Planning Center and Lee Fields. While we were hanging out in the green room waiting for Lincoln to go on, I got to talking with the band’s drummer, Mike. We got to chatting about how we use Automator and Apple Scripts to accomplish various tasks. I realized I have updated my automating process for our multi-track recording (we use Reaper) since I last wrote about it, and through I would update you.

I have to give credit where credit is due; my friend Isaiah Franco was instrumental in adding some of the new functionality to the script. While we used to multi-track all three services, we decided that was a waste of disk space. Instead, we now record a 2-track board mix of Saturday night (just in case something exciting happens), a board mix and direct feed of the pastor’s mic at the 9 AM service, and a multi-track of the whole service for the 11 AM. It occurred to me that recording 32 tracks of silence during the message was also wasteful, so I figured out a way to make that go away, too. But we’ll get there shortly.

First, let’s look at the new and improved AppleScript. And I should mention that each service’s AppleScript is fired from an Calendar event set to alarm 1 minute before the start of each service. Simply select "AppleScript" or "Open File" (depends on your version of OSX) from the Alert options and choose your script to run.

Click the image to download the actual script.

Click the image to download the actual script.

I’ll walk you through what it’s doing. First, we hit escape twice, just to release any time selections or anything else that’s going on (which is good, since we edit the 9 AM for the podcast during the break, and we usually have a time selection, well, selected). The delay 1 simply slows the script down. We found that trying to execute the script at full speed was too fast for Reaper to keep up with. Since we fire the script a minute before service starts, adding 8 seconds isn’t a problem. 

Key Code 119  is End, which, as you might expect moves the current time indicator (CTI) to the end. Keycode 124 is right arrow, which we set up as a shortcut in Reaper to move one measure forward when hit with Shift-Command. That’s one of the things I love about Reaper; almost anything you can do in the app can be made into a keyboard shortcut. 

Next, we use M to set a marker at the current position (which makes locating the services easier). I set up Command-Option-C as a command to disarm all tracks. I do this because all of our scripts are based off this one and we don’t need to record many tracks the other two services. Then Command-Shift-A to arm all tracks, and start recording. 

For the 9 AM service, I have shortcuts set up to just arm tracks 1 & 2, which are fired from a slightly different script (same basic concept, though). But here is where it gets interesting. 

If I had a MIDI interface hooked up to this computer, I could fire a CC 1 and it would store that in the list of shortcuts for inserting a marker.

Finding the message in the middle of a long track can be tricky. We used to drop a marker at the start of the message by hitting “M,” but we just as often forgot. It occurred to me that the SD8 can send MIDI commands, and Reaper can listen for MIDI commands. It seemed perfect. I picked up a MOTU FastLane USB-MIDI interface and went to work. Telling Reaper to listen to a MIDI command is as simple as selecting the shortcut, then firing the MIDI command to it. 

I chose Control Channel (CC) 1 as my “drop marker” command. I then tell the SD8 to fire a CC 1 when I fire the Message snapshot. So in addition to turning off the band and bringing up the pastor’s mic, it also drops a marker in Reaper. But how to stop recording of the band tracks when the pastor is speaking?

Selecting all my band tracks, it's a simple matter of Shift-G to bring up the group dialog. Pick a group number (in this case 1), and click both master and slave arm. Done.

Selecting all my band tracks, it's a simple matter of Shift-G to bring up the group dialog. Pick a group number (in this case 1), and click both master and slave arm. Done.

Reaper allows you to group tracks together in a master/slave collection; meaning that if you arm one of the tracks in the group, they all arm (or disarm). So I set up CC 2 to toggle the arm/disarm function of track 4. Why track 4? Because our board mix is always track 1, the pastor is always 2 and the band usually starts at 3. However, sometimes both pastors speak, which means I have another pastor on track 3, which pushes my band start down to track 4. Thus CC 2 will either arm (or disarm) the snare or the kick depending on how many pastors tracks I have. But it doesn’t matter because if you arm (or disarm) either of those, the rest of the band tracks follow suit.

I’ll put CC 2 commands in my snapshot list between the 9 AM and 11 AM services to toggle the band tracks on and off as many times as I need to. 

I’ve recently learned not all DAWs will let you disarm tracks on the fly while it’s recording. That’s a bummer for you ProTools users; but hey, Reaper is $60 for non-profits. 

Finally, at the end of the service, I fire a CC 3 from my walkout snapshot which stops recording and saves all tracks in Reaper. All in all, it’s pretty elegant. My next goal is to be able to start and stop our walk in and out music playback with MIDI and possibly do the same with video recording.

Today's post is brought to you by Elite Core Audio. Elite Core Audio features a premium USA built 16 channel personal monitor mixing system built for the rigors of the road. For Personal Mixing Systems, Snakes, and Cases, visit Elite Core Audio.