The Tunevault
I'm not going to maintain a fancy website for this project...SO, here's
some screenshots, followed by the README that comes with the
distribution.
Please visit the SourceForge
project page for The Tunevault to download.
Statistics view-- lots of silly graphs!
Tracks view--
Album view--
Report summary view--
Album report for a month, with pop-up window with Album info--
README file:
########## THE TUNEVAULT ###################
The Tunevault catalogs, analyzes, and displays a wide variety of
information on a library of digital music stored on a local linux PC.
It is powered by MySQL on the back-end, Perl in the middle, with a
browser-based front-end.
The stated goals of The Tunevault are as follows:
1. Link information contained in the *nix filesystem (path, filename,
creation time, etc.) with information stored in ID3 (v1 and v2)
tags within the MP3 (title, artist, album, year, genre, etc.).
2. Provide a clean browser-based tool for accessing information on the
digital library.
3. Provide automated web-based statistics and graphs on the files
contained in The Tunevault
4. Store information on albums as well as individual tracks. Store
cover art in the database where possible.
5. Require NO specific directory structure from the owner as to where
the files are kept, how they are named, how they need to be tagged,
etc. The Tunevault should operate completely independently of the
user's administration of their files. It only should require an update
script that scans the HD and sees where things have changed.
6. Use only open-source tools: MySQL, Perl including CPAN resources,
Apache webserver, all on a linux platform.
7. Use MD5 checksums to identify when files have moved, been deleted,
or is a duplicate of another file in the filesystem. Use the checksum
as a primary key in the database.
8. Use Cascading Style Sheets, HTML::Template, and any other tools
available to modularize and simplify code wherever possible.
9. Provide browsing and filtering tools for rapid web-based searching
of the Tunevault.
10. Make every attempt to write code that lends itself well to outside
code to be written for Tunevault access. Possible add-ons include
controlling an mp3player, writing playlists/files to disks, etc.
#############################################
PREREQUISITES:
The Tunevault makes use of lots of free tools and CPAN modules to do
its magic. You may feel this is a pain, but hey, it's free! Plus one of
my intentions on building this tool was to ride on the shoulders of
others wherever possible.
The following all need to be installed in working order before The
Tunevault can work properly:
These your linux system probably has:
MySQL (initial development was done on version 3.23, but any version
should work)
Apache with working cgi-bin directory (probably would work with other
webservers, but why bother when Apache is so nice and free and stable?)
Perl (I'm developing with version 5.8.1, but would probably work for
anything at or above version 5.0)
These your linux system likely does not:
GD (http://www.boutell.com/gd/) --make sure to build in PNG and
freetype support
CPAN Modules:
GD
GD::Text
GD::Graph
DBI
DBD::mysql
Digest::MD5
Chart::Plot
MP3::Info
LWP::Simple
HTML::Template
GD and the Perl GD modules can be a real pain to install if you have an
older version of linux. With RedHat 9.0 it installs very nicely, but
before that it can be awful. If you run into serious trouble installing
GD version 2.x, try going back to the last stable 1.x version, which
seems to compile better on older systems.
#############################################
INSTALL
I've written an interactive installer program, install_tunevault, which
should do the dirty work for you. This script should probably be run as
root. This script tries to be fairly "intelligent", but it is possible
that it might not be that smart. Make sure to open a bug if something
doesn't work correctly.
#############################################
BUGS
This is a sourceforge project, therefore I'd like to utilize the nice
bug database they have available for tracking problems. Here's the URL:
https://sourceforge.net/tracker/?group_id=72543&atid=534862
As long as I'm going to make this code freely available, I might as
well fix bugs as they come along. Please post issues to help this
product become a better one.
#############################################
UPDATES
11/18/03
Version 0.1: Initial Release. Still lots of TODOs (see TO_DO file)
#############################################
bklaas 11.03