Should fix fate failures in avif tests when no external decoder is
available.

Signed-off-by: James Almer <jamr...@gmail.com>
---
 libavcodec/av1dec.c | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/libavcodec/av1dec.c b/libavcodec/av1dec.c
index da05a0f039..43b5aef687 100644
--- a/libavcodec/av1dec.c
+++ b/libavcodec/av1dec.c
@@ -1227,7 +1227,7 @@ static int av1_receive_frame_internal(AVCodecContext 
*avctx, AVFrame *frame)
                     av_log(avctx, AV_LOG_ERROR,
                            "Failed to get pixel format.\n");
                     s->raw_seq = NULL;
-                    goto end;
+                    continue;
                 }
             }
 
@@ -1248,6 +1248,16 @@ static int av1_receive_frame_internal(AVCodecContext 
*avctx, AVFrame *frame)
         case AV1_OBU_FRAME:
         case AV1_OBU_FRAME_HEADER:
             if (!s->raw_seq) {
+                // Attempt to set dimensions in all cases
+                if (s->pix_fmt == AV_PIX_FMT_NONE) {
+                    ret = update_context_with_frame_header(avctx, 
&obu->obu.frame.header);
+                    if (ret < 0) {
+                        av_log(avctx, AV_LOG_ERROR, "Failed to update context 
with frame header\n");
+                        return ret;
+                    }
+                    ret = AVERROR(ENOSYS);
+                    goto end;
+                }
                 av_log(avctx, AV_LOG_ERROR, "Missing Sequence Header.\n");
                 ret = AVERROR_INVALIDDATA;
                 goto end;
-- 
2.43.0

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to