LWN.net Logo

I started such a project too :-)

I started such a project too :-)

Posted Mar 9, 2006 6:01 UTC (Thu) by felixfix (subscriber, #242)
Parent article: Using Linux to manage a large audio collection

A couple or three years ago, I started a similar project, but I wanted to use SQL to manage things, so I could tag all music with dates, keywords, etc, and select, say, all Elvis Christmas songs recorded before 1960. I do not like playlists; I want to make my choices on the fly. I have about 2/3 of my 2000 CDs on hard drives, with two backup copies, stored as flac files, and the project works well enough to be minimally useable, but then my computer died (too many disk drives without checking for power supply overload), and I foolishly decided to try a dual opteron system. I have had nothing but headaches over the USB and audio, and whether that is due to SMP, or 64 bit, or gentoo, I don't know. Plus a new job, and I ran out of time ... a friend talked me into putting it on source forge, which I regret, as it is not really ready for prime time. It does work after a fashion, but it needs too much TLC for anyone else, and I hope no one actually tries to use it; that would be too embarassing for words :-)

Meanwhile I have lots of plans ... it is a command line program, works nicely as a daemon, talks over a socket to control programs. I have lots of ideas for a GUI interface over the socket, for ripping, playing, burning ... exporting it with an SQLite dump of the database ... but no time and flaky sound sure don't make for progress. It seems like altho gentoo trends better over time, individual releases periodically break USB and/or audio, so it is a major frustration working on it.

I hope your project has better success.


(Log in to post comments)

Me too...

Posted Mar 9, 2006 18:35 UTC (Thu) by lysse (subscriber, #3190) [Link]

I did such a thing myself recently, although on a smaller scale - but instead of using SQL, what I did was simply:

  1. ensure all the files had the same naming convention to start with
  2. rename all the files to tNNNNN.mp3
  3. store number-to-name mappings in a text file, in the format
           tNNNN :: artist--track-name--version--remixer
    

So my everyday music player has simply become:

    while true; do
        while [ "$N" == "$T" ]; do
            N=`printf 't%05d' $(( $RANDOM % $TRACK_COUNT ))`
        done
        grep $N /music/directory.txt | sed -e 's/^.* :://'
        mpg321 -o esd -q /music/$N.mp3
        T=$N
    done

and if I want visualisation, I can start up synaesthesia. Hardly the most exotic of players, but it does what I want. If I wanted to ensure that certain tracks fell in runs, I could do that by adding a layer of indirection - numbering playlists and having mpg321 play them back instead. At some point I'll add a timestamped log and some basic transport control, when I get sufficiently annoyed to do so. I might even add all the ID3s back in...

As you might have gathered, I don't go much for GUIs (am I the only person who never worked out what the point of a file manager was?), and I am a great advocate of doing the simplest thing that can possibly work now :)

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds
Powered by Rackspace Managed Hosting.