Key Issues: 6 Ways To Reduce Soft Synth Latency - EMusician

Key Issues: 6 Ways To Reduce Soft Synth Latency

Has this happened to you? You set up a soft synth in your DAW and monitor its signal. When you press a key on your MIDI keyboard, the sound plays after a short delay. This is called latency—the time it takes your gear to process the signal flow—and it can really mess up your timing. You need to hear the synth at precisely the same time you press keys on your MIDI controller. Here are six options to reduce latency.
Author:
Publish date:

DON’T MONITOR THE SOFT SYNTH

• If you’re playing a synthesizer, connect its audio output to your monitor system.
• If you’re playing a MIDI controller, connect its MIDI Thru port to a hardware sound module plugged into your monitor system.
• Set the synth or module to a patch like the soft synth’s.
• Listen to that signal instead of the soft synth. Disable Echo Input Monitor (or similar function) in the DAW track containing the soft synth.
• Set the buffer high. Record your part on the MIDI sequencer track. During playback, you’ll hear the soft synth play without a delay.

MONITOR WITH HEADPHONES

Monitoring with headphones has less perceived latency than monitoring with speakers, because sound takes time to travel from the speakers to your ears. For example, if your speakers are six feet away, that adds 5.3ms of perceived delay to the monitored signal.

TRY A DIFFERENT DRIVER

Drivers affect latency, so download the latest drivers for your audio interface. However, note that earlier versions of drivers are sometimes faster than later versions. Also check out third-party drivers such as CEntrance Ideal Driver (www.centrance.com) for Win XP, and asio4all (an ASIO overlay for WDM drivers; www.asio4all.com). You have to set up your audio software to use ASIO in order to notice any change in latency. Avoid MME drivers.

TRY A DIFFERENT AUDIO/MIDI INTERFACE

Some interfaces have less latency than others. Check the specs.

REDUCE BUFFER SIZE

In your interface control panel (Figure 1), or in your DAW (Figure 2), you can set the size of the buffer. The smaller the buffer, the lower the latency. Buffer size is indicated in samples or in milliseconds. Latency (ms) = buffer size (samples) x 1000 divided by the sample rate. For example, if the buffer size is 256 samples and the sample rate is 44.100Hz, the latency is 5.8ms.

Fig. 1. Setting the latency in the Interface Control panel.

Fig. 2. Setting the latency in the DAW Audio Preferences window.

As you reduce the buffer size and play the audio, you’ll hear drop-outs or crackles in the audio at some point. How small you can set the buffer depends on how well you’ve tweaked your computer for speed (more on this later). So, a small buffer gives low latency, but tends to cause audio glitches. A large buffer increases latency but prevents glitches. Which setting is best?

To solve this conflict, use two different buffer settings. Set the buffer/latency small (under 4ms if possible) while recording a soft synth. During playback and mixdown, set the buffer large (maybe 25ms). The bigger buffer will reduce the load on your CPU, and let you use more plug-ins and tracks without creating drop outs and crackles.

TWEAK YOUR COMPUTER FOR SPEED

If you adjust your computer settings to reduce the load on your CPU, you can lower the buffer size to a usable value without problems. Optimizing your computer is a whole subject in itself, but try these tweaks for starters.
• Disable unused MIDI inputs.
• Remove unused audio drivers.
• Reduce video acceleration: Select Start > Settings > Control panel > System > Performance > Graphics > Advanced. Reduce Hardware Acceleration as much as you can without degrading the display of your audio program.
• Freeze or bounce tracks that have effects, or temporarily disable any plugins. You might also render or freeze other MIDI tracks to audio tracks, then disable their soft synths. Archive and temporarily delete tracks you don’t need to hear while overdubbing.
• Set up a bus with reverb or echo set to 100 percent wet or 100 percent mix. Use aux sends in tracks to create reverb/echo, instead of using a reverb plug-in in each track.
• Right-click My Computer > Properties > Advanced > Performance > Settings > Advanced > Processor scheduling > select Background Services. This setting allocates more processor time to background activities, such as streaming audio and ASIO drivers.
• Use one hard drive for the operating system and programs, and another hard drive for audio files and samples.

WHAT CAUSES LATENCY?

It’s all about the time it takes to process this signal flow:
• A key press generates a MIDI note-on message at the MIDI Out connector.
• That note-on message enters your audio/MIDI interface, which converts it to a USB, FireWire, or PCI signal.
• In your computer, the interface driver (a small program) lets your DAW software communicate with the interface.
• The MIDI signal triggers the soft synth.
• The audio from the soft synth—and all the other tracks—goes into a buffer (a small chunk of memory that holds the audio signal before playing it).
• The digital audio from the soft synth gets converted back to analog audio in the audio/MIDI interface.
• That analog audio goes to your monitor speakers. You hear the soft synth note that you played. Now, the total delay between key press and note sounding is the sum of these latencies:
• MIDI-note generation: about 1ms per note in a chord.
• Driver: about 4ms to 6ms, depending on the driver.
• Output buffer: whatever you set it to—say, 1ms to 25ms.
• D/A conversion: about 1ms. So, if you set the buffer to 3ms, the total round-trip latency when you play a MIDI soft synth is about 9ms. That’s not bad, considering that 9ms is just noticeable to many people according to CEntrance. You can measure your round-trip latency with the Centrance Latency tester (www.centrance.com).