[linux-audio-user] alsamixer and the audiophile 2496

Eric Dantan Rzewnicki eric at zhevny.com
Fri May 14 23:44:50 EDT 2004

luis jure wrote:
> el Thu, 13 May 2004 15:53:25 -0400
> Eric Dantan Rzewnicki <rzewnickie at rfa.org> escribió:
>>You should use
>>envy24control instead of alsamixer. Things will make much more sense.
> i'm the OP and yes, i _do_ have envy24control installed. it may make a bit
> more sense, but i can't see that it makes _much_ more sense. i mean, i still
> find many things rather unclear.
> in any case, i'm still puzzled by my original questions:

Ok, first let's make sure we're both looking at the same (or at least 
similar) picture. In envy24control I have 5 tabs:
"Monitor Mixer","Patchbay/Router","Hardware Settings","Analog Volume" 
and "About". "About" isn't very interesting. "Hardware Settings" I never 
  need to mess with, so I don't have much to say. I think it mainly 
applies if you're connecting some external digital device via S/PDIF. I 
don't have any other digital gear so I don't need to mess with this part.

The thing that most confused me at first was that the Mute buttons and 
volume sliders on the "Monitor Mixer" page only affect the actual audio 
output if "Patchbay/Router" strips are set to "Digital Mix" even though 
the level meters continue to function. The sliders and mute buttons are 
for controlling levels in the mixer on the card.

If the "Patchbay/Router" strips are set to "PCM Out" or "H/W in" you are 
bypassing the card's mixer. PCM Out's are channels for your audio 
applications to connect to. They are "Out" from the perspective of the 
app. H/W in's are just that, inputs from the audio card hardware. 
Selecting these in the "Patchbay/Router" gives you direct monitoring of 
the signal going into your hardware. As with the PCM's selecting them in 
the "Patchbay/Router" bypasses the card's mixer.

> 1) is it necessary to change mixer settings to toggle between monitoring the
> input and playback?

It depends. You can directly monitor the hardware inputs as described 
above by selecting them in the Patch Bay. In this case you have no 
software control over levels. For instance, I have my guitar plugged 
into H/W In 1. With the "Patch Bay/Router" strips "H/W Out 1 (L)" and 
"H/W Out 2 (R)" both set to "H/W in 1" I hear the guitar coming out the 
speakers and see the level meters respond in "Monitor Mixer". However, 
the sliders and Mute buttons do not affect what I hear even though they 
do affect the "Digital Mixer" as displayed in the level meters on the 
far left. I can't hear the changes because the mixer is bypassed.

If I set the "Patch Bay/Router" strips "H/W Out 1 (L)" and "H/W Out 2 
(R)" both to "Digital Mix" I can still hear the guitar, but now the 
controls in "Monitor Mixer" for "H/W in 1" do control the level I hear.

Now, to answer your question, if you leave things like this (patchbay 
set to Digital Mix) you shouldn't have to change the patch bay to switch 
between monitoring input and playback. You may need to adjust the 
sliders in "Monitor Mixer" because now your audio will be coming from 
your app on the PCM Out's through the mixer on the card.

If you want to bypass the mixer to monitor the inputs directly, or 
monitor playback directly from the PCM's then you need to change your 
routing in the patchbay.

> 2) how do you control input level for analog inputs?

In the "Analog Volume" tab the "ADC x" sliders control your anolog to 
digital converter levels. likewise the "DAC x" sliders control your 
digital to analog converter levels. I always leave my DAC an ADC sliders 
for channels 0 and 1 all the way up. (not sure if that's correct 
audio-engineering-wise, but it works for me.) If you need more gain at 
this stage the "IPGA x" sliders will give it to you. My guess is that it 
would be better to get a hotter signal in rather than use these, though.

> 3) is there a way to capture what's being sent to analog outputs?

I think the card's mixer outs go straight to the DACs. As far as my 
understanding goes, the mixer doesn't present any outputs to 
applications ... I think what you want has to be done at the application 
level. For me, that means using jack. Maybe there's some sort of 
.asoundrc magic that could make it happen for you. I have yet to grok 
anything more than minimal usage of that though.

Heh. :) I feel like I maybe should have just written a tutorial. Anyway, 
I hope this helps. I need to get to bed now. Good luck.

-Eric Rz.

More information about the Linux-audio-user mailing list