From a8a644c1b8a0efff477405cc981f8977ddc8e88d Mon Sep 17 00:00:00 2001 From: Zebediah Figura Date: Tue, 14 Jul 2020 19:56:24 -0500 Subject: [PATCH] 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 Signed-off-by: Alexandre Julliard --- 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 ff0f159c131..7319345931e 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)