Using DP as an Auto-Arranger

Discussion of Digital Performer use, optimization, tips and techniques on MacOS.

Moderator: James Steele

Forum rules
This forum is for most discussion related to the use and optimization of Digital Performer [MacOS] and plug-ins as well as tips and techniques. It is NOT for troubleshooting technical issues, complaints, feature requests, or "Comparative DAW 101."
Post Reply
stublito
Posts: 45
Joined: Tue Feb 09, 2010 1:03 pm
Primary DAW OS: Unspecified

Using DP as an Auto-Arranger

Post by stublito »

I use DP for gigging, audio and MIDI in the chunks, and then a Vrack with the Vocal, guitar, plugs etc. NOTE: I especially love DP control on a little iPad Touch on my mic stand – MOTU, please update the app!

For jamming and solo work, I tried One Man Band, but the editing the arranger files is a black art. So I though I could do something in DP, thanks to DP’s unique split structure

I decided up front that I would have 4 sets of 4 MIDI tracks – drum, bass, pad and keys (some of the bass and key tracks could be minor key) for each chunk. Each track would be a looping 4 or 8 bar pattern. I would want to switch various combinations of tracks via a foot switch.

I have a set of Keith McMillan 12 step pedals. Using a utility called MIDIpipe, I mapped the 13 bass pedal notes to pitch bends 0- 8192, set the receiving synth to +12 pitch bend. To avoid the obvious pitch bend effect, I made several maps with various split points. For instance the E split imitated the bass guitar, the D below E folds up an octave. For a keyboard, a G split minimized the “staircase” pitch bend effect.

For the foot switching part, I looked at expensive MIDI foot controllers. Then I discovered that MIDIkeys has a “Global hotkey” feature – it hijacks the keystrokes mapped to it, even when running in the background. I made a foot switch using an old Dell keyboard. I decided to use the number pad key codes so that I could also use a Bluetooth number pad as a wireless controller.

The next step was to open the MIDIkeys package, and find the keymap xml file, and edit it to respond to the numpad key codes. So now I could generate MIDI notes in the background to be used for control.

As DP does not allow control access to the track mute buttons (outside of the control surface hooks), I decided to use MIDIPipe and Applescript to do the switching. I set up 16 IAC channels and routed the 16 MIDI tracks to MIDIpipe via IAC.

I could then program various foot switches to activate various sets of the IAC DP MIDI tracks in real time. But arrangers allow you to press a button ahead of time, and the change occurs on the downbeat. And, as you probably need to play a bass note on the downbeat as well…

MIDIpipe has a limited implementation of Applescript, but with the help of some friendly folks at MacScripter, I discovered that 8 or 9 properties were “global” ie: could be shared between individual MIDIpipe “pipes”. So now I could set a flag for a function and then have DP send a “trigger note” on a designated DP “control track” to trigger changes on the downbeat.

The biggest challenge was limiting the number of footswitches. I currently have 8 – 5 “mixes”, a major/minor toggle, a drum fill one shot and start stop.

If anyone is interested I could share the MIDIPipe file and other details.
User avatar
terrybritton
Posts: 1117
Joined: Thu Jun 04, 2015 8:45 am
Primary DAW OS: Windows
Location: Elizabeth City, NC
Contact:

Re: Using DP as an Auto-Arranger

Post by terrybritton »

Very impressive undertaking! My hat's off to you for sure! :D

I'm on a PC, and similar tools are likely available to do these sorts of things. But having the advantage of Applescript hooks like you do is a fantastic advantage!

I agree that little iPad app is terrific -- wish they made that for Android. I like the Cuemix one as well for TouchOSC, and use it on an Android tablet (Nexus 7).

Terry
Computer: Sweetwater CS400v7 Intel Core i7-10700K CPU @ 3.80GHz | 64Gigs RAM | Windows 11 Pro x64 |
MOTU 828 mk3 hybrid

DAWs & Live: MOTU Digital Performer 11.31 | Cantabile Performer 4
Keyboard Synths: Kawai K5000s, Korg Wavestation
Controllers: NI Komplete Kontrol S-88 Mk3 & S-49 Mk2; Maschine Mk3 & JAM;
Akai MPK249 & 225, Alesis QX49, Behringer BCF2000 & FCB1010
Rack Modules: Ensoniq ESQm, Yamaha TX81Z, Wavestation SR

Tutorials: https://youtube.com/@CreatorsMediaTools
Post Reply