Skip to content

videotestsrc,videorate: Fix timestamping issues in reverse playback

See tests in gst-integration-testsuites!71 (closed)

commit df6415b8 (HEAD -> reverse_playback, thiblahute/reverse_playback) Author: Thibault Saunier tsaunier@igalia.com Date: Mon Apr 27 09:57:30 2020 -0400

videorate: Fix buffer timestamp underflow in reverse playback

And fix reverse playback buffer duration computation as in reverse
playback, buffer duration is prev_buffer.pts - buffer.pts not pts -
next_pts (buffers are displayed from buffer.pts + buffer.duration for
a duration of buffers.duration).

This is now tested with the `validate.test.clock_sync.videorate.*`
tests in the default integration testsuite where we check the exact
data flow and the synchronization on the clock behaviour with a
TestClock.

commit 532ad19b Author: Thibault Saunier tsaunier@igalia.com Date: Thu Apr 23 20:35:39 2020 -0400

videotestsrc: Fix buffer duration in reverse playback

In reverse playback, buffers have to be displayed at buffer.stop running
time, meaning:

    buffer.pts + buffer.duration = prev_buffer.pts
    =>
    buffer.duration = prev_buffer.pts - buffer.pts

We were setting buffer.duration = next_buffer.pts - buffer.pts which
is not correct.
Edited by Thibault Saunier

Merge request reports