diff options
author | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2021-09-13 18:04:57 +0200 |
---|---|---|
committer | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2021-09-19 04:47:17 +0200 |
commit | e424d1f557271d506336345b9b3da0a20ef3eaf3 (patch) | |
tree | a06c6eb9f5cd79f4ac25a9ac7527d2884b17d543 | |
parent | a85d2de45f37aace0cbdb754881effa0c9689784 (diff) | |
download | ffmpeg-e424d1f557271d506336345b9b3da0a20ef3eaf3.tar.gz |
avfilter/vf_spp: Add dummy element to array to avoid shift
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-rw-r--r-- | libavfilter/vf_spp.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/libavfilter/vf_spp.c b/libavfilter/vf_spp.c index 6c15dbaf66..b9b5f7bc78 100644 --- a/libavfilter/vf_spp.c +++ b/libavfilter/vf_spp.c @@ -93,7 +93,8 @@ DECLARE_ALIGNED(8, static const uint8_t, ldither)[8][8] = { { 42, 26, 38, 22, 41, 25, 37, 21 }, }; -static const uint8_t offset[127][2] = { +static const uint8_t offset[128][2] = { + {0,0}, // unused {0,0}, {0,0}, {4,4}, // quality = 1 {0,0}, {2,2}, {6,4}, {4,6}, // quality = 2 @@ -283,8 +284,8 @@ static void filter(SPPContext *p, uint8_t *dst, uint8_t *src, qp = FFMAX(1, ff_norm_qscale(qp, p->qscale_type)); } for (i = 0; i < count; i++) { - const int x1 = x + offset[i + count - 1][0]; - const int y1 = y + offset[i + count - 1][1]; + const int x1 = x + offset[i + count][0]; + const int y1 = y + offset[i + count][1]; const int index = x1 + y1*linesize; p->dct->get_pixels_unaligned(block, p->src + sample_bytes*index, sample_bytes*linesize); p->dct->fdct(block); |