[FFmpeg-devel] [PATCH 7/8] ffmdec: don't return AVERROR(EAGAIN) from ffm_is_avail_data

Andreas Cadhalpun andreas.cadhalpun at googlemail.com
Mon Mar 9 12:33:38 CET 2015


On 09.03.2015 03:56, Michael Niedermayer wrote:
> On Mon, Mar 09, 2015 at 12:05:01AM +0100, Andreas Cadhalpun wrote:
>> Hi,
>>
>> if AVERROR(EAGAIN) is returned from ffm_is_avail_data it always
>> causes an infinite EAGAIN loop.
>
> it should only loop until more data is written into the ffm file
> (this of course is not guranteed to ever happen)

How should this work?

If ffm_is_avail_data returns AVERROR(EAGAIN), this error is immediately 
forwarded to avformat_find_stream_info, which just tries reading a frame 
again, leading to ffm_read_packet, which first calls ffm_is_avail_data.
Nothing changed the FFMContext, even if more data was written into the 
ffm file, so it returns AVERROR(EAGAIN) again.

Best regards,
Andreas


More information about the ffmpeg-devel mailing list