ffmpeg | branch: master | Michael Niedermayer <mich...@niedermayer.cc> | Fri 
Mar 14 22:33:46 2025 +0100| [d7fa6a388b894637c5d4d2826aa7cac0fc7f7c4b] | 
committer: Michael Niedermayer

avcodec/ffv1: fix remap without chroma planes

Sponsored-by: Sovereign Tech Fund
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

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

 libavcodec/ffv1dec.c | 3 +--
 libavcodec/ffv1enc.c | 3 +--
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/libavcodec/ffv1dec.c b/libavcodec/ffv1dec.c
index d01c153cd6..d117b0fd44 100644
--- a/libavcodec/ffv1dec.c
+++ b/libavcodec/ffv1dec.c
@@ -254,10 +254,9 @@ static void slice_set_damaged(FFV1Context *f, 
FFV1SliceContext *sc)
 
 static int decode_remap(FFV1Context *f, FFV1SliceContext *sc)
 {
-    int transparency = f->transparency;
     int flip = sc->remap == 2 ? 0x7FFF : 0;
 
-    for (int p= 0; p<3 + transparency; p++) {
+    for (int p= 0; p < 1 + 2*f->chroma_planes + f->transparency; p++) {
         int j = 0;
         int lu = 0;
         uint8_t state[2][32];
diff --git a/libavcodec/ffv1enc.c b/libavcodec/ffv1enc.c
index 3db4a18a09..c7cf75ef4f 100644
--- a/libavcodec/ffv1enc.c
+++ b/libavcodec/ffv1enc.c
@@ -1150,10 +1150,9 @@ static void choose_rct_params(const FFV1Context *f, 
FFV1SliceContext *sc,
 
 static void encode_remap(FFV1Context *f, FFV1SliceContext *sc)
 {
-    int transparency = f->transparency;
     int flip = sc->remap == 2 ? 0x7FFF : 0;
 
-    for (int p= 0; p<3 + transparency; p++) {
+    for (int p= 0; p < 1 + 2*f->chroma_planes + f->transparency; p++) {
         int j = 0;
         int lu = 0;
         uint8_t state[2][32];

_______________________________________________
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to