[linux-audio-dev] What parts of Linux audio simply suck ?

Lee Revell rlrevell at joe-job.com
Wed Jun 22 00:41:45 EDT 2005

On Tue, 2005-06-21 at 22:40 -0400, Paul Davis wrote:
> more generally though, just what is the sensible default config for a
> multichannel card? its possible but a little far-fetched to suggest
> that its to be used as N stereo devices. the people buying 12 channel
> cards are doing it for a reason, and running it as 6 or 5 or 12 SB's
> is not the most likely one.

True, especially now that ALSA supports the multichannel functionality
of the SBLive/Audigy cards (an SBLive! actually is like 5 or 6 SB's
internally).  But these users also may want to use "legacy" apps that
expect all devices to be mono or stereo.  Or they may want to conserve
resources like PCI bus bandwidth by not opening all 12 channels.

> this makes it hard to decide what the correct configuration is. i am
> think that on OS X, you get all channels by default and cannot choose
> otherwise. this is certainly true for the RME drivers (which cannot be
> used as stereo devices, although CoreAudio apps can play stereo
> streams through them). 

I think Jussi raises an excellent point.  For example the kX ASIO driver
for SBLive! cards exposes 16 playback channels (one per hardware FX
bus).  Most ASIO apps just open it as a big 16 channel device, but the
app can also open just channels 9 and 10.  I have verified using the kX
voice analyzer that the driver only allocates as many voices as the app

If the hardware can really only capture/playback to all the channels,
it's still useful to have alsa-lib open all the channels and expose the
pairs as stereo PCMs to the user.  For example the emu10k1 devices can
capture at latencies as low as 32 and 64 frames, but only when capturing
16 channels (the hardware supports a fixed list of DMA buffer sizes,
restrited to 2 periods per buffer, so more channels will fill the buffer
faster, giving lower latency).  Each of the 16 channels correspond to a
physical input so it would be very useful to be able to tell alsa-lib
that you want to open channels 9 and 10 of the 16 channel device hw:x,2
as a stereo PCM.

This is a useful feature, and I've proposed it on alsa-devel before
without much response; I did not follow up because I had not added the
multichannel device to the emu10k1 driver yet.  I am cc'ing that list.


More information about the linux-audio-dev mailing list