I did the rather foolish thing of formatting the wrong partition. I had a backup of most of the important data, but not my MP3s. It was a pretty large collection I had gathered from the library, friends and so on, so it would be rather troublesome to recover it.
I tried some disc recovery utilities for mac, but they didn't work. Luckily, I had transfered them from one disk to another not long before, so I believe each file should be on the disk in one consecutive bit stream. (Why, oh why didn't I keep the backup?) This means it should be possible to write a program to extract them from the disk.
So I ask you, is there a way I can recognise an MP3 in a stream of random data? Is there a header that starts it? A sequence which occurs frequently in it? A sequence to signify the end? I thought of reading the specification (if I could find it) but I guess it would be mostly about decoding, and I figured the MP3 gurus here could help me understand what a "real world" mp3 looks like.
Any help would be greatly appreciated and, needless to say, any code I write as a result of this will be released to the public