[PD] Converting colours to sound

Claude Heiland-Allen claude at mathr.co.uk
Tue Apr 7 17:58:21 CEST 2015

Hi Antonio,

On 05/04/15 15:51, Antonio Roberts wrote:
> I've been studying the work of Neil Harbisson for awhile and I'm
> looking to try and replicate in part the functionality of his eyeborg
> using Pure Data. I have already built a simple patch to convert pixels
> to sound but now I want to expand on it. Here's my initial research:
> http://www.hellocatfood.com/sonification-studiespixel-waves/

"I predict the development of an image to audio sequencer in the near 

I made a painting program in gridflow years ago, had some very basic 
sonification - gridflow also had a "how to play a car" example 
converting a photo by scanlines into audio with FFT.


> Colours don't directly relate to sound and so Harbisson and others
> must use a scale to assign colours to sounds. Some initial research
> brought these up:
> http://blogs.plos.org/neuroanthropology/files/2014/03/Harbisson-The-Sound-of-Colors-TED.jpg
> http://www.bbc.co.uk/news/magazine-16681630
> http://www.lunarplanner.com/Harmonics/planetary-harmonics.html
> http://www.flutopedia.com/sound_color.htm

The last one, in the section "Converting RGB Colors to Color 
Frequencies", makes a good point - monochromatic wavelength to RGB works 
fine, but RGB to wavelength is in general impossible, as colours are 
spectral power distributions over continuous wavelengths.  Once it's 
flattened to RGB, too much information is lost to be able to recreate 
the original spectrum (aka metamerism, where 2 different spectrum give 
same colour sensation).

Recently I copy/pasted some colour-related stuff from Wikipedia into a 
booklet (second link is layed out for printing, first one is better for 
screen reading, both have the same content):


The approaches you linked seem to convert wavelengths to colour in a 
straightforward way, but for converting from colour to sound I think a 
different approach would be better (and indeed needed) - something more 
akin to the Munsell perceptual colour system:


a grossly simplified version would be HSV, which I used in the attached 
- a bank of vcf~ fed by noise~, mapping hue to scale note, value to 
loudness and pitch, and saturation to filter Q - so that white would 
give high noise, grey gives a lower pitch noise, black gives silence, 
fully-saturated dark green gives a low note, bright green gives a high 
pitch at the same scale note.  the filters glitch when the hue jumps 
from 0 red (orange side) to 1 red (purple side), could be fixed with 
some cleverness probably.

> Can anyone think of a way to translate this into pd? In the end I
> would like to be able to display a block of colour on screen and have
> that generate a specific note.
> Any help is appreciated.
> Antonio


-------------- next part --------------
A non-text attachment was scrubbed...
Name: colour-sonification.pd
Type: text/x-puredata
Size: 4725 bytes
Desc: not available
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20150407/a8be73b0/attachment-0001.bin>

More information about the Pd-list mailing list