summaryrefslogtreecommitdiffstats
path: root/gst/rtsp
diff options
context:
space:
mode:
authorJosep Torra <n770galaxy@gmail.com>2009-04-18 14:32:40 +0200
committerJosep Torra <n770galaxy@gmail.com>2009-04-18 14:32:40 +0200
commitdfb375daa137350b7a2800c236ef822e3f2d3b2c (patch)
treec325afbfe0c8817d005c6b8836f43af2523f0a98 /gst/rtsp
parentec2d6053a0a6e8cf1b6822c4f26be61b2ac699be (diff)
rtspsrc: mark discont on the streams as was said the debug line
After a seek mark all streams with discont as it was said in the debug line. Fixes that buffers after a seek are generated without a valid timestamp.
Diffstat (limited to 'gst/rtsp')
-rw-r--r--gst/rtsp/gstrtspsrc.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gst/rtsp/gstrtspsrc.c b/gst/rtsp/gstrtspsrc.c
index f23ed542..eaf6ef99 100644
--- a/gst/rtsp/gstrtspsrc.c
+++ b/gst/rtsp/gstrtspsrc.c
@@ -1386,6 +1386,7 @@ gst_rtspsrc_perform_seek (GstRTSPSrc * src, GstEvent * event)
gboolean update;
gboolean playing;
GstSegment seeksegment = { 0, };
+ GList *walk;
if (event) {
GST_DEBUG_OBJECT (src, "doing seek with event");
@@ -1509,6 +1510,10 @@ gst_rtspsrc_perform_seek (GstRTSPSrc * src, GstEvent * event)
/* 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;
+ }
GST_RTSP_STREAM_UNLOCK (src);