January 11, 2011

How new kernel can leave Linux 'speechless'

No sound in flash

Another kernel upgrade has literally muted Flash objects on my system. Only Flash was affected: the system sounds, Skype and some other applications continued working just fine. After checking this and that I discovered, that the order of sound interfaces with new kernel was different from the old one:

$cat /proc/snd/cards
had the sound interfaces in reverse order.

No sound in flash

Another kernel upgrade has literally muted Flash objects on my system. Only Flash was affected: the system sounds, Skype and some other applications continued working just fine. After checking this and that I discovered, that the order of sound interfaces with new kernel was different from the old one:

$cat /proc/snd/cards
had the sound interfaces in reverse order.

Surprisingly enough, the same new kernel, compiled from sources on that system had interfaces in original order.

That tells a focused reader that

  1. Linux kernel has no uniform way of identifying sound interfaces to the sound architecture libraries;
  2. The sound architecture libraries do not persist configuration well enough to preserve working order when kernel changes the interfaces;
  3. Application software does not care about the interfaces it is trying to use.

In plain English that means that Gnash (flash player) does not provide a way to specify an interface to use and is not intelligent enough to choose the right interface itself. Gnash works on top of intermediate layer which talks to ALSA. That intermediate layer does not take care of changing interfaces either. Too many cooks spoil the broth, as is usual with open source/Linux.

Posted by: LinuxLies at 02:15 PM | No Comments | Add Comment
Post contains 266 words, total size 2 kb.

Comments are disabled. Post is locked.
12kb generated in CPU 0.0067, elapsed 0.0414 seconds.
33 queries taking 0.0363 seconds, 125 records returned.
Powered by Minx 1.1.6c-pink.