Zebediah Figura : quartz: Always apply the 200 ms delay to presentation time.

Alexandre Julliard julliard at winehq.org
Wed Jul 15 16:44:44 CDT 2020


Module: wine
Branch: master
Commit: a8a644c1b8a0efff477405cc981f8977ddc8e88d
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=a8a644c1b8a0efff477405cc981f8977ddc8e88d

Author: Zebediah Figura <z.figura12 at gmail.com>
Date:   Tue Jul 14 19:56:24 2020 -0500

quartz: Always apply the 200 ms delay to presentation time.

This matches native (actually, native goes one step further and increases the
delay by 100 ms every time the filter is paused). Generally this makes sense,
too, as otherwise a graph that is paused and then resumed will suddenly find
itself 200 ms behind.

Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/quartz/filtergraph.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/dlls/quartz/filtergraph.c b/dlls/quartz/filtergraph.c
index ff0f159c13..7319345931 100644
--- a/dlls/quartz/filtergraph.c
+++ b/dlls/quartz/filtergraph.c
@@ -4902,8 +4902,9 @@ static HRESULT WINAPI MediaFilter_Run(IMediaFilter *iface, REFERENCE_TIME start)
     {
         IReferenceClock_GetTime(graph->refClock, &graph->stream_start);
         stream_start = graph->stream_start - graph->stream_elapsed;
-        if (graph->state == State_Stopped)
-            stream_start += 200 * 10000;
+        /* Delay presentation time by 200 ms, to give filters time to
+         * initialize. */
+        stream_start += 200 * 10000;
     }
 
     LIST_FOR_EACH_ENTRY(filter, &graph->filters, struct filter, entry)




More information about the wine-cvs mailing list