Jump to content

Sidechain and Delay Compensation


IMRECS

Recommended Posts

So I am just realizing that when side chain compressing in Logic X, plugin delay compensation does not compensate for the bus signal.

 

So how do we work around this? Getting close to final mixes and with all the plugins, everything is sounding great, and everything audible is delay compensated appropriately, except the bus routing that triggers the side chain is off.

Link to comment
Share on other sites

Okay I've tried a ton of combinations and it seems that the busses are not delay compensated, only the outputs that you hear are.

 

This makes truly accurate side chaining impossible, especially if you want to side chain something after a plugin with longer latencies (linear phase EQs for instance).

 

Audibly, everything in my mix sounds PDC compensated. I have chains with linear phase EQs, chains of lots of plugins with various latencies, etc. Running ping tests through every channel, I can hear NO audible comb filtering or phasing at the outputs. PDC works perfectly.

 

HOWEVER, when tapping into a Bus for side chaining, there is no PDC applied it seems. Right now I have a Brainworx Dynamic EQ that allows me to "solo" the ext. side chain signal so I can hear it. When side chaining to my Kick for example, there is a delay on the side chain signal, when played alongside the audible Kick going to the master outs. It seems that the delay corresponds to the actual latency of the plugins that come before the side chain EQ in the signal path. I have put this plugin on various channels, and the more plugins, the worse the phasing gets. If it comes after a linear phase EQ, it's practically an 1/8th note off from the audible kick.

 

So what is the work around for this, or how can this be fixed? Plugin Latency setting is set to "all", so that doesn't change anything. I've researched this a bit on other forums and it seems this has been a problem for a lot of people, with no real suggestions for a fix.

 

Thank you very much for your help.

Link to comment
Share on other sites

the kick is already going through a bus/aux channel. i don't send anything directly to the master output, other than 4 submix aux channels (drums, bass, gtr, synths).

 

all is latency compensated at the ouputs and ping tests don't create any comb filtering or latency audibly from any bus or routing scheme. only when trying to sidechain via a bus

Link to comment
Share on other sites

it seems the only solution is to side chain on a signal before it hits any plugins with substantial latency (fab filter pro Q in natural or linear phase mode, DMG equilibrium in linear, minimum or analogue phase mode, etc etc.)...with standard plugins that introduce very small latencies, it seems like the side chain can be accurate enough, and probably slightly more accurate by using a ghost trigger and pulling it back a few ms, to compensate for any small latency in the plugin chain. So I guess the lesson is side chain early on, and use plugins with longer latencies as late in the chain as possible, though still would love to know if there is any other way to work around this.

 

Also, is there anyway that I can see plugins or specific chains of plugins reported or total latencies in logic? For instance, if side chaining bass to kick, it would be nice to know how many ms of PDC is being applied to the bass by the time i drop in my compressor, so that I could pull back the ghost trigger by the same amount.

Link to comment
Share on other sites

Have you tried copying the bass drum to a new unprocessed track, setting its output to none, and using that track as the sidechain? Or am I missing something?

 

yes that's what i am doing. the issue is, let's say my bass has a linear phase EQ on it somewhere in the chain. the lin phase eq has fairly substantial latency, so while PDC aligns everything at the outputs, the bus at the side chain input does not get PDC aligned. So If I put a side chain compressor, or dynamic eq after the linear phase EQ (or another plugin with substantial latency), the trigger is not aligned to the audible audio coming off of the bus's aux channel's outputs..

 

most typical plugins seem to only cause small latencies...though if any chain or plugin causes a lot of latency the side chain will start to sound like it's happening way off.

 

for small latencies, pulling the ghost trigger back a ms or a couple of ms would be a fine solution, just listening to the transients to find a sweet spot)..

Link to comment
Share on other sites

  • 4 weeks later...

You're right IMRECS, I'm having the same problem.

Specifically, the problem is caused when the output of a sidechain bus is set to "no output" - Logic won't use PDC for that signal, because the output is unspecified / off.

 

In regards to the last post, printing high CPU plug related tracks to audio doesn't help this issue. I tried that and had no luck. We should be able to use a reasonable amount of plugs while sidechaining or not - that's what PDC is for. It seems clear that Logic isn't applying PDC the same way to aux tracks that have an output set to "no output". Of course printing to audio clears up CPU and is a good practice - but this is not a stage in the workflow where I'd necessarily be able to commit to such printing, nor want to, yet.

 

the kick is already going through a bus/aux channel. i don't send anything directly to the master output, other than 4 submix aux channels (drums, bass, gtr, synths).

 

From what you described, it sounds like you're routing the kick to an aux, instead of using the output to go through an aux channel. I'd recommend trying exactly what Jordi suggested.

 

Don't duplicate your kick track at all, instead:

 

Try and route your kick's output to "bus 1"(or any aux you prefer), then "bus 1" output is set to "drum submix". This way your kick signal is going through an aux before reaching it's drum submix group, and you can access that kick signal in your sidechain compressor via bus 1.

 

When you instead use a send or duplicate your kick, you are creating an additional kick signal, which then requires us to set the aux output to "no output" so we don't get a doubling of the kick. And when the output of this sidechain aux is set to off, PDC for that track is unspecified, and Logic doesn't know to set the PDC required for things to be aligned in playback.

 

Hope that helps and makes sense. Difficult to describe.

 

I personally wish I could use sends to sidechain, but I was getting the same PDC related problems because my sidechain bus output was set to "no output". And from what I've learned, using a send is one major proper way to sidechain compress, yet I can't find a way that Logic will accommodate this method w/o causing misaligned playback.

One way to test this is, in your sidechain compressor, unassign and reassign the sidechain signal. For me, playback is correct until I assign the sidechain signal, regardless of what plugs are involved. Unassign it and it goes back to normal, but without the desired sidechain effect. This was tricky to discover because bypassing the compressor makes no difference, but removing the sidechain assignment is the main change that causes things to fall apart.

Link to comment
Share on other sites

just get something like LFOtool and place it in your chain wherever. problem solved. depending on the type of music you're doing this tool can be super great for sidechaining. works great for dance music, but can also be triggered for non-four-to-the-floor music as well.

 

I've been interested in checking out LFO tool but isn't it only for ableton? Can you suggest what "something like" would be for logic users?

Link to comment
Share on other sites

I've been interested in checking out LFO tool but isn't it only for ableton?

 

No, LFO tool is available in Audio Units format so you can use it in Logic too.

 

As you suggest, Logic doesn't allow plugins to send MIDI to each other with the same ease as Live

 

No one's mentioned LFO Tool's MIDI capabilities, but Logic users can also use the data LFO tool generates thanks to it sending the data it generates to the IAC driver. Not perfect, but it works.

 

J.

Link to comment
Share on other sites

Jordi -

 

I checked out LFO tool, and apparently it is "simulated" sidechaining, so it causes ducking at a fixed LFO rate. I rather want my ducking to occur specifically when my kick / snare hit, and only then. LFO tool seems great, but best suited for 4-on-the-floor, which isn't what I'm doing.

 

For sidechaining, you suggested routing the trigger source (kick & / or snare) output through an aux track on the way to their submix groups or final output. I tried this and PDC worked properly as opposed to when I used a send to route my kick / snare to an aux set to "no output"; that method caused misaligned playback between my drum submix and other groups.

 

The method you proposed solved my PDC / Playback issue, but I haven't figured out how to feed the sidechain aux at the specific values that I want.

 

For example, when using a send from my kick, the send is set to 0db (same as the kicks output / mix level), BUT I like to set the send from my snare at -4 to -6db (so the snare triggers the sidechain at 4 to 6db less than it's audible / mix level). In other words, if the kick is ducking my bass 12db, I only want the snare to duck the bass 6-8db.

 

When I use your routing method, it doesn't have the same flexibility to do this as when using a send. It simply routes the signal at the output level. Whereas a send gives you an independent level setting, but then you are duplicating the signal and need to set that aux output to "off", thus causing the misaligned playback issue.

 

How can I accomplish having the snare trigger the sidechain compressor at 6db less than the kick? All while keeping playback aligned?

 

I tried using 2 sidechain compressors in a series - 1 using the kick as SC source, and the other with the snare as the source. This way I just adjust threshold so the one for the snare causes less ducking, but was worried I'm further coloring that group with a second compressor.

Link to comment
Share on other sites

This is what I proposed for dealing with the latency issue, I wasn't really proposing an alternative sidechain routing:

 

viewtopic.php?p=573541#p573541

 

J.

 

I see, you were just addressing latency related to aux channels. Well your suggestion helps find a solution with sidechain latency, since sidechain signals use these aux channels.

 

I'm just trying to get my sidechain signal (kick / Snare) to be a varied input level on the sidechain compressor instead of being the equal to the level of the Kick / snare's output. Sends allow you to "send" a level value independently of the output level, but then there's a latency issue.

Link to comment
Share on other sites

  • 8 months later...
  • 1 month later...

Later edit: It is not even needed to create a second bus. Just, instead of setting the output to "None", keep the output of the Aux Bus to "Stereo Out" and set the volume fader to minus infinite or just mute it. Basically Logic compensates as soon as the bus is set to soundcard output instead of "None".

 

My solution is using an extra bus: Set the output of your strip containing the sidechain signal to an Aux 1 (I've set it to Bus 60). At this point wat we would normally do is to keep the fader up and set the Aux 1 output to "None".

 

What I did instead was to route the output of Aux 1 to a Aux 2 (I've set this one to Bus 61) and on this second aux I put the volume fader down to minus infinite.

 

If I hook my compressor to Bus 60 I have the sidechain signal on (because the fader is up) and latency-compensated because it's output to Bus 61 is not going to "None" but to "Stereo Out" only the fader is down to minus inf.

 

Here's the breakdown:

Strip // In: Instrument/Audio, Out: Bus 60, Fader: Up

Aux 1 // In: Bus 60, Out: Bus 61, Fader Up

Aux 2 // In: Bus 61, Out: Stereo Out, Fader: Down

Link to comment
Share on other sites

  • 1 year later...
  • 6 months later...

FWIW, i have discovered another S/C problem..

 

Even on audio track inserts, if you put a latent plugin after the plugin being fed the sidechain, the sidechain jumps out by the latency of that plugin. Sigh.

 

For example, put a pad on audio track 1.

Put a drum on track 2.

Put a gate on the pad.

Feed it the drum into it's S/C for a rhythm effect.

Put a latent, say a uad plugin, on the pad track but after the gate. S/C suddenly jumps out of time.

It's always by the exact amount of the total latency of any latent plugins after the S/C plugin.

 

But if you put latent plugins BEFORE, it's fine. I even tested this in an extreme case by putting a 200ms ad limiter before the gate, and everything was still in rhythm.

 

Logic 10.3.2, OS 10.12.6

 

Just keep things like this in mind, and also that Logic does not compensate any track insert automation where there are latent effects present anywhere on that channel..whether before or after the effect being automated it doesn't matter, the automation is always out by the latency of the track inserts. I have a long running topic on gearslutz about this and it's basically 100% confirmed. it used to be you could put latent plugins after but they broke that in a point update 4 years back and it's been the same way ever since. I have tested every release as it's come out. All these tests, even with massive latencies of over 1 second (fab filter linear eq on max latency) pass in cubase.

Link to comment
Share on other sites

  • 9 months later...

I also encountered that problem.

 

I found out, that as soon as you have a Bus routet to an SC of any other plugin, PDC will not work, not only for the SC signal, but for the normal audio output of e.g. the Aux fed by the Bus.

 

The current workaround for me is to always get the SC signal from a MIDI or Audio track. This works even with Delay-inducing Plugins on the tracks. (so don't chose e.g. Bus 1, but instead Audio 1 directly from the SC drop-down menu). All of the plugin's effects on that track should also affect the SC signal.

 

Unfortunately, this means that you are not able to use Busses as SC signals anymore, as soon as Delay-inducing Plugin's are BEFORE the point, where your Bus gets its signal from.

 

There's another thread regarding this issue, which I will link to: https://www.logicprohelp.com/viewtopic.php?f=42&t=135038

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...