From: Mauro Carvalho Chehab <mchehab@infradead.org>
To: LKML <linux-kernel@vger.kernel.org>
Cc: V4L-DVB Maintainers <v4l-dvb-maintainer@linuxtv.org>,
Hans Verkuil <hverkuil@xs4all.nl>,
Mauro Carvalho Chehab <mchehab@infradead.org>
Subject: [PATCH 15/28] V4L/DVB (4983): Force temporal filter to 0 when scaling to prevent ghosting.
Date: Wed, 27 Dec 2006 14:57:30 -0200 [thread overview]
Message-ID: <20061227165730.PS10005700015@infradead.org> (raw)
In-Reply-To: <20061227165016.PS89442900000@infradead.org>
From: Hans Verkuil <hverkuil@xs4all.nl>
Change the code to unconditionally turn off the temporal filter when scaling.
If the window is not full screen the filter will introduce a nasty ghosting
effect.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
---
drivers/media/video/cx2341x.c | 15 ++++++---------
1 files changed, 6 insertions(+), 9 deletions(-)
diff --git a/drivers/media/video/cx2341x.c b/drivers/media/video/cx2341x.c
index 657e0b9..e796afd 100644
--- a/drivers/media/video/cx2341x.c
+++ b/drivers/media/video/cx2341x.c
@@ -742,7 +742,6 @@ int cx2341x_update(void *priv, cx2341x_m
if (old == NULL || old->width != new->width || old->height != new->height ||
old->video_encoding != new->video_encoding) {
- int is_scaling;
u16 w = new->width;
u16 h = new->height;
@@ -752,20 +751,18 @@ int cx2341x_update(void *priv, cx2341x_m
}
err = cx2341x_api(priv, func, CX2341X_ENC_SET_FRAME_SIZE, 2, h, w);
if (err) return err;
+ }
+ if (new->width != 720 || new->height != (new->is_50hz ? 576 : 480)) {
/* Adjust temporal filter if necessary. The problem with the temporal
filter is that it works well with full resolution capturing, but
not when the capture window is scaled (the filter introduces
- a ghosting effect). So if the capture window changed, and there is
- no updated filter value, then the filter is set depending on whether
- the new window is full resolution or not.
+ a ghosting effect). So if the capture window is scaled, then
+ force the filter to 0.
- For full resolution a setting of 8 really improves the video
+ For full resolution the filter really improves the video
quality, especially if the original video quality is suboptimal. */
- is_scaling = new->width != 720 || new->height != (new->is_50hz ? 576 : 480);
- if (old && old->video_temporal_filter == temporal) {
- temporal = is_scaling ? 0 : 8;
- }
+ temporal = 0;
}
if (old == NULL || old->stream_type != new->stream_type) {
next prev parent reply other threads:[~2006-12-27 17:17 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-12-27 16:50 [PATCH 00/28] V4L/DVB fixes Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 02/28] V4L/DVB (4956): [NOVA-T-USB2] Put remote-debugging in the right place Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 05/28] V4L/DVB (4960): Removal of unused code from usbvision-i2c.c Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 04/28] V4L/DVB (4959): Usbvision: possible cleanups Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 03/28] V4L/DVB (4958): Fix namespace conflict between w9968cf.c on MIPS Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 01/28] V4L/DVB (4955): Fix autosearch index Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 09/28] V4L/DVB (4970): Usbvision memory fixes Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 08/28] V4L/DVB (4968): Add PAL-60 support for cx2584x Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 06/28] V4L/DVB (4964): VIDEO_PALETTE_YUYV and VIDEO_PALETTE_YUV422 are the same palette Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 07/28] V4L/DVB (4967): Add missing tuner module option pal=60 for PAL-60 support Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 12/28] V4L/DVB (4979): Fixes compilation when CONFIG_V4L1_COMPAT is not selected Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 10/28] V4L/DVB (4972): Dvb-core: fix bug in CRC-32 checking on 64-bit systems Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 11/28] V4L/DVB (4973): Dvb-core: fix printk type warning Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 13/28] V4L/DVB (4980): Fixes bug 7267: PAL/60 is not working Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 16/28] V4L/DVB (4984): LOG_STATUS should show the real temporal filter value Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 17/28] V4L/DVB (4988): Cx2341x audio_properties is an u16, not u8 Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 18/28] V4L/DVB (4990): Cpia2/cpia2_usb.c: fix error-path leak Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 14/28] V4L/DVB (4982): Fix broken audio mode handling for line-in in msp3400 Mauro Carvalho Chehab
2006-12-27 16:57 ` Mauro Carvalho Chehab [this message]
2006-12-27 16:57 ` [PATCH 21/28] V4L/DVB (4994): Vivi: fix use after free in list_for_each() Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 22/28] V4L/DVB (4995): Vivi: fix kthread_run() error check Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 19/28] V4L/DVB (4991): Cafe_ccic.c: fix NULL dereference Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 20/28] V4L/DVB (4992): Fix typo in saa7134-dvb.c Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 27/28] V4L/DVB (5012): Usbvision fix: It was using "&&" instead "&" Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 25/28] V4L/DVB (5014): Allyesconfig build fixes on some non x86 arch Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 23/28] V4L/DVB (4996): Msp3400: fix kthread_run error check Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 26/28] V4L/DVB (5001): Add two required headers on kernel 2.6.20-rc1 Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 28/28] V4L/DVB (5010): Cx88: Fix leadtek_eeprom tagging Mauro Carvalho Chehab
2006-12-27 16:57 ` [PATCH 24/28] V4L/DVB (4997): Bttv: delete duplicated ioremap() Mauro Carvalho Chehab
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20061227165730.PS10005700015@infradead.org \
--to=mchehab@infradead.org \
--cc=hverkuil@xs4all.nl \
--cc=linux-kernel@vger.kernel.org \
--cc=v4l-dvb-maintainer@linuxtv.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®