wtay gst-plugins-bad: gst-plugins-bad/ gst-plugins-bad/gst/mpegdemux/
[email protected] Mon, 29 Dec 2008 09:30:17 -0800 (PST)
| Newsgroups | gmane.comp.video.gstreamer.cvs |
|---|---|
| Message-ID | <[email protected]> |
CVS Root: /cvs/gstreamer
Module: gst-plugins-bad
Changes by: wtay
Date: Mon Dec 29 2008 17:30:17 UTC
Log message:
Patch by: Robin Stocker <robin at nibor dot org>
* gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_src_query):
Converting from time to bytes operates on the stream_time, not the SCR
timeline.
The position reporting should happen in stream_time, not the segment
timestamp range. See #557161.
Modified files:
. : ChangeLog
gst/mpegdemux : gstmpegdemux.c
Links:
http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gst-plugins-bad/ChangeLog.diff?r1=1.3840&r2=1.3841
http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gst-plugins-bad/gst/mpegdemux/gstmpegdemux.c.diff?r1=1.7&r2=1.8
====Begin Diffs====
Index: ChangeLog
===================================================================
RCS file: /cvs/gstreamer/gst-plugins-bad/ChangeLog,v
retrieving revision 1.3840
retrieving revision 1.3841
diff -u -d -r1.3840 -r1.3841
--- ChangeLog 29 Dec 2008 16:45:18 -0000 1.3840
+++ ChangeLog 29 Dec 2008 17:30:01 -0000 1.3841
@@ -1,5 +1,15 @@
2008-12-29 Wim Taymans <[email protected]>
+ Patch by: Robin Stocker <robin at nibor dot org>
+
+ * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_src_query):
+ Converting from time to bytes operates on the stream_time, not the SCR
+ timeline.
+ The position reporting should happen in stream_time, not the segment
+ timestamp range. See #557161.
+2008-12-29 Wim Taymans <[email protected]>
* gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init),
(gst_app_src_init), (gst_app_src_set_property),
(gst_app_src_get_property), (gst_app_src_query),
Index: gstmpegdemux.c
RCS file: /cvs/gstreamer/gst-plugins-bad/gst/mpegdemux/gstmpegdemux.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- gstmpegdemux.c 20 Oct 2008 14:19:17 -0000 1.7
+++ gstmpegdemux.c 29 Dec 2008 17:30:03 -0000 1.8
@@ -55,7 +55,7 @@
/* We clamp scr delta with 0 so negative bytes won't be possible */
#define GSTTIME_TO_BYTES(time) \
- ((time != -1) ? gst_util_uint64_scale (MAX(0,(gint64) (GSTTIME_TO_MPEGTIME(time) - demux->first_scr)), demux->scr_rate_n, demux->scr_rate_d) : -1)
+ ((time != -1) ? gst_util_uint64_scale (MAX(0,(gint64) (GSTTIME_TO_MPEGTIME(time))), demux->scr_rate_n, demux->scr_rate_d) : -1)
#define BYTES_TO_GSTTIME(bytes) ((bytes != -1) ? MPEGTIME_TO_GSTTIME(gst_util_uint64_scale (bytes, demux->scr_rate_d, demux->scr_rate_n)) : -1)
#define ADAPTER_OFFSET_FLUSH(_bytes_) demux->adapter_offset += (_bytes_)
@@ -895,8 +895,7 @@
goto not_supported;
}
- position = demux->base_time +
- MPEGTIME_TO_GSTTIME (demux->current_scr - demux->first_scr);
+ position = MPEGTIME_TO_GSTTIME (demux->current_scr - demux->first_scr);
GST_LOG_OBJECT (demux, "Position at GStreamer Time:%" GST_TIME_FORMAT,
GST_TIME_ARGS (position));
------------------------------------------------------------------------------