About Audio Babel
Who made this thing?
Hey, my name's Tomer Braff. I'm a programmer, developer, game designer, actor, voice over artist, youtuber, all around something-or-other. I got a portfolio site at tomerbraff.com, a YouTube channel I sometimes do things with, and you can find on all the usual places like Twitter and LinkedIn. If you're curious or just want to chat, contact me at tomerbraff@gmail.com.
What is this site?
The Audio Library of Babel (or Audibel) is inspired by the Library of Babel, a thought experiment by Jorge Luis Borges. It is a collection of all possible books that can be created with a given set of parameters. It is also inspired by the Library of Babel website by Jonathan Basile, which implements said concept in a digital format. The goal in this case is to do the same, but for audio files — a record shop with every record that could ever be pressed, shelved somewhere inside it.
How does it work?
Every audio file is generated from a unique "address" that encodes the audio data. The address is a string of characters that can be used to recreate the exact same audio file. These addresses are read as a bijective base64 number (specifically URL Safe) and converted to a big integer, which decodes directly to the raw audio sample data — no header or format information is stored in the address itself. Only when generating a playable file is a pre-determined WAV header attached separately, wrapping the decoded samples. That WAV header is fixed, meaning all resulting audio files will have the same sample rate (44.1kHz), bit depth (16-bit), and number of channels (mono). Essentially, the index represents the specific sequence of audio samples that make up the sound.
Surfing the Audio .WAV
Given these parameters we can calculate that there would be a total of $2^{44,100 \times 5 \times 16}=2^{3,528,000}$ possible 5-second audio files, which is approximately $10^{10^7}=10^{10,000,000}$ files. This far exceeds the estimated number of atoms in the observable universe (approximately $10^{80}$). The vast majority of these audio files will be complete noise, but among them are also every possible sound that can be represented within these parameters, including all music, speech, and other audio recordings.
Glossary
- Audio Sample: A single measurement of the amplitude of an audio signal at a specific point in time. Audio samples are typically measured in bits, with higher bit depths allowing for more precise measurements.
- Sample Rate: The number of samples of audio carried per second, measured in Hz or kHz. A higher sample rate can capture more detail in the sound.
- Bit Depth: The number of bits of information in each sample, which directly corresponds to the resolution of each sample. A higher bit depth allows for a greater dynamic range and more accurate representation of the sound.
- Channels: Refers to the number of separate audio signals or streams. Mono has one channel, while stereo has two (left and right).
- WAV: A common audio file format that stores raw and, importantly, uncompressed audio data along with metadata such as sample rate, bit depth, and number of channels.
- Base64: A method for encoding binary data (like audio files) into a string of ASCII characters, in this case all uppercase letters [A-Z], lowercase letters [a-z], numbers [0-9], and the minus [-] and underscore [_] symbols.
Ready to dig through the shelves? Browse or Search the stacks.