diff mbox

[FFmpeg-devel] lavc/mjpegdec: Interpret three-component Adobe transform 0 also as RGB

Message ID CAB0OVGoaVTiXmOE_QHGUo1D=6LsBtVv=hA2x4jsC2S0aQ+OZHw@mail.gmail.com
State Accepted
Headers show

Commit Message

Carl Eugen Hoyos Dec. 17, 2018, 10:55 p.m. UTC
Hi!

Attached patch fixes ticket #7625 for me.

Please comment, Carl Eugen

Comments

Michael Niedermayer Dec. 18, 2018, 1:12 p.m. UTC | #1
On Mon, Dec 17, 2018 at 11:55:54PM +0100, Carl Eugen Hoyos wrote:
> Hi!
> 
> Attached patch fixes ticket #7625 for me.
> 
> Please comment, Carl Eugen

>  mjpegdec.c |    3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 3dbfffc6a3de8e5a08d60181a6047d9301a13016  0001-lavc-mjpegdec-Interpret-three-component-Adobe-transf.patch
> From be83e6c657b8d8e2a158747b58c4dbc6ba3cc516 Mon Sep 17 00:00:00 2001
> From: Carl Eugen Hoyos <ceffmpeg@gmail.com>
> Date: Mon, 17 Dec 2018 23:53:29 +0100
> Subject: [PATCH] lavc/mjpegdec: Interpret three-component Adobe transform 0
>  also as RGB.
> 
> Fixes ticket #7625.

LGTM

thx

[...]
Carl Eugen Hoyos Dec. 18, 2018, 5:01 p.m. UTC | #2
2018-12-18 14:12 GMT+01:00, Michael Niedermayer <michael@niedermayer.cc>:
> On Mon, Dec 17, 2018 at 11:55:54PM +0100, Carl Eugen Hoyos wrote:
>> Hi!
>>
>> Attached patch fixes ticket #7625 for me.
>>
>> Please comment, Carl Eugen
>
>>  mjpegdec.c |    3 ++-
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>> 3dbfffc6a3de8e5a08d60181a6047d9301a13016
>> 0001-lavc-mjpegdec-Interpret-three-component-Adobe-transf.patch
>> From be83e6c657b8d8e2a158747b58c4dbc6ba3cc516 Mon Sep 17 00:00:00 2001
>> From: Carl Eugen Hoyos <ceffmpeg@gmail.com>
>> Date: Mon, 17 Dec 2018 23:53:29 +0100
>> Subject: [PATCH] lavc/mjpegdec: Interpret three-component Adobe transform
>> 0
>>  also as RGB.
>>
>> Fixes ticket #7625.
>
> LGTM

Patch applied.

Thank you, Carl Eugen
diff mbox

Patch

From be83e6c657b8d8e2a158747b58c4dbc6ba3cc516 Mon Sep 17 00:00:00 2001
From: Carl Eugen Hoyos <ceffmpeg@gmail.com>
Date: Mon, 17 Dec 2018 23:53:29 +0100
Subject: [PATCH] lavc/mjpegdec: Interpret three-component Adobe transform 0
 also as RGB.

Fixes ticket #7625.
---
 libavcodec/mjpegdec.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/libavcodec/mjpegdec.c b/libavcodec/mjpegdec.c
index 2f16358..4cab660 100644
--- a/libavcodec/mjpegdec.c
+++ b/libavcodec/mjpegdec.c
@@ -488,7 +488,8 @@  int ff_mjpeg_decode_sof(MJpegDecodeContext *s)
         if (s->rgb)
             s->avctx->pix_fmt = s->bits <= 9 ? AV_PIX_FMT_BGR24 : AV_PIX_FMT_BGR48;
         else {
-            if (s->component_id[0] == 'Q' && s->component_id[1] == 'F' && s->component_id[2] == 'A') {
+            if (   s->adobe_transform == 0
+                || s->component_id[0] == 'R' - 1 && s->component_id[1] == 'G' - 1 && s->component_id[2] == 'B' - 1) {
                 s->avctx->pix_fmt = s->bits <= 8 ? AV_PIX_FMT_GBRP : AV_PIX_FMT_GBRP16;
             } else {
                 if (s->bits <= 8) s->avctx->pix_fmt = s->cs_itu601 ? AV_PIX_FMT_YUV444P : AV_PIX_FMT_YUVJ444P;
-- 
1.7.10.4