mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-29 03:30:35 +00:00
Fixed some plugins
Original commit message from CVS: Fixed some plugins
This commit is contained in:
parent
4822f3c01b
commit
0f1b49a387
7 changed files with 15 additions and 40 deletions
|
@ -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,
|
||||
|
|
|
@ -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 );
|
||||
|
|
|
@ -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)));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue