I happened to be browsing Printmatic.net, the blog of rapper/beatsmith Blueprint and came across the following quote in quick overview of Reason vs Ableton Live:

For years I thought that Reason & Recycle had the sample game on smash. I had tried an earlier version of Ableton and didn’t think their sample warping was that strong. Well, it’s strong now. I’m even willing to say that if you’re a guy who samples, taking a week or two to master the warp function in Ableton will completely change how you do music - printmatic.net, Five Differences between Reason and Ableton Live

I found this statement interesting as Recycle isn’t the same as time stretching (and I’m willing to bet Blueprint knows this and knows it quite well) and its worthy of a blog post in itself.


The Short and Dirty History of Recycle …and sample time stretching

image

Propellerhead Software (best known for Reason) started out originally developing two pieces of software, ReBirth RB-338 (which emulated Roland TB-303 synthesizers, a Roland TR-808, and a Roland TR-909 drum machine in a virtual rack) and Recycle.

Recycle was developed in the late 90s, a time when CPU power was much more limited, time stretching algorithms weren’t nearly as sophisticated, and real-time stretching of samples was non-existent.

Loops and loop formats pre-date Recycle, distributed in a variety of ways, such as AKIA sound disks, Audio CDs, WAVs and so forth. The problem was that the loops were locked to the BPM (tempo) of the original source file. Any musician looking to use pre-made loops or create their own loops were limited by the technologies of the time. A loop would simply be a repeating sound file and not easily stretched.

Clever in the early/mid 90s, producers in the electronic music fields (Hip hop and electronica) often would use hardware (and sometimes software) samplers to cut up a particular sample into slices, and then trigger them manually. The effect allowed digital musicians to trigger samples and create their own arrangements. A drum track could be divided up into individual percussive hits and played back any way the musician saw fit, regardless of BPM. This also allowed clever musicians to cut up a loop and trigger it back in the same order at different BPMs in the same order as the original. 

Recycle modeled itself cleverly after the slicing techniques, and created a file format based on the slicing techniques that were performed manually often on hardware samplers like the AKIA MPC series.

Recycle

image

Recycle is an audio application with a singular function: convert loops into Recycle (.REX/.RX2) sound files, which can be used with a wide range of DAWs (Digital Audio Workstations) such as Cubase, Logic, Protools, Ableton,  Reason and plenty more.

Recycle uses a combination of using an assigned BPMs and hit points. The user can manually assign how many beats are in the actual sound file, and then Recycle can calculate the BPM of sample .

Example: if we know a 5 second clip has 8 beats then:

5 (seconds) / 8 (beats) =  0.625 (seconds per beat)

60 (seconds) / .625 (seconds per beat)  = 96 BPM

This allows for loops to be any beat length such as 1 bar and half bars (6 beats at 4/4 time), and other applications will correctly understand the BPM.

A user then assigns the hit points, which create slices. The slices are triggered based on the BPM, relative to their position.

The magic of Recycle

There’s a few minor algorithm tweaks to make this sound slightly better than if the sound file was simply chopped up into relevant pieces and played back at that speed. If a 120 BPM loop were played back at 100 BPM, you would hear the gaps between each sound and if you were to play a 100 BPM loop at 120 BPM, it might sound very choppy as sounds may overlap each other.

Recycle uses a bit of trickery to fool your ears. Each slice has a simple delay effect that allows the sound to trail off at slower-than-the-source BPMs. This mild echo effect is only heard when a loop’s playback speed is slower than the original source file. The effect becomes more pronounced the slower the user plays back the sound.  REX has its limitations thus a loop played back too slowly will suffer “gapiness”.  When the BPM is increased (depending on the host’s interpretation of the RX2 file) a quick fadeout may be applied to slice, to give it a smoother sound. Playing back a loop too fast, will often result severe choppiness. 

Despite its limitations, it was a miracle. in the late 90s, working with single-core sub-1GHz CPUs minuscule  cache, with bus speeds usually 66-133 MHz and limited bandwidth, this sort of “hack” was groundbreaking as it required little CPU overhead and BPM changes could be performed in real time. 

Even better, Recycle is dead simple to use (and very fast for its time as it would render the waveforms faster than most applications).

Resampling (The first digital time stretch)

For clarity’s sake: I’m going to refer to the act of stretching or shrinking an audio file’s length as “Time stretch” regardless if the end result is shorter or longer.

Time Stretching is exactly what it sounds like, a sound is elastically stretched to a new length, without affecting the pitch.  Back in the days of vinyl and analog tapes, the only way to change a sound’s tempo was to play it back faster or slower which also affected the pitch, thus it became known as pitch shifting. 

Due to horsepower constraints, digital audio was limited to resampling, which is analogous to the analog pitch shift. Resampling works by changing the sample rate of a digital audio file, then playing it back at the original sample rate. This results in the same behavior as simply playing back an analog source like a vinyl record faster or slower.

Early hardware samplers (and software packages) often had the ability to resample, even in real time. This allowed real world sampled instruments to be recreated into simplistic midi instruments without having to record every note in a scale being played. In the memory and disk space starved worlds of the 1990s, often a digital instrument featured samples at intervals to save precious space. A piano might have every 3rd key sampled. For example: Pressing the C key on a keyboard  play the C note sample sound file. When the D or C# keys are pressed, the  C key sample, resampled in real time to the D or C# note. Since resampling is literally playing a sound back faster or slower, it altered the length of the sound. Samplers became adept, borrowing from synths the ability to control the volume/length based on keyboard presses such as attack, sustain, decay, release often known as ASDR Envelopes.

Time Stretching

Due to the computational limits of computers at the time, the very earliest time stretching algorithms required a significant amount of time to process, and the algorithms were not nearly as sophisticated as they are today. Even a minor  time stretch often resulted in a massively quality drop in the sound file. The first time stretch algorithms started appearing in software apps in the mid/late 90s. These  integrated into the DAWs themselves in the early 2000s. 

However, even in the early 2000s, time stretching was too CPU intensive to perform in realtime and thus had to be processed before playback, and resulted in destructive edits but the algorithms had significantly improved. Many of the popular DAWs  started offering multiple time stretching algorithms. By 2005 Logic 7, FrutiyLoops, and Cubase all offered variants of real time time stretching.

Today, even low end laptops pack enough horsepower to time stretch multiple tracks of audio in realtime with pretty convincing results.  Albeton and Cubase both offer audio warping based on hit points allowing users to quantize waveform audio to the BPM of the song.

Recycle vs Time Stretch

Since Recycle doesn’t actually alter the sound files themselves, there’s no drop in quality by time changes. The slices can also be imported into most DAWs as individual files, allowing users to rearrange the slices in a loop in any way they see fit. Many apps can direct import the rex loops into samplers and assign the slices to separate midi notes, allowing the users to trigger each slice individually.

A Recycle loop can easily be imported between wide range of applications and the REX loop will automatically snap to the project’s BPM. If the project BPM changes, the application simply play it back at the proper BPM. 

Time stretching is more complex as it isn’t a file format but rather a technique or process. This is important to understand as REX/RX2 files contain all the necessary data for an application to play them back properly. Some formats contain meta-data for programs interpret such as Fruity Loops (WAV) or Apple Loops (AIFF) which lets an application know the original loop’s BPM and then can be time stretched appropriately to a new BPM. 

Time stretching quality and behavior varies widely between the applications. Some applications like Ableton, attempt to detect the root tempo and beats, then assign warp points within file. Cubase makes doesn’t make loop assumptions about audio files but it allows stretch to the song’s time line and snap positions, and assign warp points within. 

Time stretching is very powerful and allows you to easily warp audio segment by segment. Time stretching allows for considerably flexibility than Recycle.

So why would anyone use nearly 20 year old Recycle format? Recycle does not alter the sound slices within the loop. This means the sound slices will remain the same quality regardless of BPM. This is very beneficial to percussion loops as time-stretching drums often results in drums that sound “off”.  Also, unlike meta-data loop formats (Apple Loops/Fruity Loops), Recycle loops are pre-sliced which often makes for easy rearrangement.  For these reasons alone, Recycle still remains arguably the most desirable format for percussion loops.

By no means will Recycle always deliver better results than time stretching for percussion nor will time stretching always deliver better results for melodies. Recycle isn’t inherently inferior either to time stretching. Recycle is a different strategy than time stretching that yields different results. 

Its another tool the belt of the modern digital musician. Resampling still has it place among modern time stretching techniques and Recycle does to. Recycle still has percussion on smash and apps.