2008-08-21 02:39:27

by Albert Cahalan

[permalink] [raw]
Subject: ALSA pisses me off

As the ALSA asoundrc documentation (not available as a man page, grrr...)
tells me:

: Warning
:
: Neither .asoundrc or /etc/asound.conf is normally required. You should
: be able to play and record sound without either (assuming your mic and
: speakers are hooked up properly). If your system won't work without one,
: and you are running the most current version of ALSA, you probably
: should file a bug report.

Well, OK, here you go.

All I want to do is play some damn audio. All I have is a pair of
USB speakers. This should be trivial; OSS sound worked perfectly.

It hasn't been reliable since the "upgrade" to ALSA. It seems I can
go edit a complicated config file (alsa.conf, w/o man page) if I
want to make sound work. Of course, this gets overwritten with any
OS upgrade and, as noted above and obviously expected, sound should
"just work" without any config file hacking.

I gather that somebody decided that USB audio should never be selected
as the default. There are two obvious problems with this. The first is
that there exist systems that ONLY have USB audio. The second is that,
if a user adds USB audio, they probably want to use it! Plugging in a
USB audio device should take over the audio, much like plugging in a
set of headphones normally will. The use case may be very similar, such
as when using USB headphones, or the motherboard audio may be defective.

Audio is probably the #1 most frustrating and needlessly broken thing
on Linux. I haven't had it JUST WORK since we got all fancy.

Here, I'll show info and then attempt to play something appropriate.

# cat /proc/asound/cards
0 [VirMIDI ]: VirMIDI - VirMIDI
Virtual MIDI Card 1
1 [Speakers ]: USB-Audio - Speakers
Apple Computer, Inc. Speakers at
usb-0001:10:18.0-2.2, full speed
root 0 /tmp# aplay -L
default:CARD=VirMIDI
VirMIDI
Default Audio Device
null
Discard all samples (playback) or generate zero samples (capture)
# ogg123 Wilhelm.ogg

Audio Device: Advanced Linux Sound Architecture (ALSA) output

Playing: Wilhelm.ogg
Ogg Vorbis stream: 2 channel, 44100 Hz
ALSA snd_pcm_open error: No such device
Error: Cannot open device alsa.

#


2008-08-21 08:29:45

by Justin P. Mattock

[permalink] [raw]
Subject: Re: ALSA pisses me off

On Wed, Aug 20, 2008 at 7:39 PM, Albert Cahalan <[email protected]> wrote:
> As the ALSA asoundrc documentation (not available as a man page, grrr...)
> tells me:
>
> : Warning
> :
> : Neither .asoundrc or /etc/asound.conf is normally required. You should
> : be able to play and record sound without either (assuming your mic and
> : speakers are hooked up properly). If your system won't work without one,
> : and you are running the most current version of ALSA, you probably
> : should file a bug report.
>
> Well, OK, here you go.
>
> All I want to do is play some damn audio. All I have is a pair of
> USB speakers. This should be trivial; OSS sound worked perfectly.
>
> It hasn't been reliable since the "upgrade" to ALSA. It seems I can
> go edit a complicated config file (alsa.conf, w/o man page) if I
> want to make sound work. Of course, this gets overwritten with any
> OS upgrade and, as noted above and obviously expected, sound should
> "just work" without any config file hacking.
>
> I gather that somebody decided that USB audio should never be selected
> as the default. There are two obvious problems with this. The first is
> that there exist systems that ONLY have USB audio. The second is that,
> if a user adds USB audio, they probably want to use it! Plugging in a
> USB audio device should take over the audio, much like plugging in a
> set of headphones normally will. The use case may be very similar, such
> as when using USB headphones, or the motherboard audio may be defective.
>
> Audio is probably the #1 most frustrating and needlessly broken thing
> on Linux. I haven't had it JUST WORK since we got all fancy.
>
> Here, I'll show info and then attempt to play something appropriate.
>
> # cat /proc/asound/cards
> 0 [VirMIDI ]: VirMIDI - VirMIDI
> Virtual MIDI Card 1
> 1 [Speakers ]: USB-Audio - Speakers
> Apple Computer, Inc. Speakers at
> usb-0001:10:18.0-2.2, full speed
> root 0 /tmp# aplay -L
> default:CARD=VirMIDI
> VirMIDI
> Default Audio Device
> null
> Discard all samples (playback) or generate zero samples (capture)
> # ogg123 Wilhelm.ogg
>
> Audio Device: Advanced Linux Sound Architecture (ALSA) output
>
> Playing: Wilhelm.ogg
> Ogg Vorbis stream: 2 channel, 44100 Hz
> ALSA snd_pcm_open error: No such device
> Error: Cannot open device alsa.
>
> #
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>

Sound sounds good over here...
(with alsa that is);
maybe you're missing something?


--
Justin P. Mattock

2008-08-21 08:30:29

by Stefan Richter

[permalink] [raw]
Subject: Re: ALSA pisses me off

Albert Cahalan wrote:
> # cat /proc/asound/cards
> 0 [VirMIDI ]: VirMIDI - VirMIDI
> Virtual MIDI Card 1
> 1 [Speakers ]: USB-Audio - Speakers
> Apple Computer, Inc. Speakers at
> usb-0001:10:18.0-2.2, full speed

I don't actually know audio, but this is what I think would solve it:

You probably don't need virmidi. Try not to load it. Or configure it
via modprobe to be the last enumerated card.
http://www.tldp.org/HOWTO/MIDI-HOWTO-10.html section 10.2.

Better would of course be if the combination of one or more audio device
drivers with virmidi required no configuration for basic functionality.
--
Stefan Richter
-=====-==--- =--- =-=-=
http://arcgraph.de/sr/

2008-08-21 09:17:37

by Clemens Ladisch

[permalink] [raw]
Subject: Re: ALSA pisses me off

Albert Cahalan wrote:
> I gather that somebody decided that USB audio should never be selected
> as the default.

Only when the order of sound cards has not been configured.

Put the following into /etc/modprobe.conf:

options snd slots=snd-usb-audio,snd-virmidi

This should have been done by the sound card configuration utility of
your distribution.

> [...]
> The second is that, if a user adds USB audio, they probably want to
> use it! Plugging in a USB audio device should take over the audio,

It certainly should not this automatically in the kernel. At best, this
is a decision to be made by userspace.


HTH
Clemens

2008-08-22 10:03:53

by Pavel Machek

[permalink] [raw]
Subject: Re: ALSA pisses me off

> As the ALSA asoundrc documentation (not available as a man page, grrr...)
> tells me:
>
> : Warning
> :
> : Neither .asoundrc or /etc/asound.conf is normally required. You should
> : be able to play and record sound without either (assuming your mic and
> : speakers are hooked up properly). If your system won't work without one,
> : and you are running the most current version of ALSA, you probably
> : should file a bug report.
>
> Well, OK, here you go.
>
> All I want to do is play some damn audio. All I have is a pair of
> USB speakers. This should be trivial; OSS sound worked perfectly.
>
> It hasn't been reliable since the "upgrade" to ALSA. It seems I can
> go edit a complicated config file (alsa.conf, w/o man page) if I
> want to make sound work. Of course, this gets overwritten with any
> OS upgrade and, as noted above and obviously expected, sound should
> "just work" without any config file hacking.
>
> I gather that somebody decided that USB audio should never be selected
> as the default. There are two obvious problems with this. The first is
> that there exist systems that ONLY have USB audio. The second is
> that,

That shoudl work.

> if a user adds USB audio, they probably want to use it! Plugging in a
> USB audio device should take over the audio, much like plugging in a
> set of headphones normally will. The use case may be very similar,
> such

New machines are able to use headphones & internal speakers at the
same time. WIth USB audio, you should be able to play different songs
to both... so no, I don't think kernel should make a decision to just
take over internal sound...

...that said, yes, I believe ALSA is one of most problematic
subsystems. (The next one is 3d graphics)... and yes, it should be
fixed. Going to regular devices (and not alsa card names) would be
welcome first step.
Pavel

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html