auplayer – a CLI for playing audio files
auplayer [-lprsv] [-F file-descriptor] [-I file-descriptor]
[-b buffer-size] [-c command] [-d device] [-f file-list]
[-g file-list] [-h history-size] [-i input-file] arg ...
auplayer provides a simple command-line interface for playing audio
The arguments are as follows:
Add lines read from file-descriptor to the playlist as below,
removing leading & trailing white-space.
Read commands from file-descriptor instead of the standard input.
Specify the buffer size for auopen(1).
Additionally, append "-b buffer-size" to the end of the shell
Specify the shell command to execute when playing audio.
If command is empty then auplayer does not try to play files,
does not look-up files when using the a command, and does not
exit if there are no more entries available.
This is to aid in testing.
Append "-d device" to the end of the shell command string.
Add each line of file-list to the playlist as below, removing
leading & trailing white-space. If file-list is "-" then the
standard input is read instead.
glob(3) each line of file-list, after removing the leading &
trailing white-space, adding the results to the playlist as
below. If file-list is "-" then the standard input is read
Specify the number of elements to keep in history.
-l After playing the last file loop back to the beginning instead of
exiting, reshuffling if -s is specified. This option has no
effect if -r is specified.
Read commands from input instead of the standard input.
-p Have auplayer behave in a manner suitable for being controlled by
auplayer will print information in a parse friendly format:
: time / [total]
The current position and total length of the current
file. For example: ": 0:12:34.56/1:23:45.67".
Information about the internal state. For example
"!pause" and "!unpause".
@ path The path of the currently playing entry.
+ path The specified path was appended to the playlist.
- path The specified path was removed from the playlist.
This option supersedes -v.
-r Play the audio files in a random order.
-s Shuffle the list of audio files.
-v Enable verbose output.
( Begin an ordered sub-group.
(r Begin a random sub-group. Random sub-groups play one random
entry each time it is selected. Trailing characters are ignored.
(s Begin a shuffled sub-group. Trailing characters are ignored.
) End a sub-group list.
file Append file to the list of files. If it is a directory, non-
recursively append its, sorted, entries to the list of files.
If no input is selected, and the standard input was specified by -f, then
the input will be read from "/dev/tty". However, the -p option will
cause an error to be produced instead.
Commands have the following global syntax:
[count] c [argument]
Where c is the command character.
The available commands are as follows:
( Begins a sub-group as above. count is ignored.
) Ends a sub-group as above. Both count and argument are ignored.
+ Seek forwards by argument. count is ignored.
- Seek backwards by argument. count is ignored.
= Seek to the time specified by argument. If argument is negative
the seek is relative to the end of the file. count is ignored.
? Print the current file, the position in it, and its length. Both
count and argument are ignored.
/ Search forward for argument and move to the matching entry, if
any. count is ignored.
L Toggle looping. Both count and argument are ignored.
V Toggle verbosity. Both count and argument are ignored.
a Append files matched by argument to the file list. count is
d If an argument is given, remove any entries that match argument,
otherwise remove the current entry. count is ignored.
h Go back count entries. argument is ignored.
i A synonym for ?.
j A synonym for h.
k Go forward count entries. argument is ignored.
l A synonym for k.
p Toggle the pause state. Both count and argument are ignored.
q Exit auplayer. Both count and argument are ignored.
r Replay the current entry. Both count and argument are ignored.
The auplayer utility exits 0 on success, and >0 if an error occurs.
auopen(1) au2dev(1) glob(3)