Linux Blog


Section: Misc. Reference Manual Pages (1)
Index Return to Main Contents


mpg321 --- Free clone of mpg123, a 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 is written to be a drop-in replacement for the 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).

mpg321 differs from mpg123 in several ways. First and foremost, it is fully Free, under the GNU General Public License. Secondly, it allows run-time switching of output devices (via the -o switch). (mpg321 also allows configuring a default output device at compile-time, but run-time switching is always allowed).  


-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 card:device; defaults to 0:0.
-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.
-@ 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 -@ or --list specifiers will be ignored; only the last -@ 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.
"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.)
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.
--help, --longhelp
Show summary of options.
-V, --version
Show version of program.


This manual page was written by Joe Drew <>.

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.




Random Man Pages: