<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">On 19.04.2017 10:24, KimJeongYeon
wrote:<br>
</div>
<blockquote
cite="mid:CAPoUOUJBNi_mSQqmEupDDwnNidbOFsY9GdoPh5UcV2ZjzP-C=A@mail.gmail.com"
type="cite">
<div dir="auto">
<div><br>
<div class="gmail_extra"><br>
<div class="gmail_quote">2017. 4. 19. 오전 5:10에 "Georg Chini"
<<a moz-do-not-send="true" href="mailto:georg@chini.tk">georg@chini.tk</a>>님이
작성:<br type="attribution">
<blockquote class="quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="elided-text">On 18.04.2017 21:45, Georg
Chini wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
On 18.04.2017 14:36, KimJeongYeon wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
For example, a normal stream tried to attach to
filter sink or source, which<br>
filter loaded and managed by filter-apply. But,
the stream goes to filter's<br>
***master sink or source*** due to unexpected
restoring operation.<br>
It should attached to filter sink or source
properly.<br>
<br>
Also, includes further fix according to Georg's
comment, [1]<br>
If a stream that had filter.apply set initially
is moved to another sink/source, then the filter<br>
should be applied again (a new filter, since
the master sink/source has changed).<br>
<br>
If a stream that did not have filter.apply set
initially is moved away, the property should<br>
be removed and no new filter applied.<br>
<br>
Also, a property list change might add or
remove the filter.apply property. If it is added,<br>
we want that the filter is applied. Your patch
does nothing and assumes that the stream<br>
is already filtered, even if the stream is not
on a filter sink.<br>
<br>
[1] <a moz-do-not-send="true"
href="https://lists.freedesktop.org/archives/pulseaudio-discuss/2017-April/027980.html"
rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>archives/pulseaudio-discuss/20<wbr>17-April/027980.html</a><br>
<br>
Signed-off-by: KimJeongYeon <<a
moz-do-not-send="true"
href="mailto:jeongyeon.kim@samsung.com"
target="_blank">jeongyeon.kim@samsung.com</a>><br>
</blockquote>
Hi JeongYeon,<br>
<br>
sorry, but I still don't agree with your patch. As
already said you do not need the<br>
enumeration, a simple boolean </blockquote>
</div>
</blockquote>
</div>
</div>
</div>
<div dir="auto"><br>
</div>
<div dir="auto">Ok. I'll do.</div>
<div dir="auto"><br>
</div>
<div dir="auto">
<div class="gmail_extra">
<div class="gmail_quote">
<blockquote class="quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="elided-text">
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">should
do. Also skip_prop_change seems unnecessary.<br>
</blockquote>
</div>
</blockquote>
</div>
</div>
</div>
<div dir="auto"><br>
</div>
<div dir="auto">About 'skip_prop_change':</div>
<div dir="auto">Move operation happens twice when call
'move_objects_for_filter'. Because, unexpected proplist-hook
comes at 'do_move'.</div>
<div dir="auto">But, it doesn't harm moving operation.</div>
</div>
</blockquote>
<br>
That's what I mean. I know there will be an unnecessary call to
process() due to<br>
the property list change, but it should not have any effect and so
there is no need<br>
to prevent it. Actually the move operation should not happen twice,
instead you<br>
should see the "Stream appears to be playing on an appropriate sink
already. Ignoring."<br>
message. Or am I wrong there?<br>
<br>
Apart from PA_PROP_FILTER_APPLY_MOVING there are also the other
changes to the<br>
property list when we set/remove the filter.apply and
filter.apply.set_by_mfa properties.<br>
They also should have no effect, but better test it out. If there
are too many superfluous<br>
messages in the log, I am not completely against using
skip_prop_changes to suppress<br>
them. In this case you would only need to set the variable before
the property list<br>
operation and it can be checked and reset early in process().<br>
<p><br>
</p>
</body>
</html>