From 287894a89a1e075e152d6a337e8021c407127289 Mon Sep 17 00:00:00 2001 From: Mark Nauwelaerts Date: Mon, 8 Feb 2010 21:41:29 +0100 Subject: [PATCH] rtspsrc: mark DISCONT when resuming PLAY In particular, when streaming interleaved, this arranges for setting a new timestamp on outgoing buffer so downstream can appropriate reset to a change in (rtp)time. --- gst/rtsp/gstrtspsrc.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gst/rtsp/gstrtspsrc.c b/gst/rtsp/gstrtspsrc.c index 9f8edb8..ced8ae5 100644 --- a/gst/rtsp/gstrtspsrc.c +++ b/gst/rtsp/gstrtspsrc.c @@ -5960,6 +5960,13 @@ gst_rtspsrc_play (GstRTSPSrc * src, GstSegment * segment) gst_rtspsrc_loop_send_cmd (src, CMD_WAIT, FALSE); gst_task_start (src->task); + /* mark discont */ + GST_DEBUG_OBJECT (src, "mark DISCONT, we did a seek to another position"); + for (walk = src->streams; walk; walk = g_list_next (walk)) { + GstRTSPStream *stream = (GstRTSPStream *) walk->data; + stream->discont = TRUE; + } + done: GST_RTSP_STATE_UNLOCK (src); -- 2.7.4