Dana 26. 8. 2015. 13:19 osoba "Nicolas George" <geo...@nsup.org> napisala je: > > Do not assume that ff_request_frame() returning success > implies a frame has arrived in the FIFO. > Instead, just loop until a frame is in the FIFO. > It does not change anything since the same loop is present > in ff_request_frame(), confirmed by an assertion. > > Signed-off-by: Nicolas George <geo...@nsup.org> > --- > libavfilter/buffersink.c | 5 +---- > 1 file changed, 1 insertion(+), 4 deletions(-) > > diff --git a/libavfilter/buffersink.c b/libavfilter/buffersink.c > index 36b9e42..492e290 100644 > --- a/libavfilter/buffersink.c > +++ b/libavfilter/buffersink.c > @@ -133,7 +133,7 @@ int attribute_align_arg av_buffersink_get_frame_flags(AVFilterContext *ctx, AVFr > AVFrame *cur_frame; > > /* no picref available, fetch it from the filterchain */ > - if (!av_fifo_size(buf->fifo)) { > + while (!av_fifo_size(buf->fifo)) { > if (inlink->closed) > return AVERROR_EOF; > if (flags & AV_BUFFERSINK_FLAG_NO_REQUEST) > @@ -142,9 +142,6 @@ int attribute_align_arg av_buffersink_get_frame_flags(AVFilterContext *ctx, AVFr > return ret; > } > > - if (!av_fifo_size(buf->fifo)) > - return AVERROR(EINVAL); > - > if (flags & AV_BUFFERSINK_FLAG_PEEK) { > cur_frame = *((AVFrame **)av_fifo_peek2(buf->fifo, 0)); > if ((ret = av_frame_ref(frame, cur_frame)) < 0) > -- > 2.5.0
lgtm _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel