summaryrefslogtreecommitdiff
path: root/libavfilter
diff options
context:
space:
mode:
authorPaul B Mahol <onemda@gmail.com>2023-05-09 00:40:32 +0200
committerPaul B Mahol <onemda@gmail.com>2023-05-09 00:42:18 +0200
commit90096dd04216b1bb398525631206172f07e382ca (patch)
treee31d9d68185fc41d2c7e9b4a5cdfe248620ece91 /libavfilter
parent21a0b6bca80192a641b09774c603bd1acbda316e (diff)
downloadffmpeg-90096dd04216b1bb398525631206172f07e382ca.tar.gz
avfilter/vf_feedback: fix artifacts with subsampled chroma
Diffstat (limited to 'libavfilter')
-rw-r--r--libavfilter/vf_feedback.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/libavfilter/vf_feedback.c b/libavfilter/vf_feedback.c
index 15cbf95c54..dc832c4671 100644
--- a/libavfilter/vf_feedback.c
+++ b/libavfilter/vf_feedback.c
@@ -163,11 +163,11 @@ static int activate(AVFilterContext *ctx)
src->data[0] + y * src->linesize[0], src->width * s->max_step[0]);
}
- for (int i = 1; i < 3; i ++) {
+ for (int i = 1; i < 3; i++) {
if (dst->data[i]) {
for (int y = 0; y < src->height; y++) {
- memmove(dst->data[i] + ((s->y + y) >> s->vsub) * dst->linesize[i] + ((s->x * s->max_step[i]) >> s->hsub),
- src->data[i] + (y >> s->vsub) * src->linesize[i], (src->width * s->max_step[i]) >> s->hsub);
+ memmove(dst->data[i] + ((s->y + y) >> s->vsub) * dst->linesize[i] + (s->x >> s->hsub) * s->max_step[i],
+ src->data[i] + (y >> s->vsub) * src->linesize[i], (src->width >> s->hsub) * s->max_step[i]);
}
}
}
@@ -213,7 +213,7 @@ static int activate(AVFilterContext *ctx)
for (int i = 1; i < 3; i ++) {
if (frame->data[i]) {
frame->data[i] += (s->y >> s->vsub) * frame->linesize[i];
- frame->data[i] += (s->x * s->max_step[i]) >> s->hsub;
+ frame->data[i] += (s->x >> s->hsub) * s->max_step[i];
}
}