Commit e27bf207 authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab
Browse files

V4L/DVB (8086): ivtv/cx18: fix video_temporal_filter handling



If the capture is scaled, then the video_temporal_filter is set to 0
by the cx2341x.c module since otherwise you would get ghosting.

However, this was also done in the VIDIOC_S_FMT ioctl which meant that
the video_temporal_filter control was reset to 0 or 8 each time S_FMT
was called. This was old code that should have been removed a long time
ago.

Signed-off-by: default avatarHans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
parent 5cf2cc48
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -244,10 +244,6 @@ static int cx18_s_fmt_vid_cap(struct file *file, void *fh,

	cx->params.width = w;
	cx->params.height = h;
	if (w != 720 || h != (cx->is_50hz ? 576 : 480))
		cx->params.video_temporal_filter = 0;
	else
		cx->params.video_temporal_filter = 8;
	cx18_av_cmd(cx, VIDIOC_S_FMT, fmt);
	return cx18_g_fmt_vid_cap(file, fh, fmt);
}
+0 −9
Original line number Diff line number Diff line
@@ -508,11 +508,6 @@ static int ivtv_try_fmt_vid_cap(struct file *file, void *fh, struct v4l2_format
	ivtv_g_fmt_vid_cap(file, fh, fmt);
	fmt->fmt.pix.width = w;
	fmt->fmt.pix.height = h;
	if (itv->params.width != 720 ||
			itv->params.height != (itv->is_50hz ? 576 : 480))
		itv->params.video_temporal_filter = 0;
	else
		itv->params.video_temporal_filter = 8;
	return 0;
}

@@ -608,10 +603,6 @@ static int ivtv_s_fmt_vid_cap(struct file *file, void *fh, struct v4l2_format *f

	p->width = w;
	p->height = h;
	if (w != 720 || h != (itv->is_50hz ? 576 : 480))
		p->video_temporal_filter = 0;
	else
		p->video_temporal_filter = 8;
	if (p->video_encoding == V4L2_MPEG_VIDEO_ENCODING_MPEG_1)
		fmt->fmt.pix.width /= 2;
	itv->video_dec_func(itv, VIDIOC_S_FMT, fmt);