avcodec/r210dec: fix r10x decoding
authorPaul B Mahol <onemda@gmail.com>
Mon, 3 Dec 2018 22:34:05 +0000 (23:34 +0100)
committerPaul B Mahol <onemda@gmail.com>
Mon, 3 Dec 2018 22:34:05 +0000 (23:34 +0100)
libavcodec/r210dec.c

index 22b95e9..407684c 100644 (file)
@@ -73,10 +73,14 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame,
             } else {
                 pixel = av_be2ne32(*src++);
             }
-            if (avctx->codec_id == AV_CODEC_ID_R210 || r10) {
+            if (avctx->codec_id == AV_CODEC_ID_R210) {
                 b =  pixel & 0x3ff;
                 g = (pixel >> 10) & 0x3ff;
                 r = (pixel >> 20) & 0x3ff;
+            } else if (r10) {
+                r =  pixel & 0x3ff;
+                g = (pixel >> 10) & 0x3ff;
+                b = (pixel >> 20) & 0x3ff;
             } else {
                 b = (pixel >>  2) & 0x3ff;
                 g = (pixel >> 12) & 0x3ff;