Latency, of course, refers to the small delay in monitored audio that occurs when the audio is passed through a DAW. This delay is usually relatively short—on the order of milliseconds—but that can still be enough to potentially be troublesome, having a possibly detrimental effect on phase and even musical timing in some circumstances. Along with the usual global DAW latencies (that affect all tracks)—Converter latency (a millisecond or so, from the AD/DA converters), and System (processing) latency (several milliseconds, user-determined via Buffer settings)—individual plug-ins themselves can also be a source of additional latency, and this could potentially introduce both technical and musical concerns. A plug-in that introduces additional latency only on the one track it’s instantiated in could put that track out of time against others in the arrangement—if the latency was great enough, this could affect the feel of the performance(s), but even much smaller amounts of latency could still put tracks out of phase (like with multi-miked recordings) enough to compromise sound quality.
PDC/ADC to the Rescue
Fortunately, nowadays any delay issue individual plug-ins may introduce is typically managed automatically, via an option called Plug-In Delay (Latency) Compensation or Automatic Delay (Latency) Compensation—“PDC” or “ADC”, typically, which keeps all tracks in proper time. But while you’d normally keep this option on, the implementation varies in different DAWs, and there may be some caveats, and some user interaction required when it comes to implementing it in certain DAWs, so it pays to have a good understanding of what may be going on under the hood.
Now, while all plug-ins take some time to do their processing, not all plug-ins add additional latency over and above the normal processing latency of the particular DAW, as determined by the Converters and the Buffer setting. Many—if not most—modern plug-ins add zero extra latency, especially the built-in ones. But some apply effects that are more processing-intensive, and these will often introduce additional lag, which can range from a few samples—a millisecond or less—to quite a few milliseconds or more—in the most extreme cases, enough for an obvious delay. Some examples of higher-latency plug-ins might be those that emulate analog circuitry down to the component level, and many Mastering processors, which operate at higher internal resolution, to ensure maximum transparency. Depending on how a DAW’s Plug-In Delay Compensation handles things, you may need to switch it on or off, choose different options for different tasks, or set certain options which can significantly affect what you hear in playback.
In the days before automatic Plug-In Latency Compensation features, if you felt a plug-in might be adding enough unwanted latency to affect phase or musical timing, you’d have had to measure any extra latency introduced, and compensate manually. Some third-party plug-in makers (like Waves) have always included latency specs in their documentation, and you can also test a plug-in yourself—you’d record a series of clicks, and send this audio track out a DAW output back into an input, recording it twice, with and without the plug-in instantiated. The first recording will lag behind the original by the amount of system/converter latency—any additional delay in the second recording would be introduced by the plug-in, which you can then measure, in milliseconds or samples, and deal with appropriately (small positive delay adjustments or advancing a Region/Clip in the Arrange/Edit window by the appropriate amount).
The Automatic Approach
These days, some DAWs provide a readout, in case you still want or need to make a manual adjustment—for example, Pro Tools offers a display, which can be enabled in its mixer, that shows the accumulated latency of all the plug-ins in each track.
But, of course, if you’re not specifically bothered by timing issues, there’s no need to be overly concerned with measuring and quantifying plug-in latencies—most of the time, you’ll just enable the appropriate automatic Plug-In Delay/Latency Compensation feature. But there will likely be some additional settings/options that you will need to be familiar with, even if you do take the automatic approach.
An automatic plug-in compensation features determines the delays of all plug-ins, and then adjusts for them, so all tracks maintain the correct relative timing relationship. Each plug-in “publishes” its latency spec—that is, provides it to the DAW, so it can be compensated by the correct amount (sometimes, however a plug-in may fail to do this, or provide incorrect information—that’s one reason why some DAWs still offer readouts and manual adjustment options).
Forward or Back
There are two ways automatic Compensation can be implemented, and this may result in user options. If a latency-inducing plug-in is instantiated in an Audio or (Virtual) Instrument track, then that track’s timing can be advanced internally, compensating for the plug-in’s extra delay—this should be invisible to the user. But if a latency-inducing plug-in is instantiated in an Aux or Master channel, then obviously this solution is not available. Instead, all tracks must be delayed to match the latency of the plug-in with the greatest amount of added delay. So the only way to insure that all plug-in latencies are compensated for would be to implement a Plug-in Compensation feature that utilizes the latter method.
Now, in a simple playback situation, this is fine, but for recording, this could be potentially be problematic, especially when a player is overdubbing a part against other, already-recorded tracks, and there are latency-inducing plugins involved. If a player is playing along with other tracks, and those tracks are delayed, then the player’s performance will also be delayed by that amount, and the DAW would have to factor that in when it lines up the newly-recorded track against the others, when the recording is done. Some DAWs may deal with this behind the scenes without the user needing to make any adjustments (i.e Pro Tools), while others do require user input. For example, Logic presents two Plug-In Latency Compensation modes: “Audio and software instrument tracks” and “All”.
“Audio and software instrument tracks” uses the first method, above—advancing individual tracks with latency-inducing plug-ins. This makes it the mode to use for recording and, especially, for overdubbing. But this mode won’t compensate for any latency introduced by plug-ins in Aux or Output (master) tracks. “All” uses method two—delay all tracks to line up—but Logic warns that if you tried to record overdubs with this option selected, those new overdubs might be slightly out-of-time against any already-recorded tracks. You’re advised to switch modes when moving from overdubbing to mixing, for the best results.
Other DAWs may have their own way of implementing any options, or managing any user-interaction with their automatic compensation features. When the latencies involved are small enough—many latency-inducing plug-in introduce only microseconds extra delay—the whole issue may go unnoticed, regardless of the settings chosen, but, just in case, you’ll want to be aware of how your particular DAW deals with the issue, for when you do add that fancy new effect and find you suddenly have to deal with noticeable latency.
Even when a plug-in’s extra latency is very small—too small to be noticeable in terms of musical timing—it could introduce just enough delay to potentially cause problems in some situations, by putting tracks out of phase. A good example of this scenario might be a classic parallel compression setup, where, say, a drum track is either duplicated to a second audio track, or is routed (via a Send) through an Aux, and the duplicate or Aux has a latency-inducing Compressor applied, with the compressed and uncompressed versions mixed together to taste.
If a Compressor has only a few samples—a few microseconds—delay, and that compressor was inserted on a track—inline, as usual—that latency might pass unnoticed even without any automatic Compensation enabled. But if that Compressor were inserted in the duplicate or Aux track in the parallel compression hookup described above, even those few microseconds might be enough to cause unpleasant phasing between the original (unprocessed) track and the compressed version. In that case, a Plug-In Delay Compensation mode that delayed all tracks would put things back in alignment, but one that advanced only audio/instrument tracks with plug-ins inserted wouldn’t get the job done, since there’d be two tracks involved, and the compressor would only be inserted on one (before automatic compensation, the solution would have been to insert the same plug-in on the original track, set for no effect, just to match the latency of the compressed track). So if the DAW offers different Compensation modes, this would be another situation where some user action might be required, to ensure the correct implementation.
Another plug-in latency issue is the use of latency-inducing plug-ins on “live” tracks—when you’re recording a part, and monitoring through a certain plug-in as you play and record the track. Since time-travel is not possible, no DAW compensation feature can compensate for any delay that’s noticeable as you play through a plug-in in real time—if the latency is great enough, you’re going to feel it, and it may affect your performance negatively—remember, any plug-in latency is added to the converter/system latency, and may be enough to push the overall latency over the top, to the point where it’s musically problematic for the performer.
Many DAWs offer another user option—a Low-Latency Mode—which deals with this automatically, but this term is applied to slightly different features in different DAWs. Some DAWs simply turn off any overall (all-tracks-delayed) compensation for that live track, and may or may not address the latency of the plug-ins within the live signal path. Others do address the live track’s latencies, and some will selectively disable just plug-ins that introduce extra latency in live (record-enabled) tracks. Now, obviously, the latter approach will change the sound—depending on what kind of processing is involved—either subtly or drastically. Some DAWs (like Logic, for example) let you set how great the latency must be before a plug-in is disabled, and this can be a key setting, since there are some situations where you just can’t disable a particular plug-in, no matter how much lag it causes.
A good example would be recording a DI’d electric guitar through an Amp Sim or other distortion plug-in—the player needs to hear the distorted signal, even if you’re not printing the effect, to lay down an appropriate part. If you can set the latency limit of any Low-Latency mode to allow that plug-in to remain active, then you could simply leave the feature on at all times—otherwise you’d once again have to manage the option manually as the situation demanded.
With more complicated signal routings, a DAW’s handling of processing latency can turn into a real head-scratcher, but this basic overview of the most common issues should be helpful in the majority of typical situations, to insure good timing at all phases of production, no matter how much extra latency some of those fancy plug-ins may bring to the party.