Module: wine Branch: master Commit: a8a644c1b8a0efff477405cc981f8977ddc8e88d URL: https://source.winehq.org/git/wine.git/?a=commit;h=a8a644c1b8a0efff477405cc9...
Author: Zebediah Figura z.figura12@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@gmail.com Signed-off-by: Alexandre Julliard julliard@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)