summaryrefslogtreecommitdiffstats
path: root/gst/avi/gstavimux.c
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@gmail.com>2002-05-26 21:59:22 +0000
committerWim Taymans <wim.taymans@gmail.com>2002-05-26 21:59:22 +0000
commit91a716f915e94b43ea4cb88a81b1308906940d45 (patch)
tree374291fcb2ff64c8d6fe5e716172ac04cd57434f /gst/avi/gstavimux.c
parente9ddec5f6863d23b99adef4912f23776075b0a05 (diff)
- Changed plugins for new APIs
Original commit message from CVS: - Changed plugins for new APIs - modularized audiofile. - added seeking, query and convert functions for mad, mpeg2dec, avidemux, mpegdemux, mpegparse - sync updates to oss. removed the ossclock for now
Diffstat (limited to 'gst/avi/gstavimux.c')
-rw-r--r--gst/avi/gstavimux.c32
1 files changed, 21 insertions, 11 deletions
diff --git a/gst/avi/gstavimux.c b/gst/avi/gstavimux.c
index c334892e..c0b11342 100644
--- a/gst/avi/gstavimux.c
+++ b/gst/avi/gstavimux.c
@@ -789,16 +789,24 @@ gst_avimux_bigfile(GstAviMux *avimux, gboolean last)
if (avimux->is_bigfile)
{
/* sarch back */
- event = gst_event_new_seek(GST_SEEK_BYTEOFFSET_SET, avimux->avix_start, TRUE);
- gst_pad_send_event(avimux->srcpad, event);
-
- /* rewrite AVIX header */
- header = gst_avimux_riff_get_avix_header(avimux->datax_size);
- gst_pad_push(avimux->srcpad, header);
-
- /* go back to current location */
- event = gst_event_new_seek(GST_SEEK_BYTEOFFSET_SET, avimux->total_data, TRUE);
- gst_pad_send_event(avimux->srcpad, event);
+ event = gst_event_new_seek (GST_FORMAT_BYTES |
+ GST_SEEK_METHOD_SET |
+ GST_SEEK_FLAG_FLUSH,
+ avimux->avix_start);
+ /* if the event succeeds */
+ if (gst_pad_send_event(avimux->srcpad, event)) {
+
+ /* rewrite AVIX header */
+ header = gst_avimux_riff_get_avix_header(avimux->datax_size);
+ gst_pad_push(avimux->srcpad, header);
+
+ /* go back to current location */
+ event = gst_event_new_seek (GST_FORMAT_BYTES |
+ GST_SEEK_METHOD_SET |
+ GST_SEEK_FLAG_FLUSH,
+ avimux->total_data);
+ gst_pad_send_event(avimux->srcpad, event);
+ }
}
avimux->avix_start = avimux->total_data;
@@ -884,7 +892,9 @@ gst_avimux_stop_file (GstAviMux *avimux)
/* seek and rewrite the header */
header = gst_avimux_riff_get_avi_header(avimux);
- event = gst_event_new_seek(GST_SEEK_BYTEOFFSET_SET, 0, TRUE);
+ event = gst_event_new_seek (GST_FORMAT_BYTES |
+ GST_SEEK_METHOD_SET |
+ GST_SEEK_FLAG_FLUSH, 0);
gst_pad_send_event(avimux->srcpad, event);
gst_pad_push(avimux->srcpad, header);