1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2026-06-19 19:03:00 +02:00

swscale/aarch64/ops: convert single-component packed read/write to planar

b488ee55 relaxed the check and stopped taking the number of components
into account. This led to the generation of duplicate read/write
functions for single component packed/planar.

ops_entries.c wasn't regenerated to take this into account; instead
some conversions were no longer being supported for the neon backend.
This commit is contained in:
Ramiro Polla
2026-06-16 13:49:03 +02:00
parent ea9c361a7b
commit d0313ea2c2
+4 -4
View File
@@ -88,9 +88,9 @@ static int convert_to_aarch64_impl(SwsContext *ctx, const SwsOpList *ops, int n,
out->op = AARCH64_SWS_OP_READ_NIBBLE;
else if (op->rw.frac == 3)
out->op = AARCH64_SWS_OP_READ_BIT;
else if (op->rw.mode == SWS_RW_PACKED)
else if (op->rw.mode == SWS_RW_PACKED && op->rw.elems > 1)
out->op = AARCH64_SWS_OP_READ_PACKED;
else if (op->rw.mode == SWS_RW_PLANAR)
else if (op->rw.mode == SWS_RW_PACKED || op->rw.mode == SWS_RW_PLANAR)
out->op = AARCH64_SWS_OP_READ_PLANAR;
else
return AVERROR(ENOTSUP);
@@ -106,9 +106,9 @@ static int convert_to_aarch64_impl(SwsContext *ctx, const SwsOpList *ops, int n,
out->op = AARCH64_SWS_OP_WRITE_NIBBLE;
else if (op->rw.frac == 3)
out->op = AARCH64_SWS_OP_WRITE_BIT;
else if (op->rw.mode == SWS_RW_PACKED)
else if (op->rw.mode == SWS_RW_PACKED && op->rw.elems > 1)
out->op = AARCH64_SWS_OP_WRITE_PACKED;
else if (op->rw.mode == SWS_RW_PLANAR)
else if (op->rw.mode == SWS_RW_PACKED || op->rw.mode == SWS_RW_PLANAR)
out->op = AARCH64_SWS_OP_WRITE_PLANAR;
else
return AVERROR(ENOTSUP);