On 07.01.2018 20:32, Tanu Kaskinen wrote:
On Thu, 2018-01-04 at 20:54 +0100, Georg Chini wrote:
On 04.01.2018 14:35, Tanu Kaskinen wrote:
On Thu, 2018-01-04 at 08:52 +0100, Georg Chini wrote:
On 03.01.2018 14:51, Tanu Kaskinen wrote:
Your proposal sounds good, if I understand it correctly. I don't think
module-rescue-streams needs or should be involved, however.
Don't we still need module-rescue-stream when a non-default HDMI
sink is forcefully suspended? Or do you want to move the rescue
functionality to the core?
I didn't think of this case. Moving rescuing to the core would make
sense to me, but for now I think it's fine to handle this in module-
rescue-streams. I think the rescue trigger should be a sink becoming
unavailable rather than suspended, though. If we were to use suspending
as the trigger, we'd anyway only do the move when the suspend cause is
PA_SUSPEND_UNAVAILABLE, and I don't see why we shouldn't rescue streams
that are left on unavailable sinks that are not suspended.

I don't understand the argument. module-rescue-stream currently
rescues any stream if the underlying sink becomes unavailable, so
streams that are left on unavailable sinks that are not suspended
are already rescued.

PA_SUSPEND_UNAVAILABLE would only be an additional trigger for
the case that the sink is not removed. Your current patches change
the state of the sink to unavailable without removing it.

I do not want to rely on another module like switch-on-port-available
to remove the sink. I see three possible ways to ensure that the
streams are properly rescued:

- Change your patches so that the sink will be removed instead of suspended.
- Or add PA_SUSPEND_UNAVAILABLE as additional trigger to
module-rescue-stream.
- Or let the core rescue the streams in the suspend case.
My plan is to let the core rescue streams that are left on a sink whose
active port becomes unavailable. It doesn't matter whether the sink
suspends itself or not.

I wonder if in that case it would not make sense to put the whole
rescue logic into the core (and maybe add a flag to disable it). But
that can be done in a second step.

_______________________________________________
pulseaudio-discuss mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss

Reply via email to