History:Object Model/Master Object: Difference between revisions

From MusicBrainz Wiki
Jump to navigationJump to search
(merged discussion into one train of thoughts (Imported from MoinMoin))
(No difference)

Revision as of 16:09, 28 November 2005

The Master Object

This page describes the Master object and its role in the ObjectModel.

Definition

A master is a prototype of a release that depends on the MediumType of the release. The master itself is not released and not accessible by the public, but it is the "thing" that is used to create the releases. A single track that is put on a CD release is mastered from its ../MixObject and put on a master CD, that is a touchable physical medium.

The process of mastering can also include some audio engineering to make the audio data from the ../MixObject fit the limitations of the desired medium (changing sampling frequency, converting from analog to digital or the other way around, adjusting the overall volume gain, etc.).

A good image for this process is a vinyl record: If a record is produced, a master record is 'cut', from which a mould is cast. The releases are pressed using this mould.

Our definition differs slightly. If two different releases have 100% identical audio data, we say that they belong to the same ../MasterObject. So the real physical moulds do not matter to us.

Function in the Object Model

This means that the Master is the object that represents unique audio properties. Fingerprints (TRMs or other) will be related to this object.

Furthermore a ../TrackObject belongs to exactly one ../MasterObject. Therefore the ../TrackObject does not need to store any information about the audio it contains.

Boundaries

Boundaries to the MixObject

When a mix gets prepared for a release and put on a medium that is the prototype of a release, then it becomes a ../MasterObject.

Boundaries to the TrackObject

When a master is used in the production of releases and put on the mediums that can be bought in a shop, it becomes a ../TrackObject on a release. A master can be used for more than one ../TrackObject.

Relationships

Relationships to the MixObject

  • The mix is already the complete audio as it is to be released, it just needs to be put on a master medium. Therefore one master has only one ../MixObject as it's source.

Template:Include

Relationships to the TrackObject

  • Re-releases and re-pressings that create new editions of a release don't need a new ../MasterObjects, but they might create different ../TrackObjects, that can have identical audio but different meta data (e.g. titles).

Template:Include

Relationships to the ArtistObject

FIXME: Do we need it or don't we?