By Forrest Cook
March 18, 2009
The
Rubber Band Library
and the associated rubberband audio processing utility have been
developed by
Breakfast Quay,
creators of the
dssi-vst
VST audio plugin adapter.
The software is
dual-licensed, with GPLv2-licensed source code and a
commercially licensed edition.
The Rubber Band description states:
Rubber Band Library is a high quality software library for audio time-stretching and pitch-shifting. It permits you to change the tempo and pitch of an audio recording or stream dynamically and independently of one another.
Rubber Band Library is intended for use by developers creating their own application programs rather than directly by end users, although it does also include a simple command-line utility program of its own that you can use for simple adjustments to the speed and pitch of existing audio files.
The
features
document discusses the capabilities of the library in more detail and
the Rubber Band
Technical notes explains some of the underlying software methods:
Rubber Band Library is a block-based phase vocoder with phase resets on percussive transients, an adaptive stretch ratio between phase reset points, and a "lamination" method to improve vertical phase coherence. It is implemented in portable C++, and it requires separate library support for the FFT and resampling implementations: for the Free Software edition, this means FFTW and libsamplerate (the proprietary edition supports other options as well).
See the Rubber Band
API documentation
for more information on the library's components.
Version 1.3 of Rubber Band Library was
announced on March 16, 2009,
no new features were added but a number of build and runtime bugs
were fixed.
The source code for rubberband can be downloaded and built, or
a pre-compiled executable is available for the curious (and trusting).
The Usage
document explains the various options available for rubberband.
A simple example batch run such as:
rubberband -T1.5 infile.wav outfile.wav takes
infile.wav and produces outfile.wav with a tempo that's 1.5 times
faster, but with the same pitch.
There are a number of additional options that can be used to select the
other types of audio conversions and to fine-tune the processing methods.
For the curious, a number of
example audio files are available for listening to.
A number of interesting uses for rubberband come to mind.
The software could be used in radio production for making those
annoying compressed legalese notices that show up at the end
of pharmaceutical ads.
It could be used to greatly speed up the time it takes to
listen to audio books and podcasts, or the producers of those files
could use it for compressing their sound files to reduce bandwidth
usage.
Recordings can be pitch-shifted to correct the speed problems
that can be caused by older analog recording equipment.
Those who are learning a new language could use the software to
slow down the speed of the foreign speech.
The software could be useful for producing musical sound effects or
amusing answering machine messages.
Rubberband addresses a fairly narrow range of audio processing
needs, but gives the user more control when compared to built-in
pitch-shifting and/or tempo-shifting functions found in software such
as the popular
Audacity and
Ardour audio editors.
It makes a useful addition to a collection of open-source audio
processing utilities.
(
Log in to post comments)