plugins/elements/gstfilesink.c: Add some FIXME for the NEWSEGMENT handling.

Original commit message from CVS:
* plugins/elements/gstfilesink.c: (gst_file_sink_open_file),
(gst_file_sink_close_file), (gst_file_sink_event),
(gst_file_sink_render):
Add some FIXME for the NEWSEGMENT handling.
This commit is contained in:
Wim Taymans 2006-10-06 13:01:30 +00:00
parent 6faacf67a3
commit fe59eb0e3c
2 changed files with 15 additions and 4 deletions

View file

@ -1,3 +1,10 @@
2006-10-06 Wim Taymans <wim@fluendo.com>
* plugins/elements/gstfilesink.c: (gst_file_sink_open_file),
(gst_file_sink_close_file), (gst_file_sink_event),
(gst_file_sink_render):
Add some FIXME for the NEWSEGMENT handling.
2006-10-05 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* gst/parse/grammar.y:

View file

@ -374,14 +374,18 @@ gst_file_sink_event (GstBaseSink * sink, GstEvent * event)
switch (type) {
case GST_EVENT_NEWSEGMENT:
{
gint64 soffset, eoffset;
gint64 start, stop, pos;
GstFormat format;
gst_event_parse_new_segment (event, NULL, NULL, &format, &soffset,
&eoffset, NULL);
gst_event_parse_new_segment (event, NULL, NULL, &format, &start,
&stop, &pos);
if (format == GST_FORMAT_BYTES) {
if (!gst_file_sink_do_seek (filesink, (guint64) soffset))
/* FIXME, the seek should be performed on the pos field, start/stop are
* just boundaries for valid bytes offsets. We should also fill the file
* with zeroes if the new position extends the current EOF (sparse streams
* and segment accumulation). */
if (!gst_file_sink_do_seek (filesink, (guint64) start))
goto seek_failed;
} else {
GST_DEBUG ("Ignored NEWSEGMENT event of format %u (%s)",