Setting Xmms & USB Sound

Get started with XMMS (audio player) and use an USB sound device (the Xitel MD-PORT AN1 digital to analogue converter). I use it to send digitalized music, via USB, either to my head-phones or a minidisc recorder. This results in better quality audio. This set-up has worked for me on Woody/Sarge Debian-PPC (2002/2005), and Warty/hoary Ubuntu-PPC (2004/2005).

I’ve had trouble getting XMMS to see the CD directly, so let’s do a work around. First of all, run:

$ dmesg | grep DVD

That gives you:

hdX …
hdX …

Mine outputs:

hdb: ATAPI 24X DVD-ROM drive, 512kB Cache

Then create a symbolic link to that device.

$ sudo ln -s /dev/hdb /dev/cdrom

This will give you a symlink by which XMMS can access your CDs. Upgrades seem to over write this symlink so you’ll have to recreate it if it disappears  –meaning, if XMMS stops playing CDs check to see that the symlink still exists under the “/dev” directory and if it doesn’t then recreate it.

To use XMMS:

  1. mouse over main app window
  2. press cntrl “p”
  3. select “OSS” from bottom output plugin
  4. enable CD Audio Player []
  5. configure CD Audio Player []
  6. under “device tab” select “Digital Audio extraction”
  7. hit “Ok” and “Apply”
  8. press “eject” on main app window then find “cdrom” (not dev/cdrom)
  9. press “add all files in directory”
  10. hit “close”
  11. hit “play”


You’ll have to clear the play list to play another CD smoothly:
hit “file -” then “- all”

For USB devices:

  • under OSS configuration: use “alternate device”
  • under the “Devices tab”, name it: “/dev/dsp1”

Optional tweaking

In case of sound distortion

To avoid (initial) distortion, when you start playing music from a CD, you can configure OSS’s:
Prebuffer (Percent)” from 25 to 90

Similarly, configure Alsa’s:
Period time” from 50 to 500

In case of sluggish playing

You can issue the following command,

$ sudo hdparm -d1 /dev/cdrom

where “cdrom” is symlinked to the DVD device. Else you can just hdparm the device directly as in this next example.

To find out what the device is run:

$ dmesg | grep DVD

If it says “hdc” then you should be able to replace “cdrom” with “hdc” as in:

$ sudo hdparm -d1 /dev/hdc

There is also a way to set this by default at boot. I’ll leave that for someone who has done this to elaborate. The hdparm is no longer needed with the above two settings with my iMac DV 400mhz with one gig a ram for CD playing. I do still need it for smooth DVD playing though.

Hope this debunks the misconception that Gnu-linux doesn’t do music CDs.

UPDATE: Nov. 4, 2009.
There have been a few forks to XMMS. If I recall, Audacious has an ALSA selection which autoconfigures. As of late, I’ve been a fan of Aqualung (on Debian), which is incredibly light in resources and which necessitates no configuration –as long as your system sound set-up is correct. Autoconfiguration necessitates that you have your USB audio sound device plugged in upon boot-up (which makes it the default device)or have Pulse Audio –that can change devices on the fly via the sound manager. Pulse takes up too much resources on this iMac DV, though, but you can change the sound device on the fly through terminal. I feel another HowTo “acoming”.

Maurice Cepeda

This is licensed under the Attribution-NonCommercial-ShareAlike 3.0 Unported Creative Commons License. All brands mentioned are properties of their respective owners. By reading this article, the reader forgoes any accountability of the writer. The reading of this article implies acceptance of the above stipulations. The author requires attribution –by full name and URL– and notification of republications.

This article may be outdated and of historical value.