I’m interested in changing a Song Part, based on a Note On Event.
Here’s the use case. I’m managing the states of a looper with Song Parts. I might have a Song Part called “Reset”, followed by “Record Drums”, then “Loop Drums”, then “Reset Again.” I’ve found that a great way to manage loop recording is to automatically start recording on one crash cymbal and stop recording on the second crash cymbal.
I have a workaround. In the Local Raskspace script, I align the Variations with the Song Parts. When performing, I’m in Setlist View. I get MIDI Note On callbacks from my Zendrum. In the Rackspace script, I confirm that I’m in Setlist View and that I’m in a certain Variation. When the magic note occurs, I go to SongNextPart(), which increments the Variation. Now I look for the next magic note, and again go to SongNextPart().
It works fine, but…
It’s a bit odd, mixing Variations and Song Parts in the code. It would be cleaner if the Song script could get note events from Rig Manager MIDI Inputs. I could then check that I’m in a specific SongPart, react to a given note, and go to any other SongPart. This would allow keyswitches to random Song Parts, which might be useful.
The limitations that I found are these: In the Local Rackspace script, I can’t get Song Part events. I can go to the next Song Part, but not to a random Song Part. In the Song script, I can’t get Note On events.
As noted, I have a workaround for my use case. I have to keep my Variations and Song Parts aligned to make it work, but I plan to do that anyway.
I think that Variations and Song Parts were only separated recently, so I can understand why there are some limitations. More than anything, it was an annoyance for me to find these limits, and mixing Variations and Song Parts to get there is a bit odd.
But since I have a workaround, I’m happy.
On to the next!