Version: 0.2.1
HighPriest is a music jukebox system for Linux. It is geared towards high configurability of playback. If you want control over how one track crossfades into another, or you want to specify track start and end points, or you hate having to repeatedly adjust the volume knob, then this application may be for you.
HighPriest also supports many usual features of software jukebox systems, such as custom playlists, random shuffling of tracks, the organization of songs according to category, etc. Although geared for a high level of tweakability, you may not feel like adjusting a bunch of playback parameters, so simply choosing many playback defaults will give you a nice, crossfading jukebox system.
Note: this is alpha software. It works for me, but expect bugs.
Storing music metadata in external XML files has several advantages. First, they are easy to edit using any text editor or XML editor. Second, they are easy to distribute. If you've created a nice XML playlist and you want to share it with a friend, simply send the file. (Of course, she would have to have the referenced music files, too, in order to play the playlist.)
Using a database negates these advantages, and is overkill in my opinion. The XML parsing within HighPriest is fairly efficient: My modest Linux box (266MHz Pentium MMX / 128MB) runs HighPriest smoothly.
HighPriest offers a non-captive interface. Included in the
package is a short script which routes commands to the daemon. For example,
to start the daemon, issue the command `hp run`, and to list the
available playlists, use `hp list`. Many of the oft-used commands
may be shortened, eg, `hp l` for `hp list`. See the
list of commands below \/.
This is the original reason I created HighPriest. Other music jukeboxes offer crossfades, but I wanted to be able to configure crossfades on a per-track basis. Further, one may specify different crossfade envelopes; in other words, if a track already fades out, you may specify that this track simply overlaps with the next track without any additional fade.
Currently, HighPriest offers a command-line interface, but it would be straightforward to create a GUI which would interact with the daemon. (However, I'm not sure if I'll ever get around to this, so any GUI-developers who want to lend a hand would be welcomed.)
Here is a current list of commands:
wake |
Start HighPriest daemon |
run |
Start HighPriest daemon and begin playing |
quit|exit |
Kill HighPriest daemon |
quit|exit <#> |
Kill after # songs |
pause |
Pause playback |
play |
Resume playback |
p |
Play/pause toggle |
stop |
Stop playback |
s[kip] |
Skip current track |
c[ancel] |
Cancel cued track |
l[ist] |
List playlists |
l[ist] <playlist> |
List tracks of playlist |
q[ueue] |
Show queue |
a[dd] <playlist> <tracks> |
Add track(s) to queue |
a[dd] <playlist> |
Add entire playlist to queue |
d[elete] <queue-items> |
Delete items from queue |
d[elete] all |
Delete all items in queue |
ins[ert] <pos> <#> [<tracks>] |
Insert items into queue at position |
mode <new-mode> |
Change playmode |
cat[egory] <new-category> |
Change category |
i[nfo] |
Display info for current track |
i[nfo] p[rev]|n[ext] |
Display info for previous or next track |
ed[it] |
Edit current track parameters |
ed[it] p[rev]|n[ext] |
Edit previous or next track info |
repl[ay-last-transition] |
Replay last transition |
up[date] |
Update changed playlists |
up[date] f[orce] |
Force update all playlists |
h[elp] |
Print list of commands |
Here is a shot of my desktop during typical playback >>.
HighPriest depends on Perl 5, some Perl modules, XMMS, and a plugin for XMMS called DBMix. See Installation Instructions >> for more details.
\/
HighPriest-0.2.1.tar.gz
(41 KB)
After downloading, check out the Documentation >> for the Installation Instructions >> and Usage Notes >>. Also, you may want to see the Playlists Format >> for details about modifying your playlists.
You can e-mail me at <victor@n-gon.com> regarding comments, suggestions, bugs, and some assistance.