[alsa-devel] device naming

Andrew Kohlsmith (Mailing List Account) aklists at mixdown.ca
Wed Jan 20 17:35:11 CET 2010

Is there a definitive guide to device naming with ALSA? I'm trying to use a 
single device for simultaneous capture and playback but opening different 
device names gives different results and I'm trying to determine which is the 
best to use.

aplay -L output gives front, surround40, surround41, surround50, surround51, 
null and pulse.

Trying to register a playback callback using "pulse" gives a "function not 
implemented" error, although I can open and set all the parameters I need 
(8kHz, 2 channels, 20ms buffers).

I get the same result with "default".  If I use "plughw:0,0" I can capture and 
play audio, but the driver (intel HDA) seems to be very prone to either not 
calling either the playback or capture callback, or throwing an xrun and not 
being able to recover.  This is an otherwise idle core2 machine running Ubuntu 
9.10. Playing with nice or ionice does not seem to affect this "brittleness."

I do not have an ~/.asoundrc, nor do I have anything related to asound in 
/etc.  Moving pulseaudio out of the way doesn't seem to do anything either.

Is there a definitive list of devices and their device filenames so I can stop 
guessing?  /proc/asound/cards just shows card 0 as an Intel HDA, and 
/proc/asound/devices shows the following:

$ cat /proc/asound/devices
  2:        : timer
  3:        : sequencer
  4: [ 0- 2]: digital audio capture
  5: [ 0- 0]: digital audio playback
  6: [ 0- 0]: digital audio capture
  7: [ 0- 1]: hardware dependent
  8: [ 0- 0]: hardware dependent
  9: [ 0]   : control

(0-0 is the only device showing both playback and capture, which is why I'm 
using it, but how do I know that plughw is the correct device filename? I just 
guessed at it due to previous experience trying to get bt audio working with 

I'm sure I'm doing something incredibly stupid, but I can't seem to find out 
what it is.


More information about the Alsa-devel mailing list