[alsa-devel] What does 0dB refer to? (Logitech USB Speakers)

Lennart Poettering mznyfn at 0pointer.de
Tue Apr 15 01:43:58 CEST 2008

On Mon, 14.04.08 18:08, Aldrin Martoq (amartoq at dcc.uchile.cl) wrote:

> >  > Yes, but what I am asking for is to define the dB values of the master
> >  > control relative to the some ref level on this line-out. What happens
> >  > after the line-out doesn't matter at all.
> Lennart: while I definitely agree on what you try to achieve, I
> strongly disagree the way it's being solved.

Uh? Nothing is solved. We have this discussion on this ML because it
needs to be solved.

> Initial volume setup is an *installation* issue, not a *boot or daemon
> startup* issue. When you buy a notebook with linux pre-installed, it's
> the manufacturer who must make sure the notebook has the appropiate
> volume levels, factory default. When you install Fedora, it's the
> fedora install program who must make sure the appropiate volume
> levels. Both ways, when the user starts its new shiny linux, it just
> works.

It's not installation issue. It's a "seeing for the first time"
issue. For hotplug devices this might be much later than on installation.

In one of the first emails of this thread I already explained that I'd
like to see a new command for alsactl called "reset" or suchlike which
implements the logic to initialize the dB scales properly. We'd then
call this program from the udev rules if "alsactl restore" fails
because the device was unknown before and has no configuration file

Right now we have this really awful program in Fedora called "salsa"
and "alsaunmute" which implements this logic, but is really really bad
in doing so, because it just initializes everything to 70% for unknown
devices. Also, while it is able to restore the volume settings, it is
not capable to save them on hot-unplug. Which makes the whole thing
pretty pointless.

But anyway, isn't this exactly what you are looking for? I am not sure
what you are asking for more than this?

However, having "alsctl reset" is nice. But it is still not sufficient
for the actual problems I need to solve in PA. See below.

> That's all, end of story! If you put code that tries to guess what the
> appropiate volume should be for any case, it will become an infinite
> problem of what is right and what is wrong, not counting the annoying
> user experience this will bring. You can't guess what is right for
> every people, so a sane mute (in case of no other source of
> information) is clearly the only good choice.

The problem is a bit more complex. Think of multiple sessions and
stuff. If ConsoleKit informs PA about a session switch we need to be
able to provide every user hs own set of mixer settings.

Dude, it's pretty easy to define a common refernce of the dB
values. In fact, James (who afaik did the dB scale work initially)
already agreed to this and even suggested measuring the voltage on the
output jack.


Lennart Poettering                        Red Hat, Inc.
lennart [at] poettering [dot] net         ICQ# 11060553
http://0pointer.net/lennart/           GnuPG 0x1A015CC4

More information about the Alsa-devel mailing list