summaryrefslogtreecommitdiffstats
path: root/gst
diff options
context:
space:
mode:
authorSebastian Dröge <slomo@circular-chaos.org>2008-08-21 13:22:06 +0000
committerSebastian Dröge <slomo@circular-chaos.org>2008-08-21 13:22:06 +0000
commit698b432673894909ad6375a3210a2d592f9cbfae (patch)
tree82836a1991f0c7be84251c2b28a7575e6c415e3b /gst
parentcbccea33ec32a8f8341ff98ce08464c0e277ebb2 (diff)
gst/matroska/matroska-demux.c: If the duration of a block is unknown only use the timestamp for the first lace and us...
Original commit message from CVS: * 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.
Diffstat (limited to 'gst')
-rw-r--r--gst/matroska/matroska-demux.c4
1 files changed, 3 insertions, 1 deletions
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;
}
}