Re: [OT] ALSA userspace API complexity

From: Marcin Dalecki
Date: Thu Jan 05 2006 - 19:00:09 EST



On 2006-01-05, at 23:39, Joern Nettingsmeier wrote:

Tomasz KÅoczko wrote:
List all neccessary feactures and abstract them. Below this layer you can plug to this all device drivers. Where is the problem ?

users want to use all the bells and whistles that modern sound hardware has to offer. so "necessary features" roughly equals the union of all the "cool ideas of the week" of all soundcard vendors.

First and fore most users want simple things like for example playing an mp3 file to just work.
Your concept that very many of them are interested in the high end "features" of hardware you assume to be modern is wrong. Did you ever notice that sound cards got just reduced to a simple AD/DA converter combination? Modern hardware is frequently actually MUCH MUCH simpler then old one used to be in this area.

please have a look at, say, the rme hammerfall cards, compare them with ye olde sblive, then take a look at usb audio devices and for dessert, take a peek into current firewire hardware.

The existence of /dev/sound doesn't prohibit the existence of
/dev/bells_and_wistles (without any chance to work with anything else then the vendors specific software).
That was precisely the situation with my sam9700 card....

then push up your sleeves, design a small and elegant little abstraction mechanism that is maximally effective in all circumstances and makes all hardware features usable, wrap it up nicely and submit it to linus.

i look forward to hearing back from you, in, oh, 2015 or so?

Your assumption about "all circumstances" is misguided. There is no requirement for one size fits all here.
Look most people drive cars and not space shuttles.


jaroslav, takashi and the other alsa developers have been toiling with this for years, and i hate to see them having to take shit from people who don't do anything more with their sound hardware than listen to mp3s in stereo and can't imagine anything else.

If hearing just the mp3 would just simply work with the alsa drivers without getting in to too much hassle
with AC97 sound cards, which usually don't even include hardware based volume controls nowadays, I'm pretty sure they wouldn't have to "take this shit". And you should remember the bold announcements they did make in first place.

granted, there is always room for improvement. the alsa guys are very receptive towards constructive criticism, when it is backed with a little insight. many linux audio developers have criticised the API for the high initial barrier, and ALSA certainly does not score that high in the "making simple things simple" department. but it does make *complicated things possible*, and all those rants of "gimme back me oss" usually ignore this.

modem dialup users know better than to chime in to networking core discussions and complain they don't need all that complexity. why do professional audio users always have to put up with people who only listen to mp3s whining about a complicate API?
i'll always grant you far better taste and insight into kernel matters than i will ever have, but hey: the library is in userspace. it does not clutter the kernel. so rrreeelaax!

It clutters the application programming part very successfully.

BTW. Designing a sound API toward DMA, like ALSA does, is just plain well beyond any hope...
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/