mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-04 13:32:29 +00:00
Fixed some plugins
Original commit message from CVS: Fixed some plugins
This commit is contained in:
parent
d0e007a680
commit
42cc21cd97
7 changed files with 21 additions and 31 deletions
|
@ -215,8 +215,8 @@ gst_afsrc_get (GstPad *pad)
|
|||
frameCount);
|
||||
readbytes = readframes * (src->channels * src->width / 8);
|
||||
if (readbytes == 0) {
|
||||
gst_element_signal_eos (GST_ELEMENT (src));
|
||||
return NULL;
|
||||
gst_element_set_eos (GST_ELEMENT (src));
|
||||
return GST_BUFFER (gst_event_new (GST_EVENT_EOS));
|
||||
}
|
||||
|
||||
GST_BUFFER_SIZE (buf) = readbytes;
|
||||
|
|
|
@ -239,7 +239,6 @@ gst_sdlvideosink_chain (GstPad *pad, GstBuffer *buf)
|
|||
|
||||
sdlvideosink = GST_SDLVIDEOSINK (gst_pad_get_parent (pad));
|
||||
|
||||
if (!GST_BUFFER_FLAG_IS_SET(buf, GST_BUFFER_FLUSH)) {
|
||||
GST_DEBUG (0,"videosink: clock wait: %llu\n", GST_BUFFER_TIMESTAMP(buf));
|
||||
|
||||
jitter = gst_clock_current_diff(sdlvideosink->clock, GST_BUFFER_TIMESTAMP (buf));
|
||||
|
@ -252,7 +251,6 @@ gst_sdlvideosink_chain (GstPad *pad, GstBuffer *buf)
|
|||
else {
|
||||
gst_clock_wait(sdlvideosink->clock, GST_BUFFER_TIMESTAMP(buf), GST_OBJECT(sdlvideosink));
|
||||
}
|
||||
}
|
||||
|
||||
/* Lock SDL/yuv-overlay */
|
||||
if ( SDL_LockSurface(sdlvideosink->screen) < 0 ) {
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -252,10 +252,11 @@ gst_mp1videoparse_real_chain (Mp1VideoParse *mp1videoparse, GstBuffer *buf, GstP
|
|||
|
||||
time_stamp = GST_BUFFER_TIMESTAMP(buf);
|
||||
|
||||
|
||||
if (GST_BUFFER_FLAG_IS_SET(buf, GST_BUFFER_FLUSH)) {
|
||||
/* FIXME, handle events here */
|
||||
/*
|
||||
gst_mp1videoparse_flush(mp1videoparse);
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
if (mp1videoparse->partialbuf) {
|
||||
offset = GST_BUFFER_SIZE(mp1videoparse->partialbuf);
|
||||
|
@ -349,7 +350,7 @@ gst_mp1videoparse_real_chain (Mp1VideoParse *mp1videoparse, GstBuffer *buf, GstP
|
|||
GST_BUFFER_TIMESTAMP(outbuf) = mp1videoparse->last_pts;
|
||||
|
||||
if (mp1videoparse->in_flush) {
|
||||
GST_BUFFER_FLAG_SET(outbuf, GST_BUFFER_FLUSH);
|
||||
/* FIXME, send a flush event here */
|
||||
mp1videoparse->in_flush = FALSE;
|
||||
}
|
||||
|
||||
|
|
|
@ -247,13 +247,14 @@ gst_mp3parse_chain (GstPad *pad, GstBuffer *buf)
|
|||
|
||||
last_ts = GST_BUFFER_TIMESTAMP(buf);
|
||||
|
||||
if (GST_BUFFER_FLAG_IS_SET(buf, GST_BUFFER_FLUSH)) {
|
||||
/* FIXME, do flush */
|
||||
/*
|
||||
if (mp3parse->partialbuf) {
|
||||
gst_buffer_unref(mp3parse->partialbuf);
|
||||
mp3parse->partialbuf = NULL;
|
||||
}
|
||||
mp3parse->in_flush = TRUE;
|
||||
}
|
||||
*/
|
||||
|
||||
// if we have something left from the previous frame
|
||||
if (mp3parse->partialbuf) {
|
||||
|
@ -329,12 +330,9 @@ gst_mp3parse_chain (GstPad *pad, GstBuffer *buf)
|
|||
if (mp3parse->skip == 0) {
|
||||
GST_DEBUG (0,"mp3parse: pushing buffer of %d bytes\n",GST_BUFFER_SIZE(outbuf));
|
||||
if (mp3parse->in_flush) {
|
||||
GST_BUFFER_FLAG_SET(outbuf, GST_BUFFER_FLUSH);
|
||||
/* FIXME do some sort of flush event */
|
||||
mp3parse->in_flush = FALSE;
|
||||
}
|
||||
else {
|
||||
GST_BUFFER_FLAG_UNSET(outbuf, GST_BUFFER_FLUSH);
|
||||
}
|
||||
GST_BUFFER_TIMESTAMP(outbuf) = last_ts;
|
||||
gst_pad_push(mp3parse->srcpad,outbuf);
|
||||
}
|
||||
|
|
|
@ -39,7 +39,7 @@
|
|||
while (GST_IS_EVENT(in)) {
|
||||
switch (GST_EVENT_TYPE(in)) {
|
||||
case GST_EVENT_EOS:
|
||||
gst_element_set_state((GstElement*)filter, GST_STATE_PAUSED);
|
||||
gst_element_set_eos((GstElement*)filter);
|
||||
gst_pad_push(filter->srcpad, in);
|
||||
return;
|
||||
default:
|
||||
|
|
|
@ -262,12 +262,6 @@ vcdsrc_get (GstPad *pad)
|
|||
goto read_sector;
|
||||
}
|
||||
|
||||
/* if (readbytes == 0) { */
|
||||
/* gst_src_signal_eos(GST_SRC(vcdsrc)); */
|
||||
/* gst_element_set_state(GST_ELEMENT(vcdsrc),~GST_STATE_PLAYING); */
|
||||
/* gst_element_set_state(GST_ELEMENT(vcdsrc),~GST_STATE_RUNNING); */
|
||||
/* return; */
|
||||
/* } */
|
||||
|
||||
GST_BUFFER_OFFSET(buf) = vcdsrc->curoffset;
|
||||
GST_BUFFER_SIZE(buf) = vcdsrc->bytes_per_read;
|
||||
|
|
Loading…
Reference in a new issue