summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--gst/matroska/matroska-demux.c4
2 files changed, 12 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index b9139de9..b8a16f49 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
2008-08-21 Sebastian Dröge <sebastian.droege@collabora.co.uk>
+ * gst/matroska/matroska-demux.c:
+ (gst_matroska_demux_parse_blockgroup_or_simpleblock):
+ If the duration of a block is unknown only use the timestamp for the
+ first lace and use GST_CLOCK_TIME_NONE as duration for the following
+ laces. Otherwise every lace has the same timestamp which leads to
+ various problems. Really fixes bug #548831.
+
+2008-08-21 Sebastian Dröge <sebastian.droege@collabora.co.uk>
+
* gst/wavenc/gstwavenc.c: (gst_wavenc_chain):
If we're not allowing width!=depth in wavenc we should also disable
the code that was added to support width!=depth.
diff --git a/gst/matroska/matroska-demux.c b/gst/matroska/matroska-demux.c
index 8e0193d9..44471f1b 100644
--- a/gst/matroska/matroska-demux.c
+++ b/gst/matroska/matroska-demux.c
@@ -4214,8 +4214,10 @@ gst_matroska_demux_parse_blockgroup_or_simpleblock (GstMatroskaDemux * demux,
next_lace:
size -= lace_size[n];
- if (lace_time != GST_CLOCK_TIME_NONE)
+ if (lace_time != GST_CLOCK_TIME_NONE && duration)
lace_time += duration / laces;
+ else
+ lace_time = GST_CLOCK_TIME_NONE;
}
}