diff options
author | Wim Taymans <wim.taymans@gmail.com> | 2002-05-26 21:59:22 +0000 |
---|---|---|
committer | Wim Taymans <wim.taymans@gmail.com> | 2002-05-26 21:59:22 +0000 |
commit | 91a716f915e94b43ea4cb88a81b1308906940d45 (patch) | |
tree | 374291fcb2ff64c8d6fe5e716172ac04cd57434f /gst/avi/gstavimux.c | |
parent | e9ddec5f6863d23b99adef4912f23776075b0a05 (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.c | 32 |
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); |