fdmf is portable perl/C software for finding pairs of music files in a collection that are likely to contain the same music. It works on the music itself, not on the filename, tags, or headers. It uses an audio fingerprint, or perceptual hash to recognize the duplicate files. It is currently under heavy development, so it might be buggy, broken, or otherwise bad. But it works for me. Please email me and tell me if it works for you. Bug reports are appreciated.

It would help the development of this software if I had a larger set of files to test it on. If you feel like lending music files to this effort, it would be greatly appreciated. The optimal form would be a CD or DVD of MP3 or OGG files which could be sent via postal mail. The media will be mailed back to you after it has been used, along with some extra disks of music for your testing purposes. Please email me if you are interested in lending files.

fdmf 0.0.9s source code
fdmf 0.0.9j spec file
Sound Mural is a command line program that converts images to sound.
Sound Mural

Simple Multitrack is Linux/Mac OS X software for recording and mixing multitrack audio.
simple multitrack 0.6.5

Simple Metronome is a little metronome program that supports arbitrary rhythms, or just simply clicks.
Simple Metronome 0.4
MP3 sample of Simple Metronome output
Simple Synth is a set of programs that takes in a textual representation of chords and notes and makes a WAV file. This is the first working version. There are many important features missing, so it is difficult to use. In early 2007 I will post a new version that is more friendly.
Simple Synth 0.1.2
some personal notes about recording

some personal notes about headphones

a design for a good sounding headphone amp

my first headphone amp, uses one 4556, wimpy sound
breadboard of second headphone amp, four 4558's in parallel, sounds good
third headphone amp, same as second, but soldered
closeup of third headphone amp, dead bug style
third headphone amp packaged in mint tin
The third headphone amp pulls 15.3mA from each rail at 6 volt rails, and 16mA at 9 volts, regardless of the signal. So if the amp is powered by two 9-volt alkaline batteries, the battery life will be about 30 hours. That's a little bit too often to be throwing away batteries. I would like to try the same design but with some modern opamps that have good current driving ability but have lower quiescent current. Also, the rail voltage should be reduced. If "rail-to-rail" opamps could really swing rail-to-rail when driving low impedances, the rails could be reduced to +/- 1 volt. But since this is not the case it it is necessary to have some headroom. It would be nice to run it on +/- 1.5 volts and just use two AA batteries. Also, I would like to make it smaller, probably using dual or quad opamps in surface mount form. I don't mind dead bug soldering tiny surface mount parts. Other people hate this. I find it fun.

By the way, the people who say that one opamp sounds better than another are fooling themselves. The only time you will hear a difference between two opamps is when they are used outside their specified range. Any cheap opamp sounds great in a properly designed circuit. Anybody who doubts this, I challenge you to a blind A/B comparison. I will bet you $1000 dollars that you can not repeatably distinguish between the sound of a jellybean opamp and an expensive opamp. I live in Manhattan. If you are in the area and think you have golden ears, bring your opamp and $1000 bucks cash and put your money where your mouth is.

Using the Samson C01U USB Microphone Under Linux
Reversing Audio Playback Channels with MPlayer
Extracting Audio from a Movie with MPlayer

my webpage