At Fri, 12 Sep 2003 16:44:38 +0100,
James Courtier-Dutton wrote:
> 
> Takashi Iwai wrote:
> > At Fri, 12 Sep 2003 13:46:39 +0100,
> > James Courtier-Dutton wrote:
> >>
> >>Zero as a minimum value is not very meaningfull in audio terms. With a 
> >>mixer, the zero dB point is probably more use. The minimum value of a 
> >>slider should be the equivalent of mute, so I think that instead of a 
> >>minimum value, it should display "mute" for the user.
> > 
> > 
> > it's not always true.  some codes provide the minimum value which
> > doesn't mean mute.  in this case, another lower value would be needed
> > as the meaming of really minimum "mute".
> > 
> > 
> >>The user should be able to reduce the volume, and if they hit the 
> >>minimum, mute automatically becomes active, but if they increase the 
> >>volume again, mute automatically is disabled. I am thinking about the 
> >>way a TV volume/mute control works. If one is muted, turning volume up 
> >>or down automatically un-mutes the sound. This programming could 
> >>probably be done at the application level, but I think that as so many 
> >>people would want it that way, it should maybe move to alsa-lib.
> > 
> > 
> > hmm, it's a question whether it should go into alsa-lib.
> > another upper library seems better for me.
> > 
> > note that i don't mean against this idea at all - i'm absolutely for
> > this :)
> > the real problem is, of course, how to implement it for _all_
> > soundcards and architectures...
> >  
> > 
> > Takashi
> > 
> > 
> So, if we can agree on how the mixers will behave consistently in the 
> application. I prefer the dB range myself, with 0 dB or -3.4 dB meaning 
> the same thing for all sound cards, and minimul volume causing a "mute" 
> to happen. (I think most TV and HiFi's work that way)

i think the mute behavior still needs to be discussed.
but i agree the dB expression is more obvious.

btw, the dB range is quite dependent on the card.
as i wrote, even the same value ranges on ac97 chips can mean
different dB range.  e.g. some ac97 chips have dB gain while usually
it should be 0dB.
that is the very reason that we should support dB expression.

> If a user has two different sound cards, the same mixer value on both 
> cards should give the exact same volume out of the speakers.

the resultant dB expression should be same, yes.
(the exact same volume is difficult to achieve in reality, though...)

> We then modify alsa-lib and alsa-kernel to apply this behaviour to all 
> sound cards.
> I only initially thought that alsa-kernel was the best place, because 
> the snd-emu10k1 happens to have a volume lookup table already, so I 
> thought that it would be easy to apply that to all sound cards. It seems 
> sensible to me, to do all hardware specific activity in a kernel module, 
> and anything that it not strictly hardware specific in alsa-lib if 
> possible.

well, the behavior above is "one" kind of abstraction.
and this doesn't mean that ALL applications want this.
therefore, we shouldn't put this into the drivers but solve on
the user-space as much as possible.

> The kernel module will know if the minimum volume value in the 
> volume register is mute or not, and can decide to activate a separate 
> mute register if needed. I don't think alsa-lib can really provide this 
> hardware specific functionallity.

a kernel driver will provide the necessary information for the
abstraction, but it won't do much jobs for such abstration.
i don't like to do the things such as the conversion between the dB
and raw values on the kernel space.  the user-space can do it better.

on ALSA 0.5.x, we had such dB information, but by some reason it was
dropped (i don't remember why).   now it's good time to revive this
old good guy :)

> Are there any sound cards where this "consistency in the application" is 
> not possible?

such as boost switch?


Takashi


-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to