Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
* [FFmpeg-devel] [PATCH 1/5] avcodec/ffv1: fix remap without chroma planes
@ 2025-03-15  0:00 Michael Niedermayer
  2025-03-15  0:00 ` [FFmpeg-devel] [PATCH 2/5] avcodec/ffv1: Add YAF16 support Michael Niedermayer
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Michael Niedermayer @ 2025-03-15  0:00 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

Sponsored-by: Sovereign Tech Fund
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
---
 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 e534583d8d6..d702e36625a 100644
--- a/libavcodec/ffv1dec.c
+++ b/libavcodec/ffv1dec.c
@@ -252,10 +252,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 5d3daef15ec..b8ccda469ec 100644
--- a/libavcodec/ffv1enc.c
+++ b/libavcodec/ffv1enc.c
@@ -1159,10 +1159,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];
-- 
2.48.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-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [FFmpeg-devel] [PATCH 2/5] avcodec/ffv1: Add YAF16 support
  2025-03-15  0:00 [FFmpeg-devel] [PATCH 1/5] avcodec/ffv1: fix remap without chroma planes Michael Niedermayer
@ 2025-03-15  0:00 ` Michael Niedermayer
  2025-03-15  0:00 ` [FFmpeg-devel] [PATCH 3/5] avcodec/ffv1: Add GRAYF16 support Michael Niedermayer
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Michael Niedermayer @ 2025-03-15  0:00 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

Sponsored-by: Sovereign Tech Fund
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
---
 libavcodec/ffv1_parse.c |  6 ++++--
 libavcodec/ffv1dec.c    |  4 ++--
 libavcodec/ffv1enc.c    | 33 +++++++++++++++++----------------
 3 files changed, 23 insertions(+), 20 deletions(-)

diff --git a/libavcodec/ffv1_parse.c b/libavcodec/ffv1_parse.c
index a85b563e98b..a49f1eb6cef 100644
--- a/libavcodec/ffv1_parse.c
+++ b/libavcodec/ffv1_parse.c
@@ -294,9 +294,11 @@ int ff_ffv1_parse_header(FFV1Context *f, RangeCoder *c, uint8_t *state)
             } else
                 return AVERROR(ENOSYS);
         } else if (f->transparency && !f->chroma_planes) {
-            if (f->avctx->bits_per_raw_sample <= 8)
+            if (f->avctx->bits_per_raw_sample <= 8 && !f->flt) {
                 f->pix_fmt = AV_PIX_FMT_YA8;
-            else
+            } else if (f->avctx->bits_per_raw_sample == 16 && f->flt) {
+                f->pix_fmt = AV_PIX_FMT_YAF16;
+            } else
                 return AVERROR(ENOSYS);
         } else if (f->avctx->bits_per_raw_sample<=8 && !f->transparency) {
             switch(16 * f->chroma_h_shift + f->chroma_v_shift) {
diff --git a/libavcodec/ffv1dec.c b/libavcodec/ffv1dec.c
index d702e36625a..e24c6b8d3a2 100644
--- a/libavcodec/ffv1dec.c
+++ b/libavcodec/ffv1dec.c
@@ -362,8 +362,8 @@ static int decode_slice(AVCodecContext *c, void *arg)
         if (f->transparency)
             decode_plane(f, sc, &gb, p->data[3] + ps*x + y*p->linesize[3], width, height, p->linesize[3], (f->version >= 4 && !f->chroma_planes) ? 1 : 2, 2, 1, ac);
     } else if (f->colorspace == 0) {
-         decode_plane(f, sc, &gb, p->data[0] + ps*x + y*p->linesize[0]    , width, height, p->linesize[0], 0, 0, 2, ac);
-         decode_plane(f, sc, &gb, p->data[0] + ps*x + y*p->linesize[0] + 1, width, height, p->linesize[0], 1, 1, 2, ac);
+         decode_plane(f, sc, &gb, p->data[0] + ps*x + y*p->linesize[0]          , width, height, p->linesize[0], 0, 0, 2, ac);
+         decode_plane(f, sc, &gb, p->data[0] + ps*x + y*p->linesize[0] + (ps>>1), width, height, p->linesize[0], 1, 1, 2, ac);
     } else if (f->use32bit) {
         uint8_t *planes[4] = { p->data[0] + ps * x + y * p->linesize[0],
                                p->data[1] + ps * x + y * p->linesize[1],
diff --git a/libavcodec/ffv1enc.c b/libavcodec/ffv1enc.c
index b8ccda469ec..9fb98c37584 100644
--- a/libavcodec/ffv1enc.c
+++ b/libavcodec/ffv1enc.c
@@ -301,11 +301,11 @@ static int encode_plane(FFV1Context *f, FFV1SliceContext *sc,
         } else {
             if (f->packed_at_lsb) {
                 for (x = 0; x < w; x++) {
-                    sample[0][x] = ((uint16_t*)(src + stride*y))[x];
+                    sample[0][x] = ((uint16_t*)(src + stride*y))[x * pixel_stride];
                 }
             } else {
                 for (x = 0; x < w; x++) {
-                    sample[0][x] = ((uint16_t*)(src + stride*y))[x] >> (16 - f->bits_per_raw_sample);
+                    sample[0][x] = ((uint16_t*)(src + stride*y))[x * pixel_stride] >> (16 - f->bits_per_raw_sample);
                 }
             }
             if (sc->remap)
@@ -334,10 +334,10 @@ static void load_plane(FFV1Context *f, FFV1SliceContext *sc,
         } else {
             if (f->packed_at_lsb) {
                 for (x = 0; x < w; x++)
-                    sc->fltmap[remap_index][ ((uint16_t*)(src + stride*y))[x] ] = 1;
+                    sc->fltmap[remap_index][ ((uint16_t*)(src + stride*y))[x * pixel_stride] ] = 1;
             } else {
                 for (x = 0; x < w; x++)
-                    sc->fltmap[remap_index][ ((uint16_t*)(src + stride*y))[x] >> (16 - f->bits_per_raw_sample) ] = 1;
+                    sc->fltmap[remap_index][ ((uint16_t*)(src + stride*y))[x * pixel_stride] >> (16 - f->bits_per_raw_sample) ] = 1;
             }
         }
     }
@@ -842,6 +842,7 @@ av_cold int ff_ffv1_encode_setup_plane_info(AVCodecContext *avctx,
     case AV_PIX_FMT_YUVA444P16:
     case AV_PIX_FMT_YUVA422P16:
     case AV_PIX_FMT_YUVA420P16:
+    case AV_PIX_FMT_YAF16:
         if (!avctx->bits_per_raw_sample && !s->bits_per_raw_sample) {
             s->bits_per_raw_sample = 16;
         } else if (!s->bits_per_raw_sample) {
@@ -926,17 +927,16 @@ av_cold int ff_ffv1_encode_setup_plane_info(AVCodecContext *avctx,
         if (s->bits_per_raw_sample >= 16) {
             s->use32bit = 1;
         }
-        s->flt     = !!(desc->flags & AV_PIX_FMT_FLAG_FLOAT);
         s->version = FFMAX(s->version, 1);
-
-        if (s->flt)
-            s->version = FFMAX(s->version, 4);
         break;
     default:
         av_log(avctx, AV_LOG_ERROR, "format %s not supported\n",
                av_get_pix_fmt_name(pix_fmt));
         return AVERROR(ENOSYS);
     }
+    s->flt = !!(desc->flags & AV_PIX_FMT_FLAG_FLOAT);
+    if (s->flt)
+        s->version = FFMAX(s->version, 4);
     av_assert0(s->bits_per_raw_sample >= 8);
 
     if (s->remap_mode < 0)
@@ -1225,7 +1225,7 @@ retry:
     }
 
     if (sc->remap) {
-        if (f->colorspace == 0 && c->pix_fmt != AV_PIX_FMT_YA8) {
+        if (f->colorspace == 0 && c->pix_fmt != AV_PIX_FMT_YA8 && c->pix_fmt != AV_PIX_FMT_YAF16) {
             const int cx            = x >> f->chroma_h_shift;
             const int cy            = y >> f->chroma_v_shift;
 
@@ -1240,9 +1240,9 @@ retry:
             }
             if (f->transparency)
                 load_plane(f, sc, p->data[3] + ps*x + y*p->linesize[3], width, height, p->linesize[3], 3, 1);
-        } else if (c->pix_fmt == AV_PIX_FMT_YA8) {
-            load_plane(f, sc, p->data[0] +     ps*x + y*p->linesize[0], width, height, p->linesize[0], 0, 2);
-            load_plane(f, sc, p->data[0] + 1 + ps*x + y*p->linesize[0], width, height, p->linesize[0], 1, 2);
+        } else if (c->pix_fmt == AV_PIX_FMT_YA8 || c->pix_fmt == AV_PIX_FMT_YAF16) {
+            load_plane(f, sc, p->data[0] +           ps*x + y*p->linesize[0], width, height, p->linesize[0], 0, 2);
+            load_plane(f, sc, p->data[0] + (ps>>1) + ps*x + y*p->linesize[0], width, height, p->linesize[0], 1, 2);
         } else if (f->use32bit) {
             load_rgb_frame32(f, sc, planes, width, height, p->linesize);
         } else
@@ -1265,7 +1265,7 @@ retry:
                       lsb_size_bytes);
     }
 
-    if (f->colorspace == 0 && c->pix_fmt != AV_PIX_FMT_YA8) {
+    if (f->colorspace == 0 && c->pix_fmt != AV_PIX_FMT_YA8 && c->pix_fmt != AV_PIX_FMT_YAF16) {
         const int cx            = x >> f->chroma_h_shift;
         const int cy            = y >> f->chroma_v_shift;
 
@@ -1277,9 +1277,9 @@ retry:
         }
         if (f->transparency)
             ret |= encode_plane(f, sc, p->data[3] + ps*x + y*p->linesize[3], width, height, p->linesize[3], 2, 3, 1, ac);
-    } else if (c->pix_fmt == AV_PIX_FMT_YA8) {
-        ret  = encode_plane(f, sc, p->data[0] +     ps*x + y*p->linesize[0], width, height, p->linesize[0], 0, 0, 2, ac);
-        ret |= encode_plane(f, sc, p->data[0] + 1 + ps*x + y*p->linesize[0], width, height, p->linesize[0], 1, 1, 2, ac);
+    } else if (c->pix_fmt == AV_PIX_FMT_YA8 || c->pix_fmt == AV_PIX_FMT_YAF16) {
+        ret  = encode_plane(f, sc, p->data[0] +           ps*x + y*p->linesize[0], width, height, p->linesize[0], 0, 0, 2, ac);
+        ret |= encode_plane(f, sc, p->data[0] + (ps>>1) + ps*x + y*p->linesize[0], width, height, p->linesize[0], 1, 1, 2, ac);
     } else if (f->use32bit) {
         ret = encode_rgb_frame32(f, sc, planes, width, height, p->linesize, ac);
     } else {
@@ -1564,6 +1564,7 @@ const FFCodec ff_ffv1_encoder = {
         AV_PIX_FMT_GRAY9,
         AV_PIX_FMT_YUV420P14, AV_PIX_FMT_YUV422P14, AV_PIX_FMT_YUV444P14,
         AV_PIX_FMT_YUV440P10, AV_PIX_FMT_YUV440P12,
+        AV_PIX_FMT_YAF16,
         AV_PIX_FMT_GBRPF16),
     .color_ranges   = AVCOL_RANGE_MPEG,
     .p.priv_class   = &ffv1_class,
-- 
2.48.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-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [FFmpeg-devel] [PATCH 3/5] avcodec/ffv1: Add GRAYF16 support
  2025-03-15  0:00 [FFmpeg-devel] [PATCH 1/5] avcodec/ffv1: fix remap without chroma planes Michael Niedermayer
  2025-03-15  0:00 ` [FFmpeg-devel] [PATCH 2/5] avcodec/ffv1: Add YAF16 support Michael Niedermayer
@ 2025-03-15  0:00 ` Michael Niedermayer
  2025-03-15  0:00 ` [FFmpeg-devel] [PATCH 4/5] avcodec/ffv1enc: Fix signed type handling with remap Michael Niedermayer
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Michael Niedermayer @ 2025-03-15  0:00 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

Sponsored-by: Sovereign Tech Fund
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
---
 libavcodec/ffv1_parse.c |  5 ++++-
 libavcodec/ffv1dec.c    | 27 +++++++++++++++++++--------
 libavcodec/ffv1enc.c    |  2 ++
 3 files changed, 25 insertions(+), 9 deletions(-)

diff --git a/libavcodec/ffv1_parse.c b/libavcodec/ffv1_parse.c
index a49f1eb6cef..9745f9de694 100644
--- a/libavcodec/ffv1_parse.c
+++ b/libavcodec/ffv1_parse.c
@@ -288,7 +288,10 @@ int ff_ffv1_parse_header(FFV1Context *f, RangeCoder *c, uint8_t *state)
                 f->pix_fmt = AV_PIX_FMT_GRAY14;
             } else if (f->avctx->bits_per_raw_sample == 16) {
                 f->packed_at_lsb = 1;
-                f->pix_fmt = AV_PIX_FMT_GRAY16;
+                if (f->flt) {
+                    f->pix_fmt = AV_PIX_FMT_GRAYF16;
+                } else
+                    f->pix_fmt = AV_PIX_FMT_GRAY16;
             } else if (f->avctx->bits_per_raw_sample < 16) {
                 f->pix_fmt = AV_PIX_FMT_GRAY16;
             } else
diff --git a/libavcodec/ffv1dec.c b/libavcodec/ffv1dec.c
index e24c6b8d3a2..968c386f897 100644
--- a/libavcodec/ffv1dec.c
+++ b/libavcodec/ffv1dec.c
@@ -125,16 +125,27 @@ static int decode_plane(FFV1Context *f, FFV1SliceContext *sc,
             int ret = decode_line(f, sc, gb, w, sample, plane_index, f->avctx->bits_per_raw_sample, ac);
             if (ret < 0)
                 return ret;
-            if (sc->remap)
-                for (x = 0; x < w; x++)
-                    sample[1][x] = sc->fltmap[remap_index][sample[1][x]];
-            if (f->packed_at_lsb) {
-                for (x = 0; x < w; x++) {
-                    ((uint16_t*)(src + stride*y))[x*pixel_stride] = sample[1][x];
+
+            if (sc->remap) {
+                if (f->packed_at_lsb || f->avctx->bits_per_raw_sample == 16) {
+                    for (x = 0; x < w; x++) {
+                        ((uint16_t*)(src + stride*y))[x*pixel_stride] = sc->fltmap[remap_index][sample[1][x] & 0xFFFF];
+                    }
+                } else {
+                    for (x = 0; x < w; x++) {
+                        int v = sc->fltmap[remap_index][sample[1][x] & 0xFFFF];
+                        ((uint16_t*)(src + stride*y))[x*pixel_stride] = v << (16 - f->avctx->bits_per_raw_sample) | v >> (2 * f->avctx->bits_per_raw_sample - 16);
+                    }
                 }
             } else {
-                for (x = 0; x < w; x++) {
-                    ((uint16_t*)(src + stride*y))[x*pixel_stride] = sample[1][x] << (16 - f->avctx->bits_per_raw_sample) | ((uint16_t **)sample)[1][x] >> (2 * f->avctx->bits_per_raw_sample - 16);
+                if (f->packed_at_lsb || f->avctx->bits_per_raw_sample == 16) {
+                    for (x = 0; x < w; x++) {
+                        ((uint16_t*)(src + stride*y))[x*pixel_stride] = sample[1][x];
+                    }
+                } else {
+                    for (x = 0; x < w; x++) {
+                        ((uint16_t*)(src + stride*y))[x*pixel_stride] = sample[1][x] << (16 - f->avctx->bits_per_raw_sample) | ((uint16_t **)sample)[1][x] >> (2 * f->avctx->bits_per_raw_sample - 16);
+                    }
                 }
             }
         }
diff --git a/libavcodec/ffv1enc.c b/libavcodec/ffv1enc.c
index 9fb98c37584..3879d1b19a1 100644
--- a/libavcodec/ffv1enc.c
+++ b/libavcodec/ffv1enc.c
@@ -842,6 +842,7 @@ av_cold int ff_ffv1_encode_setup_plane_info(AVCodecContext *avctx,
     case AV_PIX_FMT_YUVA444P16:
     case AV_PIX_FMT_YUVA422P16:
     case AV_PIX_FMT_YUVA420P16:
+    case AV_PIX_FMT_GRAYF16:
     case AV_PIX_FMT_YAF16:
         if (!avctx->bits_per_raw_sample && !s->bits_per_raw_sample) {
             s->bits_per_raw_sample = 16;
@@ -1565,6 +1566,7 @@ const FFCodec ff_ffv1_encoder = {
         AV_PIX_FMT_YUV420P14, AV_PIX_FMT_YUV422P14, AV_PIX_FMT_YUV444P14,
         AV_PIX_FMT_YUV440P10, AV_PIX_FMT_YUV440P12,
         AV_PIX_FMT_YAF16,
+        AV_PIX_FMT_GRAYF16,
         AV_PIX_FMT_GBRPF16),
     .color_ranges   = AVCOL_RANGE_MPEG,
     .p.priv_class   = &ffv1_class,
-- 
2.48.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-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [FFmpeg-devel] [PATCH 4/5] avcodec/ffv1enc: Fix signed type handling with remap
  2025-03-15  0:00 [FFmpeg-devel] [PATCH 1/5] avcodec/ffv1: fix remap without chroma planes Michael Niedermayer
  2025-03-15  0:00 ` [FFmpeg-devel] [PATCH 2/5] avcodec/ffv1: Add YAF16 support Michael Niedermayer
  2025-03-15  0:00 ` [FFmpeg-devel] [PATCH 3/5] avcodec/ffv1: Add GRAYF16 support Michael Niedermayer
@ 2025-03-15  0:00 ` Michael Niedermayer
  2025-03-15  0:00 ` [FFmpeg-devel] [PATCH 5/5] avcodec/ffv1dec: Fix a YUVA issue with remaping Michael Niedermayer
  2025-03-17 12:41 ` [FFmpeg-devel] [PATCH 1/5] avcodec/ffv1: fix remap without chroma planes Michael Niedermayer
  4 siblings, 0 replies; 6+ messages in thread
From: Michael Niedermayer @ 2025-03-15  0:00 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

Sponsored-by: Sovereign Tech Fund
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
---
 libavcodec/ffv1enc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/ffv1enc.c b/libavcodec/ffv1enc.c
index 3879d1b19a1..b3fb6560e5a 100644
--- a/libavcodec/ffv1enc.c
+++ b/libavcodec/ffv1enc.c
@@ -310,7 +310,7 @@ static int encode_plane(FFV1Context *f, FFV1SliceContext *sc,
             }
             if (sc->remap)
                 for (x = 0; x < w; x++)
-                    sample[0][x] = sc->fltmap[remap_index][ sample[0][x] ];
+                    sample[0][x] = sc->fltmap[remap_index][ (uint16_t)sample[0][x] ];
 
             if((ret = encode_line(f, sc, f->avctx, w, sample, plane_index, f->bits_per_raw_sample, ac, pass1)) < 0)
                 return ret;
-- 
2.48.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-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [FFmpeg-devel] [PATCH 5/5] avcodec/ffv1dec: Fix a YUVA issue with remaping
  2025-03-15  0:00 [FFmpeg-devel] [PATCH 1/5] avcodec/ffv1: fix remap without chroma planes Michael Niedermayer
                   ` (2 preceding siblings ...)
  2025-03-15  0:00 ` [FFmpeg-devel] [PATCH 4/5] avcodec/ffv1enc: Fix signed type handling with remap Michael Niedermayer
@ 2025-03-15  0:00 ` Michael Niedermayer
  2025-03-17 12:41 ` [FFmpeg-devel] [PATCH 1/5] avcodec/ffv1: fix remap without chroma planes Michael Niedermayer
  4 siblings, 0 replies; 6+ messages in thread
From: Michael Niedermayer @ 2025-03-15  0:00 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

Untested

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
---
 libavcodec/ffv1dec.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/libavcodec/ffv1dec.c b/libavcodec/ffv1dec.c
index 968c386f897..6ec9e229f3b 100644
--- a/libavcodec/ffv1dec.c
+++ b/libavcodec/ffv1dec.c
@@ -371,7 +371,8 @@ static int decode_slice(AVCodecContext *c, void *arg)
             decode_plane(f, sc, &gb, p->data[2] + ps*cx+cy*p->linesize[2], chroma_width, chroma_height, p->linesize[2], 1, 2, 1, ac);
         }
         if (f->transparency)
-            decode_plane(f, sc, &gb, p->data[3] + ps*x + y*p->linesize[3], width, height, p->linesize[3], (f->version >= 4 && !f->chroma_planes) ? 1 : 2, 2, 1, ac);
+            decode_plane(f, sc, &gb, p->data[3] + ps*x + y*p->linesize[3], width, height, p->linesize[3], (f->version >= 4 && !f->chroma_planes) ? 1 : 2,
+                                                                                                          (f->version >= 4 && !f->chroma_planes) ? 1 : 3, 1, ac);
     } else if (f->colorspace == 0) {
          decode_plane(f, sc, &gb, p->data[0] + ps*x + y*p->linesize[0]          , width, height, p->linesize[0], 0, 0, 2, ac);
          decode_plane(f, sc, &gb, p->data[0] + ps*x + y*p->linesize[0] + (ps>>1), width, height, p->linesize[0], 1, 1, 2, ac);
-- 
2.48.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-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [FFmpeg-devel] [PATCH 1/5] avcodec/ffv1: fix remap without chroma planes
  2025-03-15  0:00 [FFmpeg-devel] [PATCH 1/5] avcodec/ffv1: fix remap without chroma planes Michael Niedermayer
                   ` (3 preceding siblings ...)
  2025-03-15  0:00 ` [FFmpeg-devel] [PATCH 5/5] avcodec/ffv1dec: Fix a YUVA issue with remaping Michael Niedermayer
@ 2025-03-17 12:41 ` Michael Niedermayer
  4 siblings, 0 replies; 6+ messages in thread
From: Michael Niedermayer @ 2025-03-17 12:41 UTC (permalink / raw)
  To: FFmpeg development discussions and patches


[-- Attachment #1.1: Type: text/plain, Size: 654 bytes --]

On Sat, Mar 15, 2025 at 01:00:03AM +0100, Michael Niedermayer wrote:
> Sponsored-by: Sovereign Tech Fund
> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
> ---
>  libavcodec/ffv1dec.c | 3 +--
>  libavcodec/ffv1enc.c | 3 +--
>  2 files changed, 2 insertions(+), 4 deletions(-)

will apply patchset with some minor fixes

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

When the tyrant has disposed of foreign enemies by conquest or treaty, and
there is nothing more to fear from them, then he is always stirring up
some war or other, in order that the people may require a leader. -- Plato

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

[-- Attachment #2: Type: text/plain, Size: 251 bytes --]

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

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

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2025-03-17 12:42 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-03-15  0:00 [FFmpeg-devel] [PATCH 1/5] avcodec/ffv1: fix remap without chroma planes Michael Niedermayer
2025-03-15  0:00 ` [FFmpeg-devel] [PATCH 2/5] avcodec/ffv1: Add YAF16 support Michael Niedermayer
2025-03-15  0:00 ` [FFmpeg-devel] [PATCH 3/5] avcodec/ffv1: Add GRAYF16 support Michael Niedermayer
2025-03-15  0:00 ` [FFmpeg-devel] [PATCH 4/5] avcodec/ffv1enc: Fix signed type handling with remap Michael Niedermayer
2025-03-15  0:00 ` [FFmpeg-devel] [PATCH 5/5] avcodec/ffv1dec: Fix a YUVA issue with remaping Michael Niedermayer
2025-03-17 12:41 ` [FFmpeg-devel] [PATCH 1/5] avcodec/ffv1: fix remap without chroma planes Michael Niedermayer

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git