[mythtv-users] YAAQ (Yet Another ALSA Question)

Michael T. Dean mtdean at thirdcontact.com
Tue Jun 29 17:38:57 EDT 2004


Stephen Tait wrote:

> Wow - you've pointed out how little I know about ALSA! I shall give 
> the docs a peruse (obviously, googling for "alsa" and "mixer" and the 
> like brought up rather alot of irrelevant pages); I had never even 
> heard of ALSA control functions before. Since I'm using an Audigy, I 
> guess this will be pretty well documented (AFAIK, the emu10k1 cards 
> are the only ones currently available that have a hardware mixer 
> supported under Linux).

Oh.  Here we've encountered a little "terminology" problem.  The term 
mixer has multiple meanings.

In the context you've mentioned, the term "hardware mixer" is referring 
to electronics on the sound card that mix multiple sound streams into 
one--basically, allowing multiple applications to send sound data 
concurrently to the same device.  The sounds from both applications are 
played simultaneously (i.e. allowing you to hear your Myth box's beeps 
and clicks while watching TV--which can be both good--if it's an alarm 
telling you to go to work--and bad--if you're really into the show ;).  
You are correct that very few cards have these "hardware stream mixers" 
and/or hardware stream mixers with Linux support.  Instead, people with 
cards lacking hardware stream mixers may use "server" applications like 
JACK, esd, artsd, or simply ALSA's dmix plugin.

However, in the context of my statement, "alsamixer is a program 
(software mixer) used to send instructions to the ALSA driver requesting 
it send instructions to the sound card's hardware mixer," the term 
"hardware mixer" refers to the electronics on the sound card--which ALSA 
refers to as the "control device"--that control the various sound inputs 
and outputs.  This includes, for example, the Master and PCM volume.  
Almost all sound cards have this type of hardware mixer (one notable 
exception is the rme9652).  Note, also, that technically speaking, the 
"control device" includes the hardware mixer (not the hardware stream 
mixer) /and/ other controls (i.e. digital I/O sync indicators, sample 
clock source switch, etc.), so the hardware mixer is only a subset of 
the controls available through ALSA's control device.

Most "software mixer" applications (alsamixer, gamix, xmix, etc) are 
using the term mixer to refer to the software's ability to affect sound 
input/output using the hardware mixer portion of ALSA's control device.  
Generally, the "server" applications used to mix streams in software 
tend to include the term server, i.e. the EsounD "sound mixing server," 
and may not even use the term "mix" at all, i.e. the artsd "sound 
server" or the JACK "low-latency audio server."

Therefore, I recommend searching on "ALSA" and "control device" or 
"ALSA" and "ctl-device."  This way, you're using a more specific (and 
less common) term to narrow the search.

OK.  My plan was actually to clear up confusion, but I may have had the 
opposite effect.  HTH.  Gotta go.  I'm hungry for some toast with 
strawberry jam.

Mike




More information about the mythtv-users mailing list