Synth Shop

"Synthesizer preservation via restoration and sampling."


The Web SynthArk

Seamless Sample Loops

Introduction

This article discusses common looping issues. For a good general primer on sampling, check out TweakHeadz Sampling Tips.

Sample Player Loop End Points

Articles on looping often mention the loop start and end points must correlate, meaning the loop must start at the same amplitude as it ends (both at zero crossings, see Figures 1-3). However, exact loop point correlation requirements depend on the sample player. Some sample players (Emu EmulatorX and ProteusX, NI Kontakt, MOTU MachFive) play both loop start and end points, while other sample players (Logic EXS24) only play one end point, skipping the other. While this difference is not audible at low frequencies (where sound is changing slowly), it can create an audible transition (ticking) at high frequencies, if the loop points do not match the playing method of the host sample player.

Zero Crossing Loop Start Zero Crossing End Zero Crossing Correlated End

Sample players which play only one end point must have both endpoints correlate exactly to prevent clicking. However, sample players which play both start and end points, must have the end point one sample before the correlating start point (see Figure 4), so the sampler does not double the sample value at the loop point, creating an unintended flat spot. This implies a good loop has at have at least two consecutive correlating points at the start and end.

EmulatorX Loop Auto-correlation

Unfortunately, the EmulatorX auto-correlation puts the loop start and end points at the same amplitude (see Figures 2-3), which means it often produces loops with artifacts. However, loops auto-correlated in the EmulatorX can easily be fixed by manually moving the end point back one sample (see Figure 4). While moving the start point ahead one sample would have the same effect, if the loop is found using zero crossings and will be truncated (see Figure 5), moving the end point will avoid a truncation artifact (see next section), since the start point remains at the zero crossing. Some platform independant programs, like ZeroX Seamless Looper, can correlate the start and end points for either type of sample player, via option settings.

EmulatorX Truncated Loop Transitions

If the loop is truncated (i.e. no data after the loop end), the EmulatorX seems to send the audio to 0, after the loop end point, before it redirects the audio back to the start point. If the start point is not at 0, this can cause an audible transition (i.e. a ticking sound during loop playback). To fix this, either make sure your start point is always at a zero crossing (see Figure 5) and add one sample after the loop to your truncation window (see Figure 6). For completeness, if the loop is not truncated, the EmulatorX will follow the next sample point after the end of the loop back to the starting loop point, so there is no audible transition.

Start Zero Crossing  End After Truncation

Looping Noise

Finding a good loop in a noisy sample is often just a case of using a long enough sample. If a short loop (under 4 seconds) is used, the loop will be obvious, due to the repetition of what should be a random sound. Long noise loops (over 4 seconds) sound seamless, since the repetition is more difficult to hear. Loop points are usually not critical as long as the loop is long enough, because a poorly correlated loop point just sounds like the rest of the noise.