avcodec/v4l2_context: return EAGAIN to signal full buffers

Return proper error when frame buffers are full. This path is triggered
on the DragonBoard 410c since the encoding API change in commit
827d6fe73d.

Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
Reviewed-by: Mark Thompson <sw@jkqxz.net>
pull/346/head
Andriy Gelman 4 years ago
parent d7af6d1469
commit 5df9724e42
  1. 2
      libavcodec/v4l2_context.c

@ -599,7 +599,7 @@ int ff_v4l2_context_enqueue_frame(V4L2Context* ctx, const AVFrame* frame)
avbuf = v4l2_getfree_v4l2buf(ctx); avbuf = v4l2_getfree_v4l2buf(ctx);
if (!avbuf) if (!avbuf)
return AVERROR(ENOMEM); return AVERROR(EAGAIN);
ret = ff_v4l2_buffer_avframe_to_buf(frame, avbuf); ret = ff_v4l2_buffer_avframe_to_buf(frame, avbuf);
if (ret) if (ret)

Loading…
Cancel
Save