diff --git a/libavfilter/vf_weave.c b/libavfilter/vf_weave.c index 6d3dd7c299..037f5d1cf2 100644 --- a/libavfilter/vf_weave.c +++ b/libavfilter/vf_weave.c @@ -100,20 +100,20 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in) for (i = 0; i < s->nb_planes; i++) { if (s->double_weave && !(inlink->frame_count_out & 1)) { - av_image_copy_plane(out->data[i] + out->linesize[i] * !s->first_field, + av_image_copy_plane(out->data[i] + out->linesize[i] * s->first_field, out->linesize[i] * 2, in->data[i], in->linesize[i], s->linesize[i], s->planeheight[i]); - av_image_copy_plane(out->data[i] + out->linesize[i] * s->first_field, + av_image_copy_plane(out->data[i] + out->linesize[i] * !s->first_field, out->linesize[i] * 2, s->prev->data[i], s->prev->linesize[i], s->linesize[i], s->planeheight[i]); } else { - av_image_copy_plane(out->data[i] + out->linesize[i] * s->first_field, + av_image_copy_plane(out->data[i] + out->linesize[i] * !s->first_field, out->linesize[i] * 2, in->data[i], in->linesize[i], s->linesize[i], s->planeheight[i]); - av_image_copy_plane(out->data[i] + out->linesize[i] * !s->first_field, + av_image_copy_plane(out->data[i] + out->linesize[i] * s->first_field, out->linesize[i] * 2, s->prev->data[i], s->prev->linesize[i], s->linesize[i], s->planeheight[i]); diff --git a/tests/fate/filter-video.mak b/tests/fate/filter-video.mak index 53fc7a6528..79bbc5c05c 100644 --- a/tests/fate/filter-video.mak +++ b/tests/fate/filter-video.mak @@ -289,7 +289,7 @@ FATE_FILTER_VSYNTH-$(CONFIG_SEPARATEFIELDS_FILTER) += fate-filter-separatefields fate-filter-separatefields: CMD = framecrc -c:v pgmyuv -i $(SRC) -vf separatefields FATE_FILTER_VSYNTH-$(CONFIG_WEAVE_FILTER) += fate-filter-weave -fate-filter-weave: CMD = framecrc -c:v pgmyuv -i $(SRC) -vf weave +fate-filter-weave: CMD = framecrc -c:v pgmyuv -i $(SRC) -vf weave=bottom FATE_FILTER_VSYNTH-$(CONFIG_SELECT_FILTER) += fate-filter-select-alternate fate-filter-select-alternate: tests/data/filtergraphs/select-alternate