summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlivier Crête <olivier.crete@collabora.com>2013-07-15 22:27:20 -0400
committerTim-Philipp Müller <tim@centricular.net>2013-07-17 18:47:35 +0100
commitd11092d478aa9118d0b6aebcfebeedd06e7bc12e (patch)
tree89778b137fdb6c785ad6631a02b13e8ef23e3759
parent404f80a28c420806a808d2ffacf4073411e1df7d (diff)
tagdemux: Put the modified time back in the time part of the segment
Fixes ACCURATE seeks in push mode with baseparse. https://bugzilla.gnome.org/show_bug.cgi?id=704301
-rw-r--r--gst-libs/gst/tag/gsttagdemux.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/gst-libs/gst/tag/gsttagdemux.c b/gst-libs/gst/tag/gsttagdemux.c
index 565d7a24b..fb7d06376 100644
--- a/gst-libs/gst/tag/gsttagdemux.c
+++ b/gst-libs/gst/tag/gsttagdemux.c
@@ -1589,7 +1589,7 @@ static gboolean
gst_tag_demux_send_new_segment (GstTagDemux * tagdemux)
{
GstEvent *event;
- gint64 start, stop, position;
+ gint64 start, stop, time;
GstSegment *seg = &tagdemux->priv->segment;
GstSegment newseg;
@@ -1609,10 +1609,10 @@ gst_tag_demux_send_new_segment (GstTagDemux * tagdemux)
start = seg->start;
stop = seg->stop;
- position = seg->time;
+ time = seg->time;
g_return_val_if_fail (start != -1, FALSE);
- g_return_val_if_fail (position != -1, FALSE);
+ g_return_val_if_fail (time != -1, FALSE);
if (tagdemux->priv->strip_end > 0) {
if (gst_tag_demux_get_upstream_size (tagdemux)) {
@@ -1640,10 +1640,10 @@ gst_tag_demux_send_new_segment (GstTagDemux * tagdemux)
else
start = 0;
- if (position > tagdemux->priv->strip_start)
- position -= tagdemux->priv->strip_start;
+ if (time > tagdemux->priv->strip_start)
+ time -= tagdemux->priv->strip_start;
else
- position = 0;
+ time = 0;
if (stop != -1) {
if (stop > tagdemux->priv->strip_start)
@@ -1658,7 +1658,7 @@ gst_tag_demux_send_new_segment (GstTagDemux * tagdemux)
gst_segment_copy_into (seg, &newseg);
newseg.start = start;
newseg.stop = stop;
- newseg.position = position;
+ newseg.time = time;
event = gst_event_new_segment (&newseg);
return gst_pad_push_event (tagdemux->priv->srcpad, event);