From 0f1b49a3879e08f3bdc5dbc381a2cab6154fe58a Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Fri, 28 Dec 2001 20:24:41 +0000 Subject: [PATCH] Fixed some plugins Original commit message from CVS: Fixed some plugins --- ext/aalib/gstaasink.c | 20 +++++++++----------- ext/mikmod/drv_gst.c | 2 +- ext/mikmod/gstmikmod.c | 4 ++-- ext/mikmod/mikmod_reader.c | 20 -------------------- gst/avi/gstavidemux.c | 4 ++-- gst/flx/gstflxdec.c | 1 - sys/oss/gstosssink.c | 4 +--- 7 files changed, 15 insertions(+), 40 deletions(-) diff --git a/ext/aalib/gstaasink.c b/ext/aalib/gstaasink.c index 1f817fabd8..83d9687fb3 100644 --- a/ext/aalib/gstaasink.c +++ b/ext/aalib/gstaasink.c @@ -328,19 +328,17 @@ gst_aasink_chain (GstPad *pad, GstBuffer *buf) aa_imgwidth (aasink->context), /* dw */ aa_imgheight (aasink->context)); /* dh */ - if (!GST_BUFFER_FLAG_IS_SET(buf, GST_BUFFER_FLUSH)) { - GST_DEBUG (0,"videosink: clock wait: %llu\n", GST_BUFFER_TIMESTAMP(buf)); + GST_DEBUG (0,"videosink: clock wait: %llu\n", GST_BUFFER_TIMESTAMP(buf)); - jitter = gst_clock_current_diff(aasink->clock, GST_BUFFER_TIMESTAMP (buf)); + jitter = gst_clock_current_diff(aasink->clock, GST_BUFFER_TIMESTAMP (buf)); - if (jitter > 500000 || jitter < -500000) - { - GST_DEBUG (0, "jitter: %lld\n", jitter); - gst_clock_set (aasink->clock, GST_BUFFER_TIMESTAMP (buf)); - } - else { - gst_clock_wait(aasink->clock, GST_BUFFER_TIMESTAMP(buf), GST_OBJECT(aasink)); - } + if (jitter > 500000 || jitter < -500000) + { + GST_DEBUG (0, "jitter: %lld\n", jitter); + gst_clock_set (aasink->clock, GST_BUFFER_TIMESTAMP (buf)); + } + else { + gst_clock_wait(aasink->clock, GST_BUFFER_TIMESTAMP(buf), GST_OBJECT(aasink)); } aa_render (aasink->context, &aasink->ascii_parms, diff --git a/ext/mikmod/drv_gst.c b/ext/mikmod/drv_gst.c index 1869c8c6e1..042c508560 100644 --- a/ext/mikmod/drv_gst.c +++ b/ext/mikmod/drv_gst.c @@ -46,7 +46,7 @@ GstBuffer *outdata; if ( need_sync == 1 ) { - GST_BUFFER_FLAG_SET (outdata, GST_BUFFER_FLUSH); + /* FIXME, send a flush event or something */ need_sync = 0 ; } gst_pad_push( srcpad, outdata ); diff --git a/ext/mikmod/gstmikmod.c b/ext/mikmod/gstmikmod.c index adca578b69..a2b5038d01 100644 --- a/ext/mikmod/gstmikmod.c +++ b/ext/mikmod/gstmikmod.c @@ -411,8 +411,8 @@ gst_mikmod_loop (GstElement *element) gst_element_yield (element); } else { - gst_element_set_state (GST_ELEMENT (mikmod), GST_STATE_PAUSED); - gst_pad_push (mikmod->srcpad, gst_event_new (GST_EVENT_EOS)); + gst_element_set_eos (GST_ELEMENT (mikmod)); + gst_pad_push (mikmod->srcpad, GST_BUFFER (gst_event_new (GST_EVENT_EOS))); } } diff --git a/ext/mikmod/mikmod_reader.c b/ext/mikmod/mikmod_reader.c index 97cf70c488..b850f50240 100644 --- a/ext/mikmod/mikmod_reader.c +++ b/ext/mikmod/mikmod_reader.c @@ -28,21 +28,9 @@ GST_READER *gst_reader; gst_reader = ( GST_READER * ) reader; - /*tmp->mik->Buffer = gst_pad_pullregion( tmp->mik->sinkpad, GST_REGION_OFFSET_LEN, tmp->offset, size );*/ - memcpy( ptr, GST_BUFFER_DATA( gst_reader->mik->Buffer ) + gst_reader->offset, size); gst_reader->offset = gst_reader->offset + size; -/* if ( GST_BUFFER_SIZE( tmp->mik->Buffer ) != size ) - tmp->eof = 1; - else - tmp->eof = 0; - - if (GST_BUFFER_FLAG_IS_SET (tmp->mik->Buffer, GST_BUFFER_FLUSH)) - need_sync = 1; - - gst_buffer_unref( tmp->mik->Buffer );*/ - return 1; } @@ -54,17 +42,9 @@ int res; gst_reader = ( GST_READER * ) reader; - /*tmp->mik->Buffer = gst_pad_pullregion( tmp->mik->sinkpad, GST_REGION_OFFSET_LEN, tmp->offset, 1 );*/ res = *( GST_BUFFER_DATA( gst_reader->mik->Buffer ) + gst_reader->offset ); gst_reader->offset += 1; -/* if ( GST_BUFFER_SIZE( tmp->mik->Buffer ) != 1 ) - tmp->eof = 1; - else - tmp->eof = 0; - - gst_buffer_unref( tmp->mik->Buffer );*/ - return res; } diff --git a/gst/avi/gstavidemux.c b/gst/avi/gstavidemux.c index 424a6fb4aa..6c5888ed9c 100644 --- a/gst/avi/gstavidemux.c +++ b/gst/avi/gstavidemux.c @@ -608,8 +608,8 @@ gst_avidemux_process_chunk (GstAviDemux *avi_demux, guint64 filepos, avi_demux->next_time += avi_demux->time_interval; if (avi_demux->video_need_flush[0]) { + /* FIXME, do some flush event here */ avi_demux->video_need_flush[0] = FALSE; - GST_BUFFER_FLAG_SET (buf, GST_BUFFER_FLUSH); } GST_DEBUG (0,"gst_avi_demux_chain: send video buffer %08x\n", *chunksize); @@ -639,7 +639,7 @@ gst_avidemux_process_chunk (GstAviDemux *avi_demux, guint64 filepos, if (avi_demux->audio_need_flush[0]) { GST_DEBUG (0,"audio flush\n"); avi_demux->audio_need_flush[0] = FALSE; - GST_BUFFER_FLAG_SET (buf, GST_BUFFER_FLUSH); + /* FIXME, do some flush event here */ } GST_DEBUG (0,"gst_avi_demux_chain: send audio buffer %08x\n", *chunksize); diff --git a/gst/flx/gstflxdec.c b/gst/flx/gstflxdec.c index 211ab476d6..5fd5eb2377 100644 --- a/gst/flx/gstflxdec.c +++ b/gst/flx/gstflxdec.c @@ -571,7 +571,6 @@ gst_flxdec_loop (GstElement *element) GST_BUFFER_DATA(flxdec->frame), GST_BUFFER_DATA(flxdec->out)); - //GST_BUFFER_FLAG_SET(flxdec->out, GST_BUFFER_FLUSH); gst_pad_push(flxdec->srcpad, flxdec->out); break; diff --git a/sys/oss/gstosssink.c b/sys/oss/gstosssink.c index b7dd8d82d3..9bcc7fa976 100644 --- a/sys/oss/gstosssink.c +++ b/sys/oss/gstosssink.c @@ -388,9 +388,7 @@ gst_osssink_chain (GstPad *pad, GstBuffer *buf) // g_return_if_fail(GST_FLAG_IS_SET(osssink,GST_STATE_RUNNING)); if (GST_IS_EVENT (buf)) { - g_print ("eos on osssink\n"); - gst_element_set_state (GST_ELEMENT (osssink), GST_STATE_PAUSED); - gst_event_free (GST_EVENT (buf)); + gst_pad_event_default (pad, GST_EVENT (buf)); return; }