<%perl> use MP3::Tag; my $mp3 = MP3::Tag->new("/data/media/swingshift/20060110_rehearsal/Its-Deja-Vu---2.mp3"); # get some information about the file in the easiest way my ($song, $track, $artist, $album); ($song, $track, $artist, $album) = $mp3->autoinfo(); #($song, $track, $artist, $album) = ("yo", undef, undef, undef); $song = { 'song' => $song, 'track' => $track, 'artist' => $artist, 'album' => $album, }; $song->{filename} = ("/data/media/swingshift/20060110_rehearsal/Its-Deja-Vu---2.mp3"); $song->{size} = (stat("/data/media/swingshift/20060110_rehearsal/Its-Deja-Vu---2.mp3"))[7]; Welcome to the UnixKaiser Media Site

Welcome to the UnixKaiser Media Site

You can find various bits of media here such as:

The site is password protected because I don't need some numbnuts finding new uses for my personal crap. Sorry for the inconvenience, but with the protection, I don't have to worry so much about what ends up here.

So what do I plan to do here? Well, I've mostly used this to share recordings of band rehearsals with the other band members. I've got a pretty well automated process for processing the marked up rehearsal files.

I make a single stereo aiff file that's a recording of the rehearsal, usually 90 minutes to 2 hours. Then I add markers to the aiff files with the names of the songs. I eventually aspire to being able split the marked aiff files with perl on my Mac. That would help me save and close the aiff file sooner. Now, I use the stereo editing software, SoundStudio from felttip software, to split the larger file on the markers into "smaller" (they're still huge) aiff files

Once we have individual files that represent each performance of a given piece, we can use some automation. I wrote a script that does a few things:

All in all, it works pretty well. What I'm dissatisfied with is that I have lots of clean metadata about each performance, but I basically embed the info in the mp3 files and then throw it away. I could make the files much more browseable and not just Apache directory listings.

This brings up the issue of searchability. I've been pleased with the results of running UNIX "find" across the tree to find every performance of a given piece. I would like to make this available to others who visit the site.

My current thoughts on implementation are:

So what steps have I taken toward getting this done? I've rebuilt my Apache server with mod_perl support. I've added Mason to my host and configured it as my handler. This seems to work. Next step would be to configure a SOAP handler.

To do list:


Check out:
<% $song->{artist} %>
<% $song->{album} %>
<% $song->{song} %>
<% $song->{size} %> bytes
<% $song->{filename} %>