Paint2Sound
Paint2Sound is a neat little self-contained application for converting any existing .jpg or .bmp image, or any picture you care to draw/paint with it, into a soundscape. This application can bring a new dimension to your music making, or at the very least give you a unique way of coming up with interesting sounding samples.
The way it works is: Each pixel row of the image represents a frequency band. The application synthesizes sine waves from each pixel row with an instantaneous amplitude determined by the brightness of each pixel in the pixel row, and then sums together all the sine waves. User control is provided over various parameters like sample rate, sound duration, the distribution of frequencies across the pixel rows and the overall level in the mix of each sine wave.
The following diagram illustrates the concept:
The following diagram illustrates the concept:
Enable Frequency Distribution: This specifies the value of the frequency band for each pixel row from top to bottom of the image. The frequency band determines the frequency of the sine wave assembled for each pixel row.
Adjust Frequency Band Level: This specifies the overall level (amplitude) in the final sound of the sine wave assembled from each pixel row.
The waveform image in the diagram shows how a sine wave is constructed for a pixel row. It comprises segments with an amplitude set by the intensity of each pixel. A white pixel for example sets maximum amplitude for that segment, and a black pixel sets amplitude as 0. A sine wave of 4000 Hz is shown here for the last pixel row in the image. Thus, the final sound consists of the sum of all the sine waves assembled for each pixel row, after the overall level of each is scaled by the blue values (set by Adjust Frequency Band Level).
Adjust Frequency Band Level: This specifies the overall level (amplitude) in the final sound of the sine wave assembled from each pixel row.
The waveform image in the diagram shows how a sine wave is constructed for a pixel row. It comprises segments with an amplitude set by the intensity of each pixel. A white pixel for example sets maximum amplitude for that segment, and a black pixel sets amplitude as 0. A sine wave of 4000 Hz is shown here for the last pixel row in the image. Thus, the final sound consists of the sum of all the sine waves assembled for each pixel row, after the overall level of each is scaled by the blue values (set by Adjust Frequency Band Level).
Here's a short video of Paint2Sound in action:
Paint2Sound Download
paint2soundv101.zip | |
File Size: | 165 kb |
File Type: | zip |
Simply unzip the contents of this file into any directory on your hard drive, and double-click on 'paint2soundv101.exe' to launch the application.
System Requirements
Minimum Hardware: Intel Pentium 2, 500MHz. 512MB RAM
Operating System: Windows 2000, XP, 7. I have successfully installed and run the application on these platforms, but should also work with Windows Vista.
Operating System: Windows 2000, XP, 7. I have successfully installed and run the application on these platforms, but should also work with Windows Vista.
FAQ
If your Paint2Sound runs a little 'choppy' or does not scan across the image smoothly, try a fresh install from the paint2soundv101.zip download. The original zip package contained older versions of the files portaudio_x86.dll and portaudio_x86.lib