53 #if FF_API_INTERLACE_LOWPASS_SET
59 #define OFFSET(x) offsetof(InterlaceContext, x)
60 #define V AV_OPT_FLAG_VIDEO_PARAM
62 {
"scan",
"scanning mode",
OFFSET(scan),
64 {
"tff",
"top field first", 0,
66 {
"bff",
"bottom field first", 0,
68 #if FF_API_INTERLACE_LOWPASS_SET
69 {
"lowpass",
"(deprecated, this option is always set)",
OFFSET(
lowpass),
104 #if FF_API_INTERLACE_LOWPASS_SET
114 outlink->
w = inlink->
w;
115 outlink->
h = inlink->
h;
137 int lines = (plane == 1 || plane == 2) ?
FF_CEIL_RSHIFT(inlink->
h, vsub) : inlink->
h;
152 srcp_linesize = src_frame->
linesize[plane] * 2;
153 dstp_linesize = dst_frame->
linesize[plane] * 2;
154 for (j = lines; j > 0; j--) {
161 for (i = 0; i < linesize; i++) {
165 dstp[i] = (1 + srcp[i] + srcp[i] + srcp_above[i] + srcp_below[i]) >> 2;
167 dstp += dstp_linesize;
168 srcp += srcp_linesize;
191 "video is already interlaced, adjusting framerate only\n");
245 .priv_class = &interlace_class,