mpg321(1) Simple and lightweight command line MP3 player


mpg321 [options] file(s) | URL(s) | -


mpg321 is a free command-line mp3 player, which uses the mad audio decoding library. mpg321 was written to be a drop-in replacement for the (by-then) non-free mpg123 player. Some functions remain unimplemented, but mpg321 should function as a basic drop-in replacement for mpg123 front-ends such as gqmpeg, and those programs which use mpg123 to decode mp3 files (like gtoaster, and other CD-recording software).


-o devicetype
Set the output device type to devicetype. devicetype can be one of:
oss - the Linux Open Sound System;
sun - the Sun audio system;
alsa - the Advanced Linux Sound Architecture;
alsa09 - the Advanced Linux Sound Architecture, version 0.9;
esd - the Enlightened Sound Daemon;
arts - the analog real-time synthesiser
See -a device, below.
-a device, --audiodevice device
Use device for audio-out instead of the default device, depending on the output device you've chosen (via -o devicetype). By default this is the native sound device. Generally this is the device for devicetype (or the default system device) to use for output (i.e. /dev/sound/dsp1).
This option has no effect with -o arts.
For -o esd, specify the host on which esd is running; defaults to localhost.
For -o alsa, specify audio device using the hw:x,y syntax, where x and y are numbers, default is hw:0,0. For example, if there is only one device installed, in most cases, the device should be named hw:0,0. When there is only one device, the device should always have the same name and numbers.
-g N, --gain N
Set gain (volume) to N (1-100).
-k N, --skip N
Skip N frames into the file being played.
-n N, --frames N
Decode only the first N frames of the stream. By default, the entire stream is decoded.
[email protected] list, --list list
Use the file list for a playlist. The list should be in a format of filenames followed by a line feed. Multiple [email protected] or --list specifiers will be ignored; only the last [email protected] or --list option will be used. The playlist is concatenated with filenames specified on the command-line to produce one master playlist. A filename of '-' will cause standard input to be read as a playlist.
-z, --shuffle
Shuffle playlists and files specified on the command-line. Produces a randomly-sorted playlist which is then played through once.
-Z, --random
Randomise playlists and files specified on the command-line. Files are played through, choosing at random; this means that random files will be played for as long as mpg321 is running.
-v, --verbose
Be more verbose. Show current byte, bytes remaining, time, and time remaining, as well as more information about the mp3 file.
-s, --stdout
Use standard output instead of an audio device for output. Output is in 16-bit PCM, little-endian.
-w N, --wav N
Write to wav file N instead of using the audio device. This option will be preferred if --cdr or --au are specified too. Specifying '-' for N will cause the file to be written to standard output.
--cdr N
Write to cdr file N instead of using the audio device. Specifying '-' for N will cause the file to be written to standard output.
--au N
Write to au file N instead of using the audio device. Specifying '-' for N will cause the file to be written to standard output.
-t, --test
Test mode; do no output at all.
-q, --quiet
Quiet mode; suppress output of mpg123 boilerplate and file and song name.
Read recursively the given directories. Allows you to define only the directory or directories and then mpg321 recursively plays all the songs.
Turn on FFT analysis on PCM data. Remote mode only
Report song to AudioScrobbler (
Set xterm title setting
Number of decoded frames for the output buffer.
Enable Basic Keys.
"Remote control" mode. Useful for front-ends. Allows seeking and pausing of mp3 files. See README.remote (in /usr/share/doc/mpg321 on Debian and some other systems.)
-3, --restart
Restart "remote shell". Used only when in "Remote control" mode.
Force stereo output: duplicates mono stream on second output channel. Useful for output for devices that don't understand mono, such as some CD players.
Aggressive mode; try to get higher priority on the system. Needs root permissions.
Skip N frames between printing a frame status update, in both Remote Control (-R) and verbose (-v) mode. Can help CPU utilisation on slower machines. This is an mpg321-specific option.
-l N, --loop N
Loop song or playlist N times.If N is 0 means infinite times.
--help, --longhelp
Show summary of options.
-V, --version
Show version of program.

Basic keys:

* or /
Increase or decrease volume.
Skip song.


This manual page was written by Joe Drew <[email protected]>.

Maintained by Nanakos Chrysostomos <[email protected]>.

Permission is granted to copy, distribute and/or modify this document under the terms of the BSD license. On Debian systems, this can be found in /usr/share/common-licenses/BSD.