PLE functions ~STILL~ too fast, cause inconsistent behavior

This is not the first time I’ve posted something like this. But, it’s newly revelent once more, so let’s try again!

Issue:

I do weekly mixes of church worship services for online release. Because I get stems reliably formatted in the same manner each week, I use (or I WOULD LIKE to use) PLE to automagically move audio events associated with this week’s newly-imported stems to their corresponding tracks within LAST WEEK’s mix. This way, each week’s mix builds on last week’s and I’m not having to start from square-one each time. Furthermore, I don’t have to copy and paste all 55 tracks by hand every week. Love that.

I achieve this via a series of custom PLE presets, one for each stem-track/template-track relationship within my mix template. So, the bass preset is programmed to have PLE find the “bass stem” audio event, select it, cut it, and move it to the “bass” track within my mix template. Same for kick, snare, lead vocals, etc etc. It’s all pretty straightforward. While it’s annoying to program the first time, I literally only have to do it once. After it’s done, I trigger all the PLE presets in order with a macro bound to Ctrl +Alt + Shift + Enter, and voila! My mix just became 85%-90% complete in seconds. Fantastic!

At least…theoretically.

Unfortunately, upon triggering the macro, PLE insists on flying through the presets so quickly that Cubase cannot consistently process all the commands in time. Some end up getting dropped - in inconsistent ways - producing glitchy, unpredictable results. The most common glitch manifests as audio events which get cut successfully from the “imported stems” section but are not pasted into my template track. Sometimes - and this is much more insidious - these glitches take the form of audio events getting pasted to the WRONG track. This is far harder to notice when, as happened a few weeks ago, the “snare bottom” track ends up mistakenly pasted onto the rack tom track, is thus lightly activating the tom triggers the whole song, and I spend a solid 20 minutes trying to figure out where this weird low-end resonance is coming from. OR, when OH_R gets pasted to both OH_L AND OH_R and I spend the first 2 hours of the mix process wondering why my drums’ stereo image seems “off”.

This is a common issue in the world of automation; computers are often too fast for themselves.

Now, I can fix this myself. I can bind each of these custom PLE presets to their own keyboard shortcut (using unicode characters to save precious kbd real estate - *btw, if you didn’t know Cubase could bind to unicode characters, you’re welcome :slight_smile: *), use AutoHotKey or Windows Powershell to trigger them sequentially with a sensible 100ms delay, wrap all this up in a script activated by a custom key combination. In fact, I did exactly this in a previous iteration of this template. It worked splendidly.

But… I’m asking you wonderful gents (and lady-gents) at Steiny: Please don’t make me do this.

It’s a janky, time-consuming solution to what is, in the world of automation, a very stupid and predictable problem to have. Cubase needs a “delay”, “wait”, or “sleep” function - preferably added to both PLE’s list of actions AND Cubase’s list of native macro commands. Add this and all will be well! It should be almost trivially simple to do.

I’m potentially taking on several more regular clients soon. That’s great. But, if I didn’t want to copy/paste 55 audio events to 55 mix template tracks by hand every week, I certainly do not want to do potentially several hundred. I wouldn’t have to if there was a simple way to execute macros and PLE presets in a manner more reliably digestable to Cubase.

JUST ADD A DELAY FUNCTION ALREADY. Please :pray: :pray: :pray: :pray: :pray:

2 Likes

The common workaround before dusting off AHK and such is to interject “filler/junk” commands within the macro. Zoom, Save, Nudge (playback cursor forward and backward) etc etc. Something that won’t matter much. But in your case, I honestly think it would be as time consuming to optimize as to manually fire the commands one at a time.

+1 for wait, sleep for macros. I wish I could vote for it too, but I’m chronically out of votes.

2 Likes