[FFmpeg-cvslog] lavc/jpeg2000dec: Allow to force a compatible pix_fmt.

Carl Eugen Hoyos git at videolan.org
Wed Apr 15 21:01:24 EEST 2020


ffmpeg | branch: master | Carl Eugen Hoyos <ceffmpeg at gmail.com> | Mon Apr 13 16:25:02 2020 +0200| [cbe3f1b1fbc0e0bd2c265f1d9b78e29ac185f17b] | committer: Carl Eugen Hoyos

lavc/jpeg2000dec: Allow to force a compatible pix_fmt.

This copies the behaviour of the libopenjpeg decoder.
Fixes ticket #5919.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=cbe3f1b1fbc0e0bd2c265f1d9b78e29ac185f17b
---

 libavcodec/jpeg2000dec.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavcodec/jpeg2000dec.c b/libavcodec/jpeg2000dec.c
index 7196cba6b4..440b856a3a 100644
--- a/libavcodec/jpeg2000dec.c
+++ b/libavcodec/jpeg2000dec.c
@@ -402,6 +402,10 @@ static int get_siz(Jpeg2000DecoderContext *s)
             break;
         }
     }
+    if (   s->avctx->pix_fmt != AV_PIX_FMT_NONE
+        && !pix_fmt_match(s->avctx->pix_fmt, ncomponents, s->precision, log2_chroma_wh, s->pal8))
+            s->avctx->pix_fmt = AV_PIX_FMT_NONE;
+    if (s->avctx->pix_fmt == AV_PIX_FMT_NONE)
     for (i = 0; i < possible_fmts_nb; ++i) {
         if (pix_fmt_match(possible_fmts[i], ncomponents, s->precision, log2_chroma_wh, s->pal8)) {
             s->avctx->pix_fmt = possible_fmts[i];



More information about the ffmpeg-cvslog mailing list