summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--gst/matroska/matroska-demux.c6
2 files changed, 14 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 83fffc1e..6292b9da 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2007-09-27 Tim-Philipp Müller <tim at centricular dot net>
+
+ * gst/matroska/matroska-demux.c:
+ Fix setting the discont flag on the first buffer
+ pushed downstream for formats with private codec
+ data that needs to be deserialised into buffers
+ (such as vorbis and FLAC when in a matroska container).
+
2007-09-27 Wim Taymans <wim.taymans@gmail.com>
Patch by: Antoine Tremblay <hexa00 at gmail dot com>
diff --git a/gst/matroska/matroska-demux.c b/gst/matroska/matroska-demux.c
index 37351742..f5f77333 100644
--- a/gst/matroska/matroska-demux.c
+++ b/gst/matroska/matroska-demux.c
@@ -2274,6 +2274,12 @@ gst_matroska_demux_push_hdr_buf (GstMatroskaDemux * demux,
if (flow == GST_FLOW_OK) {
memcpy (GST_BUFFER_DATA (header_buf), data, len);
+
+ if (stream->set_discont) {
+ GST_BUFFER_FLAG_SET (header_buf, GST_BUFFER_FLAG_DISCONT);
+ stream->set_discont = FALSE;
+ }
+
flow = gst_pad_push (stream->pad, header_buf);
}