Re: [libav-devel] [PATCH] libdav1d: fix build after a recent API break
On 15/11/2018 02:04, James Almer wrote: Signed-off-by: James Almer --- 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; dav1d always negate by itself the return values so we are set? if yes, push anytime. lu ___ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel
[libav-devel] [PATCH] libdav1d: fix build after a recent API break
Signed-off-by: James Almer --- 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 libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel