[Bug 1834138] Re: PA: Don't restore the streams to sinks/sources with only unavailable ports
Anthony Wong
anthony.wong at ubuntu.com
Thu Jan 2 10:27:59 UTC 2020
** Changed in: hwe-next
Status: New => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1834138
Title:
PA: Don't restore the streams to sinks/sources with only unavailable
ports
Status in HWE Next:
Fix Released
Status in OEM Priority Project:
Confirmed
Status in pulseaudio package in Ubuntu:
Fix Released
Status in pulseaudio source package in Bionic:
Fix Released
Status in pulseaudio source package in Disco:
Fix Released
Status in pulseaudio source package in Eoan:
Fix Released
Bug description:
SRU Document:
[Impact]
The Lenovo P520 machine has dual analogue codecs, so there are two
sinks and two sources in the PA, one has the front headphone and front
microphone, the other has the rear lineout, linein and rear
microphone, and the rear microphone always shows up in the gnome-
sound-setting, When we plug a microphone to front audio jack, there
are two input devices: rear mic and front mic in the gnome-sound-
setting, and suppose users select the the front mic to record sound
via audio app like arecord, the front mic will be bond the arecord,
after the front mic is unplugged, there is only one rear mic left in
the gnome-sound-setting, but the binding will not be changed, the
arecrod still bind to front mic, under this situation if users record
sound via arecord, they will find they can't record any sound from any
other input devices even they are listed in the gnome-sound-setting.
This problem also happens to output devices too.
[Test Case]
After applying this patch, I did the same test: unplug the front mic,
then use the arecord to record sound, the app can record sound from
rear mic now. After I plug the front mic back, the arecord still
record from front mic. Also did the similar test for output devices,
it worked as expected too.
[Regression Potential]
Low, Just make a simple check when creating new streams
(sink_input/source_output), If the restored device (sink/source) has
ports and all ports are unavialble, it will not restore the binding,
otherwise it will work as before.
For the Bionic, This SRU also includes the fix of LP: #1556439, this
fix is safe and is very low possible to introduce any regression too,
because it just adds a sink-input/source-output state checking, if the
sink-input/source-output is unlinking or unlinked, it is useless to
move it to a new sink/source, furthermore it will trigger an assertion
that make the pulseaudio crash, adding this check can fix this problem
(LP: #1556439).
[Other Info]
No more info here
To manage notifications about this bug go to:
https://bugs.launchpad.net/hwe-next/+bug/1834138/+subscriptions
More information about the Ubuntu-sponsors
mailing list