BlipMap

Download

BlipMap - ChucK source (bitbucket)

Description

The idea behind BlipMap is pretty similar to that of FL Studio's built in BeepMap generator: generating sounds based on images. I wanted to expand upon the BeepMap concept and create something where I could play around with all of the parameters at my disposal to create really wild sounds...

The basic premise is to map the x-axis to time and the y-axis to frequency, translating each row of pixels in the source image to the volume of a sine oscillator.

Of course, there are a variety of different ways this mapping can be done. For example, we can use the red component of the pixel to generate the left channel of audio while using the green component to generate the right channel. We can also even use the blue channel to determine the frequency difference between any two sine oscillators, or we can instead use a constant mapping--either linear, logarithmic, harmonic, or otherwise. We can also vary the envelopes with which the sine waves change pitch and volume,

To generate the data files for input into ChucK, I wrote up a quick-and-dirty command-line program in C# using SDL.net called imgdumper.

Note that BlipMap won't run correctly for you without an imgdumper binary, since I designed it to dump and then process all in one invocation to streamline things.

Here's are some sample outputs generated using BlipMap, along with their source images. Of course, results will vary wildly depending on the parameters you use.

Sample output 1

After generating a bunch of these sounds, I fired up my DAW of choice (FL Studio) and integrated them into a song. There's some other sound effects and such in here as well, but for the most part all of the "weird spacey things" that you hear are blipmap-generated samples (probably run through effects). This is a standard 2-channel song--no fancy listening setup required. :)

You can listen to the final result on my Bandcamp site here. If you want to download it, download the corresponding free Monthlies album here.