[pulseaudio-discuss] [PATCH 4/4] alsa-mixer: Add force-hw-volume flag to alsa profile sets
David Henningsson
david.henningsson at canonical.com
Wed Jun 29 03:53:28 PDT 2011
On 2011-06-28 23:13, Colin Guthrie wrote:
> PS, while looking into this issue, I found a way to easily recreate the
> "initial volume issue" I discussed on IRC.
>
> 1. Comment out the path_set_unify() call.
> 2. Use my USB Handset with the Speaker kcontrol (no Master or PCM)
> 3. Switch between Analog Output and Analog Speakers profiles.
>
>
> When witching from AS -> AO, the Speaker kcontrol is zeroed+muted. When
> switching from AO -> AS, it stays in it's zeroed+muted state until the
> volume control is touched. I think this is similar behaviour to the
> initial startup problem.
Aha, interesting.
> Of course even with path_set_unify() commented out, the fact I have two
> ports (one of which now at least works \o/) is bogus. Only Analog
> Speakers should be present so this still needs to be addressed somehow,
> but I'm beginning to actually "get" the problem in a bit more depth now :)
Given your analysis of the problem, you definitely seem to have got
deeper into it than I have :-) But when scratching my head about this
problem a while ago, I remember thinking that after having run through
all the paths, we should remove all paths whose volumes/mutes/enums are
true *subsets* of another path, because having that path does not
contribute anything.
That would in some cases solve this problem as well, e g in the USB
headset case, Analog Output would be removed through that algorithm and
so no profile without hw volume would be present. (Btw, it does annoy me
a little that it's actually named "Speaker" when it's actually a
headphone, but that's an ALSA level problem!)
--
David Henningsson
http://launchpad.net/~diwic
More information about the pulseaudio-discuss
mailing list