[pulseaudio-commits] [Git][pulseaudio/pulseaudio][marge_bot_batch_merge_job] 3 commits: sink: Reduce chat sink priority
PulseAudio Marge Bot
gitlab at gitlab.freedesktop.org
Thu Dec 10 16:37:49 UTC 2020
PulseAudio Marge Bot pushed to branch marge_bot_batch_merge_job at PulseAudio / pulseaudio
Commits:
57de3e9b by Tanu Kaskinen at 2020-12-10T16:37:42+00:00
sink: Reduce chat sink priority
Some gaming sound cards have custom profiles with analog-game and
analog-chat mappings that exist simultaneously. The game sink should
have higher priority than the chat sink, but currently there's no way to
affect the sink priorities from the profile-set configuration (the
mapping priority is not propagated to the sink priority).
I first thought about adding the mapping priority to the sink priority,
but that could mess up the prioritization system in
pa_device_init_priority(). I ended up checking for the intended roles
property to reduce the chat sink priority. I also reduced the iec958
priority so that the chat and iec958 sinks don't end up with the same
priority.
Fixes: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/818
- - - - -
fbc96078 by Mattias Jernberg at 2020-12-10T16:37:44+00:00
alsa-mixer: Enable volume control of SteelSeries Arctis stereo output
Since there is now support for specifying the index of an Element, add the
same config as is used for the output-mono variant, as they behave the same:
One volume control with no support for adjustments to the left and right
channels.
- - - - -
2b1cc1d0 by Hui Wang at 2020-12-10T16:37:46+00:00
alsa-mixer: disable the Auto-Mute once the system has speaker
With the Auto-Mute enabled, if the headphone jack is plugged, the
alsa hda driver will mute the speaker and set pinctl of the speaker
to Hi-Z state, after this happens, even the pulseaudio unmute the
speaker, the speaker still couldn't output sound because the pinctl
is in Hi-Z state.
We found this issue on a Dell machine which has multi-function audio
jack, after the headphone is plugged in, the speaker's availability is
still unknown, users could select speaker from gnome-sound-setting,
but even the speaker is selected to be the active device, it couldn't
output sound.
The Auto-Mute is not useful if the pulseaudio is running since pa
could mute/unmute devices according to active port change, the ucm
for sof+hda already disabled the Auto-Mute, let us disable it for
hda audio if the machine has the internal speaker.
Signed-off-by: Hui Wang <hui.wang at canonical.com>
- - - - -
3 changed files:
- src/modules/alsa/mixer/paths/analog-output-speaker.conf
- src/modules/alsa/mixer/paths/usb-gaming-headset-output-stereo.conf
- src/pulsecore/sink.c
Changes:
=====================================
src/modules/alsa/mixer/paths/analog-output-speaker.conf
=====================================
@@ -88,6 +88,13 @@ override-map.2 = all-left,all-right
switch = off
volume = off
+; Make sure the internal speakers are not auto-muted once the system has speakers
+[Element Auto-Mute Mode]
+enumeration = select
+
+[Option Auto-Mute Mode:Disabled]
+name = analog-output-speaker
+
; This profile path is intended to control the speaker, let's mute headphones
; else there will be a spike when plugging in headphones
[Element Headphone]
=====================================
src/modules/alsa/mixer/paths/usb-gaming-headset-output-stereo.conf
=====================================
@@ -23,10 +23,12 @@
; Steelseries Arctis 7
; Steelseries Arctis Pro Wireless.
; Lucidsound LS31
-;
-; This path doesn't provide hardware volume control, because the stereo
-; output is controlled by the PCM element with index 1, and currently
-; PulseAudio only supports elements with index 0.
[General]
description-key = analog-output-headphones
+
+[Element PCM,1]
+volume = merge
+switch = mute
+override-map.1 = all
+override-map.2 = all-left,all-right
=====================================
src/pulsecore/sink.c
=====================================
@@ -3609,10 +3609,18 @@ unsigned pa_device_init_priority(pa_proplist *p) {
if ((s = pa_proplist_gets(p, PA_PROP_DEVICE_PROFILE_NAME))) {
- if (pa_startswith(s, "analog-"))
+ if (pa_startswith(s, "analog-")) {
priority += 9;
+
+ /* If an analog device has an intended role of "phone", it probably
+ * co-exists with another device that is meant for everything else,
+ * and that other device should have higher priority than the phone
+ * device. */
+ if (pa_str_in_list_spaces(pa_proplist_gets(p, PA_PROP_DEVICE_INTENDED_ROLES), "phone"))
+ priority -= 1;
+ }
else if (pa_startswith(s, "iec958-"))
- priority += 8;
+ priority += 7;
}
return priority;
View it on GitLab: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/compare/3afb7f8c08ab6ce8e47075f7484f470c8c561a11...2b1cc1d00733eaa9b4c8470dca816472a504462d
--
View it on GitLab: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/compare/3afb7f8c08ab6ce8e47075f7484f470c8c561a11...2b1cc1d00733eaa9b4c8470dca816472a504462d
You're receiving this email because of your account on gitlab.freedesktop.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/pulseaudio-commits/attachments/20201210/67cf15ca/attachment-0001.htm>
More information about the pulseaudio-commits
mailing list