History:Workman

From MusicBrainz Wiki
Revision as of 08:38, 15 March 2009 by WikiSysop (talk | contribs) (1 revision(s))
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

The Workman CD Database

The progenitor of all the current music metadatabases was the workmandb "index file" used by the Workman CD player program for Unix workstations. Developed in the late '80s, this database format supported features that were lost in the development of CDDB and which only now (over a dozen years later) are being proposed as future features to be implemented in MusicBrainz.

In a recent discussion on the MailingList, the StyleDude raised (once again) the issue of TrackSections:

  • The best solution would be for the database to be able to handle multiple songs in a single track natively. Internally the tracks could be labeled 11a, 11b, etc, and the display would just strip the a, b, etc and just list the sub-tracks in order. Expanding on this a little you could also feasibly have different artists performing different sub-tracks, which would be incredibly useful for things like medleys and some mash-ups.

The Workman database file format has the concept of a section. To quote from the workmandb man page:

  • Workman(1) allows the user to split a CD's physical tracks into smaller virtual tracks called sections. The sections keyword, which must immediately follow tracks, defines the starting positions of the sections. Sections are inserted into the track list, and track numbers are adjusted accordingly, e.g. section 1.2 as presented to the user is represented as track 2 in the database file.

This allowed you to specify titles and artist names differently for each sections. A particularly clever feature of the Workman player would scan a CD for IndexMarks and automatically split tracks into sections based on those.

In addition to support for sections, the workmandb format supports TrackGroupings by allowing for "replacement disc titles" that can be used to name parts of a CD (e.g. a symphony title on an album with multiple works), as well as a continue keyword that would link tracks that shouldn't be shuffled independently (e.g. the movements of a symphony). There are even cdvolume and volume keywords that work much like ReplayGain MP3 tags. None of these features are supported by current music metadabases, and some (like continue) aren't even possible to implement using current MP3 or other tagging systems.

Perhaps someday all the functionality present in the workmandb format may once again be available in MusicBrainz.