On Wed, 27 Mar 2019 at 09:42, Tomas Härdin <tjop...@acc.umu.se> wrote:

> tis 2019-03-26 klockan 22:13 +0000 skrev Matthew Fearnley:
> > This brings the channel order in line with that used in 32-bit mode
> (BGR0).
> >
> > 24-bit decoding is disabled by default (#ifdef ZMBV_ENABLE_24BPP), and no
> > prior encoders or sample videos are known to exist for this bit depth, so
> > I consider this change in implementation is unlikely to affect anyone.
> >
> > The decision has been made in agreement with the DOSBox Development Team
> > > (dosbox.c...@gmail.com), specifically with harekiet, who wrote the
> original
> > codec.
>
> I can confirm this
>
> > Additional minor fix: use PTRDIFF_SPECIFIER for `src - c->decomp_buf`.
> > Other bit depths saw this change in ced0d6c14d, but this instance was
> > missed, presumably because of the #ifdef block.
>
> I think it'd be best to split this off into its own patch, even if it's
> trivial
>
Yeah, I think you're right.
I'm attaching two patches here, if that works..

>
> /Tomas
> _______________________________________________
> 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".
From f78dc4276dd0517332bafdf99c7ce522aeb7cac2 Mon Sep 17 00:00:00 2001
From: Matthew Fearnley <matthew.w.fearn...@gmail.com>
Date: Tue, 26 Mar 2019 19:44:23 +0000
Subject: [PATCH 1/3] libavcodec/zmbv: change 24-bit decoder channel order,
 from RGB24 to BGR24

This brings the channel order in line with that used in 32-bit mode (BGR0).

24-bit decoding is disabled by default (#ifdef ZMBV_ENABLE_24BPP), and no
prior encoders or sample videos are known to exist for this bit depth, so
I consider this change in implementation is unlikely to affect anyone.

The decision has been made in agreement with the DOSBox Development Team
(dosbox.c...@gmail.com), specifically with harekiet, who wrote the original
codec.
---
 libavcodec/zmbv.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/zmbv.c b/libavcodec/zmbv.c
index e07009d0fb..71ec2cd424 100644
--- a/libavcodec/zmbv.c
+++ b/libavcodec/zmbv.c
@@ -303,7 +303,7 @@ static int zmbv_decode_xor_24(ZmbvContext *c)
         prev += stride * c->bh;
     }
     if (src - c->decomp_buf != c->decomp_len)
-        av_log(c->avctx, AV_LOG_ERROR, "Used %i of %i bytes\n",
+        av_log(c->avctx, AV_LOG_ERROR, "Used %"PTRDIFF_SPECIFIER" of %i bytes\n",
                src-c->decomp_buf, c->decomp_len);
     return 0;
 }
-- 
2.17.1

From 905eb8b403281f180148bef50804af740d411b54 Mon Sep 17 00:00:00 2001
From: Matthew Fearnley <matthew.w.fearn...@gmail.com>
Date: Fri, 29 Mar 2019 22:03:03 +0000
Subject: [PATCH 2/3] libavcodec/zmbv: use PTRDIFF_SPECIFIER for `src -
 c->decomp_buf`.

Other bit depths saw this change in ced0d6c14d, but this instance was
presumably missed because of the #ifdef block.
---
 libavcodec/zmbv.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/zmbv.c b/libavcodec/zmbv.c
index 71ec2cd424..898b62d065 100644
--- a/libavcodec/zmbv.c
+++ b/libavcodec/zmbv.c
@@ -473,7 +473,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame, AVPac
             c->bpp = 24;
             decode_intra = zmbv_decode_intra;
             c->decode_xor = zmbv_decode_xor_24;
-            avctx->pix_fmt = AV_PIX_FMT_RGB24;
+            avctx->pix_fmt = AV_PIX_FMT_BGR24;
             c->stride = c->width * 3;
             break;
 #endif //ZMBV_ENABLE_24BPP
-- 
2.17.1

_______________________________________________
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