This is a program for representing sounds visually (from a CD or line
input). It goes beyond the usual oscilliscope style program by combining
an FFT and stereo positioning information to give a two dimensional
display. Some of the shapes I have observed are:
* Drums: clouds of color, fairly high
* Clean guitar: several horizontal lines, low down
* Rough guitar: a cloud, low down
* Trumpet: Lots of horizontal lines everywhere
* Flute: A single horizontal line, low down
* Voice: A vertical line with some internal structure
Surround sound decoding has been added in version 1.1. Ambient noise is
shown in orange.
X-Windows support has been added in version 1.3, as well as a major redesign
of the interface. The intention is to make Synaesthesia a fully functional
CD player, suitable for use while working.
Version 1.4 adds support for play lists and viewing recorded samples.
Support for the Simple DirectMedia Layer library has also been added
(http://www.devolution.com/~slouken/SDL) in preperation for a Windoze port
and partly just because its a great graphics library.
Synaesthesia should compile on Linux systems. Compile
Synaesthesia by typing "make" then following the instructions displayed.
You will need to run Synaesthesia as root if you compiled it with
svgalib. Other varieties can be run by any user providing you provide
permissions on /dev/dsp, /dev/cdrom, and /dev/mixer.
Synaesthesia creates a configuration file you can edit, named
~/.synaesthesia. You can edit this to set the default brightness,
volume and X-Window position and size.
Run Synaesthesia with no parameters for further information on how to
This program is free. If you like it, or have any suggestions, please
send me (Paul Harrison) an email (email@example.com).
Thanks to Asger Alstrup Nielsen for many great suggestions, and for
writing optimized 32 bit loops for fading and drawing to screen.
Thanks to Roger Knobbe for porting Synaesthesia to FreeBSD. (untested)
Thanks to Ben Gertzfield and Martin Mitchell for some small fixes to the
CD controlling code.
Thanks to Simon Budig for an improvement to the X code.
1.1 - Added surround sound decoding.
1.2 - Fixed a bug in the ioctl calls to /dev/dsp.
1.3 - Asger Alstrup Nielsen's optimizations added.
Added X-Windows support.
More options, redesigned interface.
1.4 - Bug fixes, including a great reduction in
"Sound: Recording overrun" warnings.
New command line options: play lists and piping.
Support for SDL.