Creating Seamless Loops
Loops are the basic building blocks used to create many video game soundtracks. They are a critical part of interactive music because they allow scores to adapt to any length of play time. The average person may take three minutes to complete a specific game level but the score still needs to sound flawless for the player who spends eight extra minutes exploring. Loops allow a short amount of music to last as long as necessary. This makes writing seamless loops a mandatory part of any game composer/sound designer’s toolbox.
Creating the perfect loop is simple once you know how to do it. The first concept to understand is that a loop is just a circle. To create a seamless loop, the end of the segment needs to perfectly match up with the beginning of the segment. If the waveforms don’t join there is an audible ‘pop’ or ‘click’.
Here’s one foolproof way to make sure a segment will loop properly:
(Please keep in mind this works best on drones or ambient sounds. A similar but more musical approach is discussed later.)
If I loop this drone without editing it there is a noticeable ‘click’.
To make this drone loop, the first and last waveforms need to match up (completing the circle). To do this just cut the segment into two, move first half of the segment behind the second half and crossfade them together. Now consolidate the clip and you’re done. A perfect loop!
Essentially all you’ve done is move the point where your loop re-starts. Doing this insures that your loop will create an uninterrupted or perfect circle because the waveforms at the loop point match.
To double-check your loop, listen and make sure that there are no more ‘clicks’. You can also duplicate the loop and zoom in to make sure that the waveforms match up perfectly. If there is a ‘click’ it will be visible when you zoom in on the waveform. A ‘click’ is created when the volume and direction of the waveforms are different. In the example below the waveforms match and create a seamless loop.
This looping method does not work well in all instances. When looping music that needs to maintain a specific starting point there’s a better approach. Below, I will walk through turning a simple drumbeat into a loop. I will discuss why the previous method does not work in this circumstance and what can be done instead.
If this loop is cut in the middle and put together with a crossfade (like in the ambient example), the beat will be inconsistent. If there’s any melodic material it will also be compromised. To avoid this, a loop can be created without altering the original starting position.
To best explain how to create this loop, let’s look at why looping the segment ‘as is’ doesn’t work. If we loop the segment, there is a very noticeable delay in the rhythm. I have duplicated the segment to demonstrate what’s happening. By looking at the measure markers, it’s clear that the segment is getting more and more out of time as it loops.
The problem is the segment should be exactly two bars long but with the reverb tail included it’s longer. To keep the loop in time, I have cut the segment to exactly two bars. Now the loop stays in time but there is an audible clicking sound whenever the loop re-starts.
I’ve duplicated the original loop to help show what’s going on. The ‘clicks’ are caused because there is a break in the last reverb tail’s waveform and the volume and direction of the waveform do not match. It’s also obvious that the loop is re-starting because the reverb tail disappears at the beginning of the loop. The first track is the loop segment including the missing reverb tail that must be cut off in order to keep the beat in time. The second track shows a visual representation of what the loop looks like.
So how do we keep the loop in time without creating problems? A loop is just a circle, so all we need to do is take the reverb tail that’s missing from the end of the loop and add it to the beginning of the loop.
To add the ending reverb tail to the beginning of the loop, make a cut where the loop will end. Then create a new track and move the remaining reverb tail to the new track and line it up with the beginning of the loop. Add a very small fade (only a few samples) to the beginning of the original track. This will blend the beginning and ending of the segment to create a perfect loop.
Print the new segment and you have a perfect loop!
The loop can be double-checked the same way that the drone example was. (Listen and make sure that there are no ‘clicks’, duplicate the loop, and zoom in to make sure the waveforms match up perfectly.)
Let’s go through looping a musical phrase. Looping music is approached in exactly the same way as the above drum example. The phrase I’m going to loop is from a piece I wrote titled ‘Anticipating a Journey’. The piece is made up of many different phrases that loop and overlap with each other to create an interactive score (but that’s another topic).
To make this phrase loop the tail must be separated from the main section of the phrase. Find the exact place where you would like your phrase to re-start and make a cut. By listening to the main phrase without the tail or the tail on its own it is easy to appreciate how much audio would be lost without creating a proper loop.
Create a new track and move the tail to the beginning of the phrase. Add a very small fade the beginning of the original phrase to allow the waveforms of the loop to match up perfectly. Print the combination of the main phrase and the tail segment to a new track and you have created a perfect loop!
Double check the loop as discussed earlier. Duplicate the loop and zoom in on the waveform to make sure that the waveform matches up seamlessly at the loop point.
Realistically, anything can be looped – but some segments will sound much better and loop easier than others. Here are a few tips to help you write the most seamless loop possible:
- It’s easiest if the music at the beginning and end of the loop are similar. If the segment starts with a slow minor motive and moves to a fast major one then a transition may be required at the end of the segment. Without a transition, the loop may sound disjointed. Consider this when choosing orchestration, harmony, rhythms, and dynamics around the loop point.
- For an easy loop – begin and end the segment with silence. Most of the time this isn’t a good choice musically but in many instances it works well for sound effects.
- Legato passages are more difficult to loop. They tend to sound disjointed and many times the loop point is obvious. By definition, legato passages are meant to be smooth and played without any breaks between notes. This can cause problems when looking for an appropriate loop point. There must be a point where the legato line stops or is interrupted while the loop re-starts. While it’s certainly possible to create a legato loop, it’s much more difficult to make the loop point convincing. If you would like to use legato material, consider placing it in the center of your track with more transient material surrounding the loop point.
- Transients are a good way to hide a loop point. It’s easier to create a convincing loop if the loop point includes a percussion beat.
- It’s important to consider the length of a loop. A good guideline is the average player should not hear the same loop more than three times in a row. That being said, it’s wasteful to use a three-minute loop in a level with an average play time of one-minute. Knowing the average play time will allow an appropriate loop length to be planned.
Loops are only one part of interactive music. They can be used on their own as a simple backing track or they can be woven together to create an extremely responsive score. To read more about interactive scores, check out Michael Sweet’s article Top 6 Adaptive Music Techniques in Games – Pros and Cons.
Did this article help you? Let me know!
About the Author