diff options
-rw-r--r-- | gst/avi/gstavidemux.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gst/avi/gstavidemux.c b/gst/avi/gstavidemux.c index 21714c8a..d17d12ef 100644 --- a/gst/avi/gstavidemux.c +++ b/gst/avi/gstavidemux.c @@ -1670,10 +1670,14 @@ gst_avi_demux_loop (GstElement *element) guint32 got_bytes; if (chunk.size) { + GstClockTime dur_ts; got_bytes = gst_bytestream_peek (avi_demux->bs, &buf, chunk.size); - + GST_BUFFER_TIMESTAMP (buf) = next_ts; + gst_pad_query (stream->pad, GST_QUERY_POSITION, &format, &dur_ts); + GST_BUFFER_DURATION (buf) = dur_ts - next_ts; + if (stream->need_flush) { /* FIXME, do some flush event here */ stream->need_flush = FALSE; |