V4L/DVB (8086): ivtv/cx18: fix video_temporal_filter handling
authorHans Verkuil <hverkuil@xs4all.nl>
Sat, 21 Jun 2008 12:21:23 +0000 (09:21 -0300)
committerMauro Carvalho Chehab <mchehab@infradead.org>
Sun, 20 Jul 2008 10:11:00 +0000 (07:11 -0300)
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: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
drivers/media/video/cx18/cx18-ioctl.c
drivers/media/video/ivtv/ivtv-ioctl.c

index 3953827..f66ca0b 100644 (file)
@@ -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);
 }
index d75c82e..b1cda6c 100644 (file)
@@ -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);