[FFmpeg-devel] [PATCH 2/5] lavf/demux: treat EAGAIN as REDO unless AVFMT_FLAG_NONBLOCK is set

Anton Khirnov anton at khirnov.net
Mon Nov 14 11:23:53 EET 2022


Quoting Michael Niedermayer (2022-11-10 20:52:33)
> On Thu, Nov 10, 2022 at 01:31:44PM +0100, Anton Khirnov wrote:
> > Quoting Michael Niedermayer (2022-11-10 13:28:27)
> > > On Tue, Nov 08, 2022 at 12:25:47PM +0100, Anton Khirnov wrote:
> > > > Lavf only supports a very limited approximation of non-blocking
> > > > behavior, so we should not return random EAGAINs to callers unless they
> > > > specifically requested it.
> > > > ---
> > > >  libavformat/demux.c | 8 ++++++--
> > > >  1 file changed, 6 insertions(+), 2 deletions(-)
> > > 
> > > this changes seeking behavior of for example:
> > > libavformat/tests/seek fate-suite/dss/sp.dss
> > > 
> > > (this seemed to return EAGAIN before sometimes)
> > 
> > Are you saying that is wrong? I don't see why seeks should return EAGAIN
> > either.
> 
> I do not know if its wrong or not. I remember some seeking used error
> returns to switch to generic seeking and such stuff.
> I just reporrted this as i saw a difference in the tests/seek output

AFAICT the differences are only in av_read_frame() calls, which no
longer return EAGAIN. That is exactly what this patch is supposed to do,
so I'd say there is no problem.

If noone has further objections, I'll push this patch soonish.

-- 
Anton Khirnov


More information about the ffmpeg-devel mailing list