Bug 95202 - module-device-manager reroutes streams too eagerly
Summary: module-device-manager reroutes streams too eagerly
Status: RESOLVED MOVED
Alias: None
Product: PulseAudio
Classification: Unclassified
Component: modules (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: pulseaudio-bugs
QA Contact: pulseaudio-bugs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-04-29 10:17 UTC by Tanu Kaskinen
Modified: 2018-07-30 10:19 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Tanu Kaskinen 2016-04-29 10:17:11 UTC
Whenever something changes on a stream, module-device-manager (with do_routing=true) will re-evaluate the stream's routing to react to stream role changes. module-device-manager will not reroute streams that have pa_sink_input.save_sink set, which avoids rerouting of manually routed streams most of the time.

When an application creates a new playback stream, it may set the sink for the new stream. That counts as manual routing, so device-manager should not reroute the stream as long as the requested sink stays available, but such streams don't have save_sink set, so rerouting does happen.

An example:

    paplay --device=foo somefile.ogg

That will play the audio to sink "foo", which in this example is not what device-manager would prefer to use. Now let's change the volume:

    pactl set-sink-input-volume 42 +5%

That volume change will trigger rerouting in device-manager, so the stream gets moved to a different sink!

We should make it possible to distinguish between all three cases:

* manually routed streams with persistent device configuration (can be done currently by checking save_sink == true)

* manually routed streams with ephemeral device configuration (can't be done currently, except during stream creation)

* automatically routed streams (can be done currently by checking save_sink == false)
Comment 1 GitLab Migration User 2018-07-30 10:19:56 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/350.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.