by: George Round

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-3.1.tar.gz released July 25. 2012.

If you want to see what is in the works for the next version you can check out the current development version either as a tar archive mp3db2-current.tar.gz or as a patch against the latest stable version mp3db2-devel.diff

You will also need mp3info to make use of these scripts. You can download it from the primary distribution site: or from my local mirror: mp3info-0.8.5a.tar.gz

The mp3info program is also included in many Linux distributions. Under Ubuntu or Debian for example, a simple "aptitude install mp3info" will install the program. If your distribution does not include mp3info and you do not want to compile it from source you can download a statically linked binary for 32 bit X86 Linux: mp3info-static.gz

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.

If you have a bug report, feature request, or would like to stay up to date with mp3db2 developments you should join the mp3db2 discussion mailing list.

Project News

Wed Jul 25 15:11:38 EDT 2012

Version 3.1 of MP3DB2 has been released. This version contains a hand full of bug fixes that were required because of special characters in directories and filenames. The renlower script is also much better about removing these characters. Thanks to all the people releasing torrents with strange filenames for helping me refine these programs over the years.

This may be a final release unless more bugs are found or I receive feature requests.

Mon Sep 7 01:13:07 EDT 2009

First stable release in 4 years.

Sun Sep 6 21:52:58 EDT 2009

A long overdue update to this set of scripts. We now finally support the 0.8x versions of mp3info found by default on most Linux distributions. The requirement of an outdated version of mp3info made the project much harder to install.

This new version of mp3gen makes several changes to the database format. See the SPEC file for details. If you do not regenerate your database files you will notice problems with the reported size of MP3s. The old database format stored the value in bytes. The newer versions of mp3info only report the size in KB. Other than that you should be able to use a 2.x database or index file with V3.0.

Support for this new version of mp3info is only present in the beta version of MP3DB2. After some testing I will release 3.0 final and we can put the older mp3info- to rest.

There are also major updates in the Beta version of MP3DB2 to the supporting utilities. Some of these are important fixes.

Wed Jun 1 15:16:13 EST 2005

Version 2.9 of mp3db2 has been released. This is a small patch which contains mostly bug fixes to existing code. The features that are added by this update are self contained with in the makeplete script and the extra utilities. This version is the last of the 2.x development cycle until bugs are found.

Mon Feb 16 20:00:34 EST 2004

The current development version now contains some changes to makeplete wich allow the user to customize the output a little more. There are also some bug fixes in mp3gen and the support utilities.

By request I have added the current development version to the downloads section as a tar.gz file. It seems some users would like to test the software with out worrying about applying patches.

Sat Oct 25 19:05:57 EST 2003

Version 2.8 final of mp3db2 has been released. The final version contains a few minor bug fixes to the 2.8.16-snapshot As well as some documentation updates. Thanks go to the people who helped me test this release. especially Christian Webber who contributed the mp3db_html support and helped me integrate it with this project.

Fri Oct 3 20:13:24 EST 2003

The 2.8 release is drawing ever closer. This release will contain some important cleanups to the configuration system as well as a user-contributed DAtabase to HTML conversion utility.

Over the next few weeks I will be concentrating on bug fixes only as I work toward a stable 2.8. I am releasing a snapshot mp3db2-2.8.16-snapshot.tar.gz that I hope some people will try and report any bugs they might find.

I have also created a mailing list for general discussion of this project. If you use this software and would like to have some input to the development process please join the list.

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.

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

Index last modified: Wed Jul 25 15:11:38 EDT 2012 ground/X