]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/utils.c
Merge commit 'f65285aba0df7d46298abe0c945dfee05cbc6028'
[ffmpeg] / libavcodec / utils.c
index 3c8a9cc13e0561468fee264b989479588f339d00..4d1b63222f30a0e1bd951ff5bcdd8d930cd2caed 100644 (file)
@@ -1593,6 +1593,17 @@ FF_ENABLE_DEPRECATION_WARNINGS
                 ret = AVERROR(EINVAL);
                 goto free_and_end;
             }
+            if (avctx->sw_pix_fmt != AV_PIX_FMT_NONE &&
+                avctx->sw_pix_fmt != frames_ctx->sw_format) {
+                av_log(avctx, AV_LOG_ERROR,
+                       "Mismatching AVCodecContext.sw_pix_fmt (%s) "
+                       "and AVHWFramesContext.sw_format (%s)\n",
+                       av_get_pix_fmt_name(avctx->sw_pix_fmt),
+                       av_get_pix_fmt_name(frames_ctx->sw_format));
+                ret = AVERROR(EINVAL);
+                goto free_and_end;
+            }
+            avctx->sw_pix_fmt = frames_ctx->sw_format;
         }
     }