aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2025-03-15 00:52:30 +0100
committerMichael Niedermayer <michael@niedermayer.cc>2025-03-17 15:26:12 +0100
commit2471b22023756df145d24f9dcb00a56eaa121859 (patch)
treef0d37e2ed8dd058df925f0cb98a7576b5747afd4
parent276854e1835e16900b3ac5db188130895126f4d8 (diff)
downloadffmpeg-2471b22023756df145d24f9dcb00a56eaa121859.tar.gz
avcodec/ffv1dec: Fix a YUVA issue with remaping
Untested Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavcodec/ffv1dec.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libavcodec/ffv1dec.c b/libavcodec/ffv1dec.c
index 085dc5abe8..aeaf6a797b 100644
--- a/libavcodec/ffv1dec.c
+++ b/libavcodec/ffv1dec.c
@@ -364,7 +364,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);