.TH HTTP-MUSIC-PLAY 1 .SH NAME http-music-play - plays audio from a playlist file .SH SYNOPSIS .B http-music play [opts...] .SH DESCRIPTION Plays audio referenced from a playlist file. Tracks selected using a "picker" (see \fB--picker\fR) and retrieved using a "downloader" (see \fB--downloader\fR). Downloaded tracks are played with either the \fBmpv\fR (default) or \fBplay\fR (from SoX) command. .SH KEYBOARD CONTROLS .TP .BR Skips backwards 5 seconds in the currently playing track; hold shift to skip by 30 seconds. (Requires MPV player.) .TP .BR Skips forwards 5 seconds in the currently playing track; hold shift to skip by 30 seconds. (Requires MPV player.) .TP .BR Turns the volume up a 10%-notch. Unfortunately, at present, the volume setting is NOT kept across tracks. You'll need to adjust your audio volume whenever a new song starts. (If possible, it might be better just to opt for changing the system volume.) (Requires MPV player.) .TP .BR Turns the volume down 10%. (Requires MPV player.) .TP .BR Pauses (or resumes) playback. (Requires MPV player.) .TP .BR i Shows information (title, URL/path) on the currently playing track. (\fBt\fR also works.) .TP .BR q Quits the http-music process and stops music currently being played. (\fB^C\fR and \fB^D\fR also work.) .TP .BR s Skips the currently playing track. .SH OPTIONS .TP .BR \-c ", " \-\-clear Clears the active playlist. This does not effect the source playlist, so specific groups can be selected using \fB\-\-keep\fR. .TP .BR \-h ", " \-? ", " \-\-help Presents a help message, directing the user to the \fBman\fR page. If this is the last option used, nothing plays (see \fB\-\-play\fR). .TP .BR \-k ", " \-\-keep " \fIgroupPath\fR" Keeps a group by adding it from the source playlist. This is usually useful after clearing the active playlist (\fB\-\-clear\fR); it can also be used to keep a sub-group after removing an entire parent group, e.g. \fB-r foo -k foo/baz\fR. .TP .BR \-l ", " \-\-list\-groups ", " \-\-list Lists all groups (but not tracks) in the (active) playlist. If this is the last option used, nothing plays (see \fB\-\-play\fR). .TP .BR \-L ", " \-\-list\-all ", " \-\-list\-tracks Lists all groups and tracks in the (active) playlist. If this is the last option used, nothing plays (see \fB\-\-play\fR). .TP .BR \-np ", " \-\-no\-play Forces the playlist not to play. See also \fB\-\-play\fR. .TP .BR \-o ", " \-\-open\-playlist ", " \-\-open " \fIplaylistFile\fR" Opens a specific file to be used as the playlist file. (This sets the source playlist.) The default playlist file used upon loading is \fBplaylist.json\fR (in the same directory as \fBhttp-music\fR is being run in). .TP .BR \-\-picker ", " \-\-selector " \fIpickerType\fR" Sets the picker type used for selecting tracks from the active playlist. The default is \fBshuffle\fR. .TP .BR \-p ", " \-\-play Forces the playlist to actually play, regardless of options such as \fB\-\-list\fR. See also \fB\-\-no\-play\fR. .TP .BR \-\-player " \fIplayer" Selects the mode by which audio is played. Valid options include "mpv" and "sox" (or "play"). Most playback controls only work with the "mpv" player, but the "sox"/"play" player is typically much more easy to (and commonly) install than "mpv". The default is \fBmpv\fR, but \fBsox\fR will be used if mpv is not installed. .TP .BR \-\-print\-playlist ", " \-\-log-playlist ", " \-\-json Prints the JSON representation of the active playlist to the console. .TP .BR \-r ", " \-\-remove ", " \-x " \fIgroupPath\fR" Removes a group from the (active) playlist. .TP .BR \-w ", " \-\-write\-playlist ", " \-\-write ", " \-\-save " \fIfilePath\fR" Writes the active playlist to a file. This file can later be used with \fB\-\-open\fR; you won't need to stick in all the filtering options again. .SH EXAMPLES Basic usage: .PP .nf .RS $ http-music play .RE .fi .PP Generate a playlist from an HTTP server: .PP .nf .RS $ http-music crawl-http http://example.com/path > playlist.json .RE .fi .PP Generate a playlist from the local file system: .PP .nf .RS $ http-music crawl-local /example/path > playlist.json .RE .fi .PP Open a specific playlist file: .PP .nf .RS $ http-music play --open playlist2.json $ http-music play -o playlist2.json .RE .fi .PP Only play music under a specific group: .PP .nf .RS $ http-music play --clear --keep 'Cool Author 72' $ http-music play -c -k 'Cool Author 72' $ http-music play -c -k 'Cool Author 72/Good Album' .RE .fi .PP Don't play music under a specific group: .PP .nf .RS $ http-music play --remove 'Bad News' $ http-music play -r 'Bad News' $ http-music play -x 'Bad News' .RE .fi .PP Don't play music under a specific group, except for a sub-group: .PP .nf .RS $ http-music play --remove 'Bad News' --keep 'Bad News/Irony' $ http-music play -x 'Cool Author 72' -k 'Cool Author 72/Good Album' .RE .fi