mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
avfilter/vf_tinterlace: fix mergex2, first frame is always considered odd
This commit is contained in:
parent
24fea4d09b
commit
d363afb30e
@ -396,12 +396,12 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *picref)
|
||||
copy_picture_field(tinterlace, out->data, out->linesize,
|
||||
(const uint8_t **)cur->data, cur->linesize,
|
||||
inlink->format, inlink->w, inlink->h,
|
||||
FIELD_UPPER_AND_LOWER, 1, tinterlace->mode == MODE_MERGEX2 ? inlink->frame_count_out & 1 ? FIELD_LOWER : FIELD_UPPER : FIELD_UPPER, tinterlace->flags);
|
||||
FIELD_UPPER_AND_LOWER, 1, tinterlace->mode == MODE_MERGEX2 ? (1 + inlink->frame_count_out) & 1 ? FIELD_LOWER : FIELD_UPPER : FIELD_UPPER, tinterlace->flags);
|
||||
/* write even frame lines into the lower field of the new frame */
|
||||
copy_picture_field(tinterlace, out->data, out->linesize,
|
||||
(const uint8_t **)next->data, next->linesize,
|
||||
inlink->format, inlink->w, inlink->h,
|
||||
FIELD_UPPER_AND_LOWER, 1, tinterlace->mode == MODE_MERGEX2 ? inlink->frame_count_out & 1 ? FIELD_UPPER : FIELD_LOWER : FIELD_LOWER, tinterlace->flags);
|
||||
FIELD_UPPER_AND_LOWER, 1, tinterlace->mode == MODE_MERGEX2 ? (1 + inlink->frame_count_out) & 1 ? FIELD_UPPER : FIELD_LOWER : FIELD_LOWER, tinterlace->flags);
|
||||
if (tinterlace->mode != MODE_MERGEX2)
|
||||
av_frame_free(&tinterlace->next);
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user