NAME
mkplist, zuke – graphical music player

SYNOPSIS
audio/mkplist [ –s ] directory/file/URL [...]
audio/zuke [ –s ] [ –c columns ]

DESCRIPTION

Zuke is a graphical music player that reads a playlist from standard input and presents an interface to play music.

Playlists are generated by mkplist, which accepts files, directories, and URLs as its arguments, and writes the resulting playlist to standard output. Option –s enables "simple" sorting of the entries of the playlist, where only full paths are compared.

Formats supported by zuke are: MP3, OGG/Vorbis, FLAC, and WAV. With additional programs, Opus, modules and M4A (AAC) can be played. Zuke also supports network streams, such as IceCast. Option –s enables ``shuffle'' mode on start.

The columns (and their order) displayed can be changed by passing the following letters along –c option:
A   Artist
a   Album
b   File basename
t   Title
D   Duration
d   Date
T   Track number
p   Full file path

By default, artist, album, title, and duration are displayed, which corresponds to –c AatD.

Zuke can be controlled with a mouse, keyboard, and plumber. Button 1 selects a track, button 2 plays a track. Clicking on the seek bar changes the playback position accordingly. On the right of the seek bar, current position, track duration and volume are displayed. ``∫'' is shown if shuffle mode is enabled.

Zuke provides a number of keyboard controls:
–          
Lower volume.
+ =         Increase volume.
   →        Seek 10 seconds back/forward.
, .         Seek 60 seconds back/forward.
↓ Pgup Pgdown Home End
Move within the playlist.
o i         Jump to current track.
Enter       Play selected track.
> b         Skip to next track.
< z         Skip to previous track.
v          Stop
p c Space   Pause/Resume.
s          Toggle ``shuffle''.
q Del       Quit.
/          Search forward.
?          Search backwards.
n          Repeat search forward.
N          Repeat search backwards.

Zuke can be controlled by emulating key presses via the plumber port audio.

Files present in the current playlist can be plumbed too, and will be played immediately.

EXAMPLES
Generate a playlist:
audio/mkplist /usr/glenda/music \
file.mp3 \
http://stream.nauticradio.net:14280/ > music.plist

Playing a playlist:
audio/zuke < music.plist

Append to a playlist:
audio/mkplist /n/moremusic >> music.plist

Skip to the next track using plumber:
plumb –d audio 'key >'

SEE ALSO
play(1)

SOURCE
/sys/src/cmd/audio/zuke
/sys/src/cmd/audio/libtags

HISTORY
Zuke first appeared in 9front (April, 2021).