HighPriest | Documentation | Playlists Format

The following is documentation of the XML playlist files. Also see an example playlist file >>. Even if you don't know XML, you should be able to make modifications to the playlist files by looking at the examples. The playlist files may be edited with any text or XML editor.

playlist

Example:

<playlist uribase="file:///home/victor/MP3s/Jimi Hendrix Experience/Axis - Bold As Love/">
  <name>Axis: Bold As Love</name>
  <artist>The Jimi Hendrix Experience</artist>
  <year>1967</year>
  <gain>-4</gain>
  <playlist-selection ... >
  .
  .
  .
</playlist>

Attributes

uribase
Base URI for the music files in this playlist.

Entities

name
Name of playlist, usually album name.

artist
If this playlist contains various artists, leave blank or enter 'Various Artists'.

year
Usually year of album.

gain
Volume gain, specified relative to base volume.

playlist-selection
Specify a selection of tracks in a playlist. See below \/.

playlist-selection

You may specify any number of playlist selections. For example, you may want a default selection for all the songs on an album, then another selection for only your favorite tracks.

<playlist-selection allow-crossfade="no">
  <category name="all" weight="10" />
  <tracks>all</tracks>
  <nick>jimaxi</nick>
  <desc></desc>
</playlist-selection>

<playlist-selection allow-crossfade="yes">
  <category name="all" weight="20" />
  <category name="lara-is-home" weight="10" />
  <category name="5pm" weight="30" />
  <tracks>2,7,9-12</tracks>
  <nick>jimaxi2</nick>
  <desc>A different selection</desc>
</playlist-selection>

Attributes

allow-crossfade
May be yes or no. If no, then no crossfades will occur between tracks, as when playing an album.

Entities

category
Specify which category this playlist-selection falls in, and its associated weight. May specify several categories.

tracks
Tracks in this playlist selection. May be all or a tracks specifier. See notes below for details about track specifiers \/.

nick
Nickname for this playlist selection. This nickname must be unique, and may be used to identify this playlist selection.

desc
An optional description.

track

Example:

<track uri="06.Little Wing.mp3">
  <tracknum>6</tracknum>
  <name>Little Wing</name>
  <track-selection ... >
  .
  .
  .
</track>

Attributes

uri
URI of music file corresponding to this track. May be relative to uribase specified in playlist above /\.

Entities

tracknum
Track number, must be unique for a given track within the playlist.

name
Name of track.

artist
Artist of track. Optional, but useful for a playlist containing various artists' tracks.

year
Year of track. Also optional.

gain
(Optional) volume gain; overrides gain setting for playlist.

track-selection
Specify a selection within the track. See below \/.

track-selection

You may specify any number of "cuts" of a track. For example, you may want a default selection of the entire track, then another selection within the track having different fade characteristics.

<track-selection>
  <category name="all" weight="20" />
  <start pos="0" pad="0" />
  <end pos="0" pad="0" />
  <crossfadein active="yes" duration="5" envelope="step" />
  <crossfadeout active="yes" duration="5" envelope="step" />
  <desc></desc>
</track-selection>

<track-selection>
  <category name="2am" weight="20" />
  <start pos="1:38" pad="0" />
  <end pos="2:11" pad="0" />
  <crossfadein active="yes" duration="5" envelope="linear" />
  <crossfadeout active="yes" duration="5" envelope="linear" />
  <desc>Get your lighter out</desc>
</track-selection>

Entities

category
Specify which category this track-selection falls in, and its associated weight. May specify several categories.

gain
(Optional) volume gain; overrides gain setting for playlist and track.

start
Specify attributes of the starting position for the track selection. pos is the position, and pad is extra silence. Both are of the form mm:ss.ddd.

end
Analogous to start.

crossfadein
Crossfadein attributes: active is either yes or no; duration is length of crossfade overlap in seconds; envelope specifies the amplitude function for the fade, which may be linear or step.

crossfadeout
Analogous to crossfadein.

desc
An optional description.

Track Specifiers

Ranges

When specifying multiple tracks, you may use the usual notation of dashes to indicate inclusive ranges (3-7 denotes numbers 3 through 7); commas to separate ranges (2,5 denotes numbers 2 and 5); and combinations of the two (ie 2,5-7).

Multiple track selections

When there are multiple track selections, a "point" is used to uniquely identify each one. For example, suppose track 7 has two track selections. The first is identified as 7.1, while the second is identified with 7.2. No selection number defaults to the first selection, so 7 means the same thing as 7.1.

One more thing: A .0 track selection specifies the "untagged" track, that is, the track with no crossfades, and default start and end points. So for example if you specify tracks 4.0,6-8,9.2, then you've chosen track 4 with no crossfades, the first selections of tracks 6 through 8, and the second selection of track 9.