Originally Published: Thursday, 7 December 2000 Author: Phil Kerr
Published to: enhance_articles_multimedia/Audio Articles Page: 1/1 - [Std View]

XMMS Plugins

Multimedia so sweet it makes your teeth hurt! The X Multimedia System offers an impressive array of plugins to spice up your Linux box. From Audio to Visualization to Skins and beyond, Phil Kerr offers a tour through this extensive menu of XMMS plugins as he lets you pick and choose features a-la-carte.

XMMS Plugins

There are now several Linux mp3 players to choose from, one of the more popular being XMMS, the X Multimedia System. One of its strengths is that it allows you to extend its functionality by using plugins. The plugin control panel can be opened from the menu: -> options -> preferences, or by Control P. There are several categories of plugins:

Plugins must be enabled before you can use them. To enable a plugin we first select it from the list, and if needed configure it, and click on enable plugin.

Firstly, let's look the plugins that should have come with XMMS.

Input: CD Audio Player

The CD Audio player input plugin allows you to play, naturally, audio CD's from XMMS. The two main configuration sections allow you set your CD-ROM drive (its device and mountpoint), volume setting control and CDDB/CD info source.

Input: ID Software .cin player

This plugin allows you to play Quake .cin format files.

Input: MPG123 player

This plugin allows you to configure the MPG123 driver. There are three sections: decoder, streaming and title. The decoder options are the bit resolution, mono/stereo, down sample and file content detection which detects the file format not from the extention but by reading the header info.

The streaming option lets you select the size of the buffer (useful for slow connections), the location of a proxy which you may have to use if you are behind a firewall, save stream to disk, and Shoutcast/Icecast title/metadata options.

The title option selects ID3 options and their format.

Input: Tone generator

A small utility which will play a test tone. To play a tone run XMMS like so:

bash-2.04# xmms tone://1000

The 1000 represents the frequency of the test tone in Hz.

Input: Wave player

This plugin plays .wav files.

Output: OSS Driver

This is the main output driver for outputting audio to your soundcard. Its configurations options allow you to select the output and mixer device, buffering and mixer options.

Output: Disk Writer

This plugin writes the output to a .wav file instead of to the soundcard.

Effect: Echo plugin

Adds echo to the output. It has options for the echo delay, feedback and level.

Effect: Extra stereo

Adds a greater sense of stereo depth to the MP3. At too high a level it degrades, but a small amount is nice!

Effect: Voice removal

Attempt to remove the vocals from a track. Depends on the music, it can work very well or make the track sound like it's played underwater.


The plugins for IRman, Joystick and Song change allow XMMS to be remotely controlled from either a console, joystick or across the room!

3rd Party plugins

There are now a lot of 3rd party plugins available for XMMS. You will have the option to download either the sourcecode or a binary.

The best place to look for plugins is, naturally, the XMMS homepages. At the end of this article is a link to the plugins page.

Most of the plugins require xmms-config. This is included with the sourcecode version of XMMS and you will need to install it.

Most plugins will install themselves in the correct place, but some need to be installed manually. Most plugins will reside in $home/.xmms/Plugins. All if them should have README's or INSTALL documentation.

I have not listed all of the available plugins; below is just a selection.

Input: OggVorbis

OggVorbis is a GPL replacement for mp3. It is still early in its development cycle but it's starting to look promising. The quality and file size is comparable to mp3. OggVorbis files have the extention .ogg and with the OggVorbis plugin you'll be able to play them. There's link at the end of this article to the OggVorbis homepage.

Input: SOX Effects

This plugin makes use of the sox utility to add echo, reverb, chorus, high/low/band pass filters and more. Naturally you'll need sox installed. Check below for the link.

Visual: Synaesthesia

A very nice visualization plugin, Synaesthesia; has options for color, shape and brightness. If only it would write to the root window.

Effect: FX Toolbox

This nice surround and echo effect plugin is configurable to alter strength, delay and volume. It's nice with headphones.

Effect: Spatializer StreamFX

Absolutely wonderful! This plugin gives you fantastic 3D stereo, warm bass enhancement and the angle adjustment for the headphones. Wow. The demo version times out after a while; you can purchase the full version for $10.

Visual: GDancer

Cute as anything, watch Tux tap his feet and rock his head. Who said penguins can't dance?!?

Visual: GDancer

Have GDancer groove in time to your music.

Visual: Emissions [Fountain | XStars]

Two fantastic visuals! Fountain displays a colored fountain on your root screen, XStarts produces a starfield. Both are adjustable for many options.

Visual: OSD- On Screen Display

Very useful visual for when you have XMMS minimized. Displays transport controls on main window.

Input/Output: SMPEG-XMMS

So, mp3's aren't good enough for you? SMPEG allows XMMS to play .mpg movie files. Before you can install SMPG-XMMS you need to install SDL & SMEG; links below.

Output: XMMS-Liveice

In a previous article, here, I described you how to stream mp3's. One of the hottest plugins for XMMS is XMMS-Liveice, which takes the output of XMMS and links to an Liveice server.


Not only can you add to the features of XMMS, you can alter its appearance with skins. Skins should be unpacked (using tar/gzip or unzip) in the main Skins directory which should be either $HOME/.xmms/Skins or /usr/lib/X11/xmms.

Once installed you can then switch skins with the Skin Selector menu which can be reached from the main menu, or by pressing Alt S.

The XMMS homepage has a LOT of skins, check them out.


XMMS homepage
XMMS Plugin page
Ogg Vorbis homepage
SDL (required for SMPEG-XMMS)
SMPEG (required for SMPEG-XMMS)
MP3 HOWTO: Info in MP3 & Linux
SOX ftp site