by: George Round ground@laf.cioe.com

Project Description

MP3DB2 is a collection of bash scripts for keeping track of large MP3 collections. It will retrieve song information from the filenames and ID3 tags of a directory or CD of MP3s and store them in a local database. It then allows you to search any of the fields, generate a master listing of all your complete albums, see the size of your entire collection, and more.

Project Downloads

The current stable version of MP3DB2 is mp3db2-2.7.tar.gz
If you want to see what is in the works for the next version you can check out a DIFF with pending updates. This DIFF is generated against the stable version. mp3db2-devel.diff
You will also need mp3info-0.2.16 to make use of these scripts. You can download it from the primary distribution site: ftp://bimbo.hive.no/pub/mp3info/ or from my local mirror: mp3info-0.2.16.tar.gz
If you get an error while compiling mp3info under Linux in the file mp3info.cxx you can try this DIFF: mp3info.diff
If you want to test the scripts with out generating a database of your own you can grab a test database: mp3db2-sample_catalog.tar.gz
If you are interested in older versions you can find them in the old directory.

Project Notes

The README file contains more information about the installation and operation of the program. Please read this file before e-mailing me questions about the scripts.
The changes file contains the complete version history since V2.08. Users upgrading from previous versions may wish to read this as often changes will require you to regenerate the program indexes.

Project News

Sat Apr 12 19:07:20 EST 2003

Version 2.7 of the MP3 database has been released. This version includes some important bug fixes as well as major code cleanups throughout the project tree. The most important bug that was fixed in this new version concerned the swapping of artist and title fields in the SPEC file. This also caused me to reverse the meaning of the -a and -t command line options of the search utility.
There is no need to update either the Database file or the Indexes if you are upgrading from version 2.6. The file formats have not changed.
All of the scripts should be working under cygwin now with out problems.
A new script was included in version 2.7 of this package called get_dev_version. It will take the current stable distribution of MP3DB2 and patch it to use the most current development version.
The makeplete script now supports a -nobr option that will suppress the bit rate field in the pletes.txt file.
The biggest change in this version as far as the size of the patch is concerned is the conversion of all constants to single quotes. If you read through the scripts you will notice that only variables or other things that require shell expansion will be in double quotes.

Wed Jan 29 17:50:46 EST 2003

Version 2.6 of the MP3 database has been released. This version should be significantly faster than all previous versions. One particular script, makeplete, saw an increase in run time on my data base from 5 minutes to about 1.5.
These optimizations required many changes to fundamental parts of the code. I have tried to test things well, yet I cannot account for all configurations. If you manage to break any of these scripts after reading the documentation I would appreciate a bug report.
The 2.7 version will be mostly a maintenance release. The last few versions have focused primarily on adding features and now the janitor really needs to have a look. In particular I am considering how to modularize some of the functions that are used in multiple scripts in some kind of shared script file. Perhaps it could be included from mp3db.cfg?
There are also a few more utilities included in the utils directory of the project tree. A good portion of the patch that updates 2.5 to 2.6 was the addition of a script 'rt.rec'. This supports recording in real time using sox to read from the sound card and lame, mp3enc, or oggenc to encode to a compressed format. If you need help with this new utility have a look at the documentation at the top of the script and execute the program with --help for an option list.
Also, a script was added to the utilities directory called 'genrmd5' that will generate recursive checksum.md5 files which can be verified with the included vercd script.
I am in the early stages of making the scripts work with cygwin. I have fixed a few cygwin-triggered bugs but may well have a few left.

Contact Information

Please feel free to contact me with any comments or suggestions about these scripts. I am also currently looking for a mirror site if any one has the space.

This project is kindly hosted by sourceforge.net

Index last modified: Sat Apr 12 19:39:40 EST 2003 ground/X