Writing Looping Music

This tutorial is aimed at musicians writing seamless looping music using common audio software sequencers. There is a less in depth video demonstration of this tutorial available here . It is advisable to read the entire article before performing any editing of your own as some items and explanations made would not be implemented until later.

So it's been days or weeks (or maybe even months!) and you've finished writing a song. It's so good that you've decided to donate, sell, or import it into an application as looping background music. Now if you've written the piece to start and end a specific way and you're happy with how it sounds in a loop then there's no reason for you to keep reading. This method is not an end all solution for every situation, but for most of those times when you need to produce a seamless loop of music that never stops this will do the trick.

The task of creating a loop or several loops from a song that's been rendered start to finish is a frustrating and tiresome one. This is the 2d artists equiliviant to painting a seamless texture by hand. Not that it isn't possible, only that there are faster ways to accomplish this with better results. The most common problems encountered with making loops are decay and error clipping/clicking. As audio loops you may hear an audible click. This is caused by a deformity or error in the waveform(s) by the position at the end of the audio not matching the position in the beginning. This type of error is less detectable in higher volume audio but it can ruin the ambient atmosphere for the listener in lower volumes. There are applications that will correct errors in waves though they base detection methods on the surrounding audio. This doesn't help when what we're concerned with is on two opposite sides of the wav. The best way to correct this clicking problem is to simply redrawn the wav yourself. Zoom in as far as possible and curve the wav to reach -∞db (zero signal). -∞db will be the easiest point to find on both ends of the wav. You should be able to test looping the wav for any audible clicks during the loop. Remember to avoid and jagged lines when redrawing the wav, this will create clicks.

Now that you've eliminated errors in the loop there's another really obvious problem. Decay.
When a loop cut from a rendered song loops, no matter how perfect it was cut and ironed out the sounds heard at the end will be cut short when it loops back to the beginning. Granted it is possible to get a good loop from a rendered song it's comparably as difficult as maintaining a straight line and letter size while using lineless printer paper to hand write an essay. If you use a sequencer of any kind there's no need to subject yourself to this kind of frustration. Utilizing a little elementary school math you can find the precise point to create a loop.

The first step we need to take is determine what you want to loop. After that section it off with a couple loop markers and listen to it. After you've decided it sounds good looping we're going to copy that entire section and paste it at the end. What you've got now is the loop you picked playing twice. Why did I make you do that?! Math. Math made you do it because it is a pretentious sob and knows it's always right. After you've got your double loop go ahead and render that section (the entire double loop). When you open up your sound editor open a calculator also. Somewhere on the editor you should notice a total time indicator. We are going to want the seconds and milliseconds. Plug that into the calculator and divide by two. Now look at you minutes and divide that by two (in your head I hope). Remember to convert and halves to 30 seconds. Once you add these together (calculator results and your head math) find that point in the audio. This is your loop point. We are only concerned with the audio past this point marks the position in your audio where the sounds played at the end decay (crossfade/mix/fade out) into the beginning. Everything before this point can be deleted. After that you can doctor the start and finish of the audio as described earlier to get rid of any errors in the wav. The result should be a perfect, seamless loop. This method will work with any time signature or a loop with several different tempos. Multiplying the rendered audio and dividing it to locate the loop eliminates all the guess work and frustration. It reduces the stress on your ears and gives you more time to spend on other things.

Don't thank me, thank Math.
If you'd like to tell me how wrong I am or that by some mistake you actually found this tutorial useful, let me know here.