Jump to content
Sign in to follow this  
jono grant

Plugin Delay Compensation issue

Recommended Posts

Hello,

If I have a session containing midi, audio and plugins and I wish to track something, (lets say a guitar running through guitar rig) I need to turn on PDC so that I don't hear a delay on my live input.

I believe PDC should only affect live inputs: however, it seems to also disable the delay on some of my other midi tracks, which are not set to live input monitoring.

The result obviously is that certain tracks are out of sync when I have PDC engaged.

Why is it affecting tracks that are not set to live input monitoring?

Hoping it's something I can change in the settings.

Please help! Thanks!

Jono

 

Share this post


Link to post
Share on other sites

Just to clarify... To don't hear a delay on live inputs you turn OFF PDC (PDC is on by default for everything).

Normally when turned off, PDC affect live inputs. So, live inputs are out of sync with the rest but can be monitored without delay.

So, you observe some synth(s) with not armed nor monitored MIDI track on input are also ignoring PDC, so they are in sync with your live recording, right?

Share this post


Link to post
Share on other sites

To clarify further, Plugin Delay Compensation is active on all tracks that aren;t affected by the PDC-inducing plugin, and the button of the same name is actually 'PDC Override',. Enabling it overrides PDC on input-monitored tracks.

But it sounds like the OP understands this. The question is what are the MIDI tracks driving... soft synths, input monitored hardware synths or direct-monitored hardware synths.

Live soft synth audio gets buffer up in advance, and behaves just like rendered/recorded audio tracks. But MIDI to hardware ports isn't compensated for PDC so audio from hardware synths can get out of sync one way or the other, depending on how they're monitored, and whether you're playing back or recording.

Share this post


Link to post
Share on other sites
27 minutes ago, azslow3 said:

Just to clarify... To don't hear a delay on live inputs you turn OFF PDC (PDC is on by default for everything).

Normally when turned off, PDC affect live inputs. So, live inputs are out of sync with the rest but can be monitored without delay.

So, you observe some synth(s) with not armed nor monitored MIDI track on input are also ignoring PDC, so they are in sync with your live recording, right?

Pardon me, yes, hitting the PDC button overrides the delay which is normally always running. I wish for it to only override the live input that I'm tracking (as it says it will do) but it is also overriding some of the virtual instrument/midi tracks, which are not set to live input monitoring.

On another note, if I do a punch-in on my live track, I have to listen to it out-of-sync until the point that I start playing, which is really hard to deal with as well. I have to create a seconday track to avoid that (one with recorded audio and one for new tracking)

 

Share this post


Link to post
Share on other sites
1 minute ago, jono grant said:

On another note, if I do a punch-in on my live track, I have to listen to it out-of-sync until the point that I start playing, which is really hard to deal with as well. I have to create a seconday track to avoid that (one with recorded audio and one for new tracking)

Yes, that's expected. It's not possible to compensate existing content, and not compensate live input on the same track.

Hard to say what might be going on without knowing where in the routing the PDC is being introduced, and how all the tracks relate to it.

I know Guitar Rig, itself, can induce PDC with some patches, and you can't override PDC on tracks that are in the delayed path.

What plugin is inducing the PDC, and where is it?

Share this post


Link to post
Share on other sites

Another aspect I've just tested is that only one midi (VI) track will go out of sync, not all of them.

I just did this test:

- Add a new VI instrument (ivory piano), played some quarter notes and quantized them.

- Then added a new audio track with guitar rig, engaged the PDC override. The Ivory piano went out of sync even though not live. The other midi track (drums) was fine.

- I then deleted the piano track and now the midi drum track played out-of-sync.

 

It seems to choose one midi track and also override it's PDC as well as the live input I'm performing on

 

 

Edited by jono grant

Share this post


Link to post
Share on other sites
24 minutes ago, David Baay said:

Yes, that's expected. It's not possible to compensate existing content, and not compensate live input on the same track.

Hard to say what might be going on without knowing where in the routing the PDC is being introduced, and how all the tracks relate to it.

I know Guitar Rig, itself, can induce PDC with some patches, and you can't override PDC on tracks that are in the delayed path.

What plugin is inducing the PDC, and where is it?

I don't have the problem with tracks that have plugins, only one particular midi track at a time.

Basically, it should only be overriding on a live input track and it's not, it's overriding the live input track and also overriding on a single midi/VI track. I see no reason for what track it chooses either. I've done tests to try to figure that out. It fairly random.

The help says this:

Some signal routings can cause tracks to be out of sync when Live Input PDC Override is enabled. To prevent any potential sync problems, follow these suggestions:

Output the live input tracks directly to the final bus in the signal flow.

Send live tracks directly to a hardware main

*This doesn't seem to make any difference. What other routing issue could cause it to override PDC on a non-live track? Gotta be something causing this.

Thanks

J

Share this post


Link to post
Share on other sites
39 minutes ago, jono grant said:

The Ivory piano went out of sync even though not live.

Ah, but it is live. Ijust realized that, though it's not visible, synth audio tracks are invisibly input monitored to echo the synth output from the track's input to the output. 

So it's working as designed, and you'll just need to freeze the existing synth tracks at least temporarily.

Edited by David Baay

Share this post


Link to post
Share on other sites

Can it be that the track in question has auto echo on? I remember that is default option but it can be turned off. That will explain the synth excluded from PDC is different (follow focus), since even without record arming, in case echo is (auto)enabled (synth can be played with MIDI keyboard), that is "live input".

  • Like 1

Share this post


Link to post
Share on other sites

It's about input echo being enabled on audio tracks. And synth tracks and the synth side of a Simple Instrument track are audio tracks,

I now recall having a discussion with the Noel Borthwick about this years ago, and the issue is that you can't separate the audio stream generated by existing MIDI from a stream generated by realtime MIDI. Synth tracks have to honor PDC Override so that you can perform and record in realtime with no  latency, and the side-effect of that is that existing MIDI will play back out of sync when recording with PDC Override enabled.

The real solution to all of this is just to keep Mastering plugins out of your project until you're done tracking.

Edited by David Baay

Share this post


Link to post
Share on other sites

You would need to click on a midi channel for it to be active or "live" though. This is not the case.

And again, it's only happening on a single midi/synth track. If I delete that track it will move to another midi track and put the PDC override onto that track's instrument.

Freezing all synths and not using plugins is not something you should have to do just to record a track.

This is acting like a bug, the PDC button is only supposed to remove the delay on any live inputs, that is it's main purpose.

Another strange thing is, it's hard to reproduce the problem if I try to. It almost seems somewhat random.

Somehow when it happens, it seems to be leaving a midi channel/synth output's input set to "on" even though it appears to not be active.

 

Share this post


Link to post
Share on other sites
6 hours ago, jono grant said:

And again, it's only happening on a single midi/synth track. If I delete that track it will move to another midi track and put the PDC override onto that track's instrument.

I just finished playing around with this for an hour, and couldn't reproduce a consistent problem. A couple of times I had  all synths go out of sync with the metronome and recorded audio when I was making too many changes at once (e.g. adding tracks, toggling input echo, record arming and PDC override), and starting recording without running playback to reinitialize the PDC amount.  But I never saw just one synth get out of sync.

I does appear I was wrong earlier when I was thinking the automatic input echo built into synth audio tracks would cause them to be subject to PDC override. I believe that was a problem back when synth recording was first introduced, but now override is only triggered by enabling MIDI echo to a soft synth, and that all worked as expected as well, except that synth recording isn't compensated for PDC like audio recording.

I dunno... must be project/plugin/platform/procedure-specific.

 

Share this post


Link to post
Share on other sites
8 hours ago, jono grant said:

You would need to click on a midi channel for it to be active or "live" though. This is not the case.

And again, it's only happening on a single midi/synth track. If I delete that track it will move to another midi track and put the PDC override onto that track's instrument.

Freezing all synths and not using plugins is not something you should have to do just to record a track.

This is acting like a bug, the PDC button is only supposed to remove the delay on any live inputs, that is it's main purpose.

Another strange thing is, it's hard to reproduce the problem if I try to. It almost seems somewhat random.

Somehow when it happens, it seems to be leaving a midi channel/synth output's input set to "on" even though it appears to not be active.

 

As long as the option "Always Echo Current MIDI Track" is set, you always have one MIDI track live. So no, you do not need to click/select/etc. the track for that. Unset that option in preferences, check then echo is off on all MIDI/instruments tracks and try again.

Notes:

  1. If you change something during playback, that does not recalculate PDC. So you need to stop transport, make the change, start transport (Sonar/CbB was never good processing modification on the fly)
  2. Sometimes PDC button is buggy. Try to rewind/reset audio engine (the same for many strange things).
  3. Check magic "prepare MIDI" buffer size (given in ms, default 50, try 500-1000). It should be long when you have plug-ins with delays (that option is buggy for at least 5 years). Synths can "skip" notes and have other strange behavior otherwise.

PS.  using plug-ins with delays and record in parallel without thinking about PDC and fancy buffers is possible, but not in CbB... 

Share this post


Link to post
Share on other sites
1 hour ago, David Baay said:

I just finished playing around with this for an hour, and couldn't reproduce a consistent problem.

It can be reproduced with 3 tracks: audio track with 2x ReaFIR, 2 instrument tracks with identical MIDI clips, originally in sync with audio.

(After PDC is calculated correctly after adding ReaFIR, which may need project reload) as long as PDC for live tracks is not disabled everything is in sync. Disable PDC (with transport stop and rewind). With "Always Echo..." set, one of the instrument tracks will go out of sync (no matter what you click/select).

Share this post


Link to post
Share on other sites
5 hours ago, azslow3 said:

It can be reproduced with 3 tracks: audio track with 2x ReaFIR, 2 instrument tracks with identical MIDI clips, originally in sync with audio.

(After PDC is calculated correctly after adding ReaFIR, which may need project reload) as long as PDC for live tracks is not disabled everything is in sync. Disable PDC (with transport stop and rewind). With "Always Echo..." set, one of the instrument tracks will go out of sync (no matter what you click/select).

Yes, as I mentioned earlier, Cakewalk can't differentially delay existing content, and not delay new content generated by the same synth output. When Input Echo is enabled, the assumption is that you plan to rehearse or record new content so it overrides the delay compensation. That's unavoidably going to cause existing content to play early. 

I thought the OP made it clear he's experiencing this issue without having Input Echo enabled on the problem track(s), automatically or otherwise.

 

Edited by David Baay

Share this post


Link to post
Share on other sites
1 hour ago, David Baay said:

Yes, as I mentioned earlier, Cakewalk can't differentially delay existing content, and not delay new content generated by the same synth output. When Input Echo is enabled, the assumption is that you plan to rehearse or record new content so it overrides the delay compensation. That's unavoidably going to cause existing content to play early. 

I thought the OP made it clear he's experiencing this issue without having Input Echo enabled on the problem track(s), automatically or otherwise.

 

Sure, one track is one track, in any DAW. So a synth/FX is included in PDC or not included in PDC. To make existing content playing with PDC and live playng without PDC the track should be duplicated and existing content removed from the copy, with recording to the copy.

DAWs are only different in which PDC is applied to particular track. In CbB, there is one global PDC for all parallel chains. There are DAWs which have one PDC for all live chains, but per chain PDC for not live chains, with automatic aligning. In the last case disabling PDC is not required at all,  live chains never get delayed from not live chains in this case.

--

What OP describes exactly match behavior from my example. So I prefer to ask one more time before agree there is yet another bug in CbB 🤔

 

 

Share this post


Link to post
Share on other sites
15 hours ago, jono grant said:

You would need to click on a midi channel for it to be active or "live" though. This is not the case.

I took the above to mean he wasn't auto-echoing the offending track, but it's not a 100% clear.

Share this post


Link to post
Share on other sites

If you just want to get the task done:

- Bounce the Master bus to a 'Master Bounce' track that outputs directly to Main Outs

- Solo that track along with the one you want to record on.

- Enable PDC Override and record away,

Edited by David Baay

Share this post


Link to post
Share on other sites

Thanks!

In my preferences, the option "Always echo current midi track" was enabled. 

Is that likely the issue then? I've turned it off, will see if the problem persists and report back I guess.

PS. Yes, if I need to punch in a lot, I'll set up the midi track twice, so I can record to the PDC override track and move the recorded midi onto the 2nd track that has no live input button selected.

It would be great if they could figure out a way to only apply the PDC override on the input itself, rather than the track so that already recorded data would play in sync and only your live instrument would have the PDC override on it.

I'm still not 100% sure why "Always echo current midi track" is needed in the first place.

J

 

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×
×
  • Create New...