Jump to content

Sidechain Latency Compensation On Bus Vs. On Channels


gg333

Recommended Posts

Hi all,

Logic Pro user for 10 years. This is a subject that has been discussed for years, across multiple forums, some say it's fixed- others say it isn't. The problem doesn't always happen on each project or the same in each situation. I've put on my deep-dive detective hat and all this is making me want to scream. 

The problem involves something to do with Logic's supposedly broken and supposedly fixed Plugin Delay Compensation and things sounding dramatically different based on if plugins are on the channels or the mix bus (for reference, my Plug-In Latency Compensation is set to "All".) My Logic version is 10.7.1 but I have been able to replicate this problem on 10.7.5 on my Macbook. 

Basically, in a large project, if I have a sidechain plugin such as ShaperBox or Kickstart on all the individual channels within a summing stack, things sound just fine. Groove gets moving and things sound in-time. In the current project I'm working on, there are 10+ bass channels within the summing stack. Instead of having 10+ instances of ShaperBox, I'd rather have just one on the mix bus. Nothing revolutionary here, this is basic stuff. However, when I disable all the ShaperBox plugins on the channels, and instead turn it on the mix bus, it's not even close to the same. Everything is different. The timing is certainly off. It all happens sooner and also seems like it cuts the sound off quicker vs. more gradually in the channels example. See picture below. 

I've experimented bouncing examples to study the waveforms with the Plugin Delay Compensation set to "Audio and Software Instrument Tracks" instead of "All". When this is set, the sidechain on mix bus example matches the waveform of the sidechain on channels example. So something within the PDC setting is messing things up. 

This has led me to draw these hypotheses- PDC set to "All" is either incorrectly adjusting the mix bus latency sidechain timing, OR is correctly adjusting it and providing evidence that it was never being adjusted on the channels in the first place. If you're confused at this point... so am I.

Basically, I don't know how to move forward when I can't get the sidechain timing to match up because latency is being affected somewhere within Logic's PDC settings. I certainly like the sound when everything is just on the channels, but then this makes me wonder if I should ever be doing anything on a bus due to Logic's errors and/or inconsistency. It is also obviously much more convenient and simple to have one instance of something on a mix bus rather than 10+ instances on channels.

Any help, experience with or information on this subject would be greatly appreciated!

Screen Shot 2023-01-10 at 9.30.51 AM.png

Screen Shot 2023-01-10 at 10.57.41 AM.png

  • Like 1
Link to comment
Share on other sites

  • 4 weeks later...

For anyone else looking for information on this, I'm just posting to offer that what the OP describes matches my own observations, and as far as I know is a known issue with Logic (I've submitted a bug report, for what it's worth, and encourage anyone else who encounters the issue to do so as well).

It appears that timeline-synced plugins such as ShaperBox or Logic's own Step FX aren't properly latency-compensated when inserted on an aux channel (or, as a separate behavior, when there's sidechaining anywhere in the project). Although the thread title mentions sidechaining, you don't actually need to sidechain to get the behavior - it will occur when the plugin is on an aux channel even if there's no sidechain. Also, the OP mentions large projects, but I've found I can reliably reproduce this with a minimal example. As the OP states, this happens when plugin latency compensation is set to 'All', but not when set to either of the other options.

I've been researching this and trying to find a practical, effective workaround, but haven't had any luck so far. (Currently on Logic 10.7.7, macOS 12.6.2.)

Also, OP, if you're still around I'd be curious to know whether you ever made any progress with this.

 

 

Edited by scg
  • Like 1
Link to comment
Share on other sites

SCG,

thanks for your input into this. Yes I’m still here and unfortunately still encountering this often. My (awful) workaround is to put an instance of Shaperbox at the end of EVERY single bass channel. This particular project has over 20 unique sounds that need to be fed to the same sidechain… so that means I have 20+ instances of Shaperbox running. Let me tell you how fun it is when you want to make changes to one… then have to apply it 20+ times to all the others so they match.

10+ years with Logic and Ableton keeps calling my name from the corner…….

  • Like 1
Link to comment
Share on other sites

 

Thanks for your reply gg333.

Just in case you're not already aware of it, I'll offer a workaround that does work (but isn't always practical). The solution is to insert ShaperBox as an instrument on an instrument channel and trigger it via MIDI, which will keep it synced correctly. You can then route all your channels to its sidechain via a bus, and process them all at once. This isn't really a 'universal' solution, and quickly becomes impractical if you have lots of instances of ShaperBox on different channels doing different kinds of processing, but I just mention it in case it might help in your particular case.

Also (I assume it's ok to talk about other DAWs here!), although obviously different DAWs have different strengths and weaknesses and aren't necessarily better or worse than each other, this is an area where Ableton does seem to fare better. Ableton actually suffers from similar PDC issues when it comes to timeline-synced plugins like ShaperBox. However, there's a solution available in Ableton that's not available in Logic, which is to use MIDI triggering with ShaperBox instances that are inserted as audio effect plugins. This allows you to use ShaperBox instances wherever you want, and trigger them all 'remotely' using MIDI, which solves the problem with minimal fuss. (You can sort of do something similar in Logic using the IAC driver, but it has some disadvantages, and in my experience doesn't produce good timing results.)

Of course it's all about tradeoffs when it comes to DAWs and software in general, but these particular issues seem to be significant obstacles for certain genres and types of production. In any case, if you're interested in the MIDI triggering solution, you can find info here (some of the details are out of date, but the general ideas are correct).

 

Link to comment
Share on other sites

Thank you both! Any insight into this is much appreciated, for myself and others. Hopefully we can replicate the problem and pinpoint some workarounds. Or potentially get Apple’s attention (I know that may be a long shot given this issue has existed for 10 or more years.)

  • Like 2
Link to comment
Share on other sites

 

I should mention that I previously posted an example project here along with a description of the behavior. That example isn't totally 'minimal' though, as it covers multiple problem cases, so I'll include a simpler example here.

I used Step FX rather than ShaperBox, since it's stock and exhibits the same behavior, but I can provide an example using ShaperBox if you prefer. In order to observe the behavior, you'll need Settings->Audio->General->Plug-in Latency->Compensation set to 'All'.

The example routes a sustained note to an aux channel, and places a simple quarter-note on/off gating effect on the aux channel using Step FX. The correct and expected behavior is that you hear on/off quarter notes, exactly in time with the metronome. However, when there's a high-latency plugin on the aux channel (Vocal Transformer in this case), the Step FX instance is knocked out of time. To observe the correct behavior, simply remove the Vocal Transformer plugin.

I've gathered quite a bit of info on this, so please let me know if I can provide any other details.

 

synced_plugin_example.logicx.zip

  • Like 1
Link to comment
Share on other sites

1 hour ago, David Nahmani said:

I suggest you also report it via the official channel, as I'm guessing more people reporting the same bug can't hurt: https://www.apple.com/feedback/logic-pro.html

 

Oh, don't worry, I reported it quite a while ago! In any case, many thanks for taking the time to look at the example project and confirm the behavior, which at least provides some confirmation that myself and others struggling with this issue aren't just imagining it. Speaking for myself at least, it's probably time to stop looking for magical solutions, settle on a workaround, and move forward.

Thanks again for your help.

 

  • Like 1
Link to comment
Share on other sites

  • 3 weeks later...
27 minutes ago, Jjjdg said:

Any positive updates on this… I’m experiencing the same issue. 

Just out of curiosity (and to maybe add some additional data to the thread), can you describe how the issue is manifesting for you? And can you identify the circumstances that cause it to occur?

  • Like 1
Link to comment
Share on other sites

  • 1 month later...

I've had this problem too and one thing I figured out recently is that this is much worse when side-chaining one bus to another bus. If I side-chain a bus plugin to an individual track, suddenly the problem gets much less noticeable or goes away entirely

Link to comment
Share on other sites

On 3/25/2023 at 10:29 PM, kotakcze said:

I've had this problem too and one thing I figured out recently is that this is much worse when side-chaining one bus to another bus. If I side-chain a bus plugin to an individual track, suddenly the problem gets much less noticeable or goes away entirely

Do you think you could post a test project where this is the case? For workarounds it would be cool to see routing-wise why that is. Because I used to have a few test projects where using Track Stacks and buses solved the problem entirely. Although the last time I used a MIDI-controlled AU effect it didn’t help.

Edited by sunbrother
Link to comment
Share on other sites

  • 1 month later...
On 5/19/2023 at 11:54 AM, Ersin said:

Im also having this issue. Regardless of workarounds Apple needs to prioritise fixing this! Logic is great but this is a massive bug!!

Knowing this is still an active topic, affecting so many people, gives me hope that Apple will fix it in an upcoming release. Speaking of- I just noticed there’s a huge update available- I’ll check it out and see if maybe this is addressed 🤞🏼

Link to comment
Share on other sites

8 hours ago, Ersin said:

Still no fix on 10.7.8!

😩

Absolutely unreal. There's no way at this point they're not aware of it... so they must be purposefully ignoring it. The question is why? Is it genuinely not fixable? So frustrating. 

Link to comment
Share on other sites

3 hours ago, gg333 said:

Absolutely unreal. There's no way at this point they're not aware of it... so they must be purposefully ignoring it. The question is why? Is it genuinely not fixable? So frustrating. 

If they didn’t fix it, it’s because it is not that easy to fix and likely imply some compromise(s) they are not too keen to undergo…

Link to comment
Share on other sites

  • 5 months later...

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...