Rubber Band Library

« Home

Why choose Rubber Band Library?

Practicality

Rubber Band Library is a professionally engineered audio time-stretching and pitch-shifting library that solves many tricky problems around timing synchronisation for either fixed or varying shift ratios. It is designed to work reliably in many difficult situations. It is well-documented and easy to build and integrate.

Sound quality

Rubber Band avoids most of the grainy and metallic artifacts that many other time-stretching and pitch-shifting libraries suffer from. No time-stretcher is entirely transparent and Rubber Band certainly has its limits, but it is designed to be appropriate for musical use in many contexts, and offers a number of adjustable controls for less common situations.

In addition to the audio examples here, you can put Rubber Band to the test yourself by downloading our own app which uses the library.

How does it compare with other libraries? For a comparison with the also widely-used Elastique time-stretcher, look into the Reaper digital audio workstation, which allows you to switch between Rubber Band and Elastique. Meanwhile the publishers of Superpowered SDK, another alternative library, wrote in one of their own comparison pages that "The audio quality [of Rubber Band] is great... it handles audio transients well and does a great job in preserving audio quality". They then claimed it was too CPU-intensive for use on mobile devices, but:

Performance

Rubber Band is indeed fairly CPU-intensive, but it is fast enough to run in real-time on any mobile device from iPhone 4S onwards and takes only a tiny fraction of the processing power of current devices. Rubber Band has quite predictable performance characteristics and can be used for very substantial stretches and pitch shifts — up to three octaves is entirely practical.

Rubber Band's real-time mode is a true lock-free streaming mode, in which time and pitch scaling can both be freely adjusted during use. Rubber Band also has an offline mode with sample-exact stretching and multi-processor support.

Rubber Band performs better than many competing proprietary libraries in several of these characteristics.

Licensing and Support

Rubber Band has super-sensible commercial licensing, transparent and affordable even for smaller developers. Rubber Band is of course also published under the GNU General Public License for use in GPL applications.

If you have any problems integrating Rubber Band, we can offer commercial support — please contact us to ask.