Signed-off-by: James Almer <[email protected]>
---
libavcodec/libdav1d.c | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/libavcodec/libdav1d.c b/libavcodec/libdav1d.c
index ad4611fb9..3501c15e2 100644
--- a/libavcodec/libdav1d.c
+++ b/libavcodec/libdav1d.c
@@ -142,12 +142,18 @@ static int libdav1d_receive_frame(AVCodecContext *c,
AVFrame *frame)
}
av_fifo_generic_write(dav1d->cache, &pkt, sizeof(pkt),
libdav1d_fifo_write);
- } else {
- data = NULL;
}
}
- res = dav1d_decode(dav1d->c, data, &p);
+ res = dav1d_send_data(dav1d->c, data);
+ if (res < 0) {
+ if (res == -EINVAL)
+ res = AVERROR_INVALIDDATA;
+ if (res != -EAGAIN)
+ return res;
+ }
+
+ res = dav1d_get_picture(dav1d->c, &p);
if (res < 0) {
if (res == -EINVAL)
res = AVERROR_INVALIDDATA;
--
2.19.1
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel