I have a patch here that requires additional testing. It's aimed at the PVR350
and appears to fix the annoying flicker that can sometimes occur during
capture. It also fixes the ghosting that occurs with the temporal filter. Both
problems share the same trigger, but the ghosting is the more common symptom.
The main fix is a single additional firmware call in ivtv-streams.c when
closing the last capture stream. The second change is for cx2341x.c, but is
simply to re-enable the temporal filter which is partially disabled in the
current release (and contrary to the comment, ghosting can occur with a full
res capture).
This patch was generated against kernel 2.6.32
--
Ian
--- drivers/media/video/ivtv/ivtv-streams.c.org 2010-02-27 02:07:24.000000000 +0000
+++ drivers/media/video/ivtv/ivtv-streams.c 2010-02-27 02:10:00.000000000 +0000
@@ -825,6 +825,9 @@ int ivtv_stop_v4l2_encode_stream(struct
ivtv_set_irq_mask(itv, IVTV_IRQ_ENC_VIM_RST);
}
+ /* Apart from fixing some issues, what exactly does this do? */
+ ivtv_vapi(itv, CX2341X_ENC_STOP_CAPTURE,3, 1, 2, 7);
+
wake_up(&s->waitq);
return 0;
--- drivers/media/video/cx2341x.c.org 2010-02-27 02:07:11.000000000 +0000
+++ drivers/media/video/cx2341x.c 2010-02-27 02:11:01.000000000 +0000
@@ -1001,19 +1001,6 @@ int cx2341x_update(void *priv, cx2341x_m
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 is scaled, then force the filter to 0.
-
- For full resolution the filter really improves the video
- quality, especially if the original video quality is
- suboptimal. */
- temporal = 0;
- }
-
if (force || NEQ(stream_type)) {
err = cx2341x_api(priv, func, CX2341X_ENC_SET_STREAM_TYPE, 1,
mpeg_stream_type[new->stream_type]);
_______________________________________________
ivtv-devel mailing list
[email protected]
http://ivtvdriver.org/mailman/listinfo/ivtv-devel