1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Pitch Shifting Plug-ins cause latency

Discussion in 'Logic Pro X' started by Jay Denson, Mar 11, 2014.

  1. Jay Denson

    Jay Denson Senior member

    I have a weird problem:

    If I plug-in any pitch shifting device - Pitch Correction, Pitch Shifter, Vocal Transformer or Waves Sound Shifter Pitch - on any channel - I get ridiculous latency both on already recorded tracks and on playing an armed track live. I’m talking like in excess of 500ms depending on which plug-in.

    I don’t mean on the particular channel with the plug-in but on the whole project.

    Does anyone know why?

    TIA Jay
  3. pkm

    pkm Member

    Pitch shifting is an intensive process and will add latency no matter what. Everything else is delayed to stay in sync with the latent pitch shifted track. (Delay Compensation)

    If it's already recorded, Bounce In Place to eliminate latency. Record with the plugin bypassed, or using Low Latency Mode.
  4. Peter Ostry

    Peter Ostry Administrator Staff Member

    Although pitch shifting takes a while (as pkm said above), half a second is far too long.

    Restart the computer, there may be a temporary problem with the audio engine.

    In Logic, check your plugin compensation setting.
    Main menu: Logic —> Audio —> General —> Plug-in Latency
    Set it to "All".
  5. Jay Denson

    Jay Denson Senior member

    Hi Fellows

    Thanks for your replies.

    I did reboot, etc. No change. However then I changed my plug-in latency from All to Audio and Software Instruments. The problem vanished.

  6. Peter Ostry

    Peter Ostry Administrator Staff Member

    Sure that the problem is solved this way? With your setting you switched off latency compensation for aux, output and ReWire channels. The timing of several audio paths in this project may be broken now. In case you use the Logic drummer, the playback of its channels may be out of phase.
  7. Jay Denson

    Jay Denson Senior member

    Hi Peter

    The problem is that with Waves Pitch Shifter plugged in I get over half a second delay when playing live into a software instrument. And the whole project plays back with the same delay. Other pitch plug-ins are not that bad but definitely slow. The only way I can get it to work normally in 'All' mode is with Low Latency selected too.

    I don't understand the subject that well. I would have thought that selecting Audio and Software Tracks would include Drummer but I don't know. This is a very simple project so I don't know what other timing effects might occur with 'All' selected.

    The only thing I know is that with the Waves plug-in (especially) I get a ridiculous delay on everything. Do you think it might have to do with 32 Lives driving the Waves plug-in?

    Still puzzled so any help will be much appreciated.

  8. Peter Ostry

    Peter Ostry Administrator Staff Member

    I am puzzled too. If the long latency would come from the pitch shifter, it would not go away by changing the plugin compensation. The pitch shifter would still need it's time for calculation, correct?

    Therefore and since disabling compensation on auxes and outputs changed the behavior, I rather suspect that your latency comes from another plugin which sits in an aux or output channelstrip.

    Anything in there? Linear EQ, AdLimiter, something with a very long lookup time?

    You can easily check this:

    1. Switch your delay compensation back to "All".
    2. Check if the long delay is here again.
    3. Disable all plugins except the pitch shifter.
    4. Is the long delay now gone?
    5. If yes, activate the plugins one by one until you got the bad boy(s).
  9. Eli

    Eli Senior member

    I think this is the key to figuring out the mystery here. When plug-in delay compensation is set to "All", it "compensates" by making everything else later so that it can accommodate the processing time the latency inducing plug-ins need. My understanding is that this includes the MIDI input being used to trigger that software instrument.

    i _think_ latency compensation in general is not meant to be used in a playback situation. It is more for mixing, when the offsetting of everything "else" to accommodate the latency inducing plug-in won't matter, since there is no real time throughput going on at that stage.

    Peter, is this your understanding as well?
  10. pkm

    pkm Member

    Yes that's how it works. If you want everything in sync, you have to delay every track to match the track with the most latency.

    Delay compensation should not be used for tracking.
  11. Peter Ostry

    Peter Ostry Administrator Staff Member

    Well, we have to differentiate between playback and monitoring.

    For direct monitoring before the interface or (with just a little latency) through the interface, plugin latency and it's compensation is no problem at all. It's just like mixing. The sound may come one second later but it does not matter because you play along to what you hear. The compensation puts your new data to the correct positions.

    But software monitoring is a nogo with latency. Everything we put in comes out later. We should avoid software monitoring whenever we can.

    Of course we can handle the playback mix. We can freeze or bounce it. The problem is the input monitoring with latency-rich plugins in the input path. Impossible to play in time this way. The best you can get is a compromise. Little latency, small buffer, good personal adaption.

    You may even set the compensation to "audio and instruments", keep your auxes and outputs plugin-free, use the input channelstrip fpr realtime effects and monitor via an aux channelstrip — this works well, but it does not help if plugins in the input path needs too much processing time.


    However, in the particular case we are talking about, I suspect that most of the latency comes from the playback mix. The pitch shifter is in the input path and I can hardly imagine that a pitch shifter with half a second latency exists. And since Jay saw the latency going almost away after he had set the compensation to "audio and instruments", I am pretty sure that there are a couple of time consuming plugins in auxes or the output channelstrip. Or just one plugin with a ridiculous long latency.

    Of course there could be another problem we haven't discovered yet but normally the issue should get fixed by disabling those plugins or bouncing the output mix and mute all other tracks during recording.

    If ou have a masterbus before your output and a clean output channelstrip (both is highly recommended) you can easily send the master bus to another bus and record your playback mix directly to a track.
  12. Jay Denson

    Jay Denson Senior member

    Hi Fellows

    Well the problem wasn't really solved. As the offending plug-in was in an aux channel switching from All to Audio and Software Instrument Tracks prevented the plug-in latency from affecting the tracks. But the latency was still present in the aux channel with the plug-in. If you see what I mean.

    I can't help wondering why the latency is so bad on the Waves plug-in. It is being driven by 32 Lives - maybe that introduces latency?

  13. Peter Ostry

    Peter Ostry Administrator Staff Member

    I haven't experienced a different latency with plugins over 32 Lives. But Waves? Do they work with 32 Lives? They have these Wave Shell, I thought they cannot get converted by 32 Lives. Wrong?


    Looks as we cannot help here one a channel configuration we do not know. I suggest to open a fresh Logic project, put just this pitch shifter in and see what happens.
  14. Jay Denson

    Jay Denson Senior member

    Hi Peter

    Yes Waves plug-ins work perfectly with 32 Lives. That's why I bought it when I upgraded to LPX.

    I tried the Waves Soundshifter Pitch in a new project. The latency is high and 2 instances of the plug-in were unusable. I can always use the LPX Pitch Shifter anyway so I can move onward and upward. Got plenty of new things to learn.

    Thanks for your help.

    Regards, Jay
  15. Eli

    Eli Senior member

    That makes perfect sense. Switching the plug-in latency compensation back to Audio and Software instrument tracks stopped Logic from moving everything later in time to compensate for the plug-in on the Aux track. So, in that regard it was an improvement in terms of real time throughput.

    But of course the actual latency the plug-in causes was still present. And it isn't surprising that it is less than the total of all the latency the All mode compensated for. The ALL mode necessitates moving everything in your project later so that it is in sync with the aux track.

    Bottom line is that plug-in latency compensation is not meant to be used for real time throughput, since it adds the amount it is compensating for to the output latency of the whole project.

    There's no work around when software monitoring (that I know of) other than minimizing your input an output latency by means of the I/O buffer setting, and/or bypassing the plug-in while tracking.
  16. Jay Denson

    Jay Denson Senior member

    Hi Eli

    I have figured it all out and I understand it now.

    Talking about software monitoring: My round-trip delay is only 7.8ms so I think I could get away sending my monitor mix as a cue feed - like we did in analog - what we used to call E to E. When the tape machine was in Sync any armed track would return sync when tape was rolling and E to E when stopped or in record. (E to E means electronics to electronics back-to-back for those too young to know or too old to remember).

    I haven't recorded a vocal yet (for lack of a candidate) but my own experiments suggest that latency won't be a problem. The way we used to record using E to E made punching in a cinch. The player/vocalist heard themselves in the cans when stopped or in record but heard only what was on the tape prior to the punch-in.

    Ah, the good old days!!

    Regards and hope you are not working too hard.

  17. Eli

    Eli Senior member

    Hey Jay,

    Yeah, that latency setting should be fine for recording while monitoring with software monitoring on. I leave my buffer setting at 128 normally. Logic displays the roundtrip latency at 7.2 ms; and it's absolutely fine for me and any of the talent I've had recording here.

    Regarding the punching in scenario, check out the Auto Input Monitoring function under the Record menu. This determines the behaviour of the signal flow leading up to a punch in.

    PS: I am working WAY too hard these days. Watch for some new Logic videos coming in a couple of weeks :D

    Attached Files:

Share This Page