On Tue, 1 Dec 2009, Moasat wrote:
-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of Andy Walls
Sent: Monday, November 30, 2009 7:03 PM
To: Discussion list for development of the IVTV driver
Subject: Re: [ivtv-devel] PVR150 Tinny/fuzzy audio w/ patch?
I have both a PVR-150 and a PVR-350. Both seem to exhibit the tinny audio
behaviour. If this patch can be made to work for both cards, I'd be willing
to try it out. I'm currently running 2.6.30 but am going to be upgrading to
2.6.31 soon. I normally have to run a script that sets the audio-in on both
cards to line-in (or something, I forget) to get them to reset the audio. I
usually do this about every 10 seconds but have since backed that off. I
never got the timing right to do it after a Myth channel change like I
wanted to.
Moasat,
I haven't tried this, but it should extend the hack to include 350 cards
as well as 150/500 cards. I wasn't aware that the tinny audio afflicts
other Hauppauge models (does this happen on 250's, too?) I only own
150's, so that is where I was concentrating my debugging efforts.
I've found that setting the audio-in wasn't very effective in my
setup. I still had the occassional recording corruption. Better to
fix it at the driver level anyway, I think (hope). We shouldn't need
external workarounds ...
If you get a chance, please give it a try. I'd be curious if it works.
I assume Andy/Hans would be interested, too ...
PATCH w/350:
========================================================================
--- drivers/media/video/ivtv/ivtv-streams.c.original 2008-12-24
18:26:37.000000000 -0500
+++ drivers/media/video/ivtv/ivtv-streams.c 2009-12-01 15:16:11.795973690
-0500
@@ -575,15 +575,23 @@
ivtv_set_irq_mask(itv, IVTV_IRQ_MASK_CAPTURE);
clear_bit(IVTV_F_I_EOS, &itv->i_flags);
/* Initialize Digitizer for Capture */
+ if (itv->card->type != IVTV_CARD_PVR_150 &&
+ itv->card->type != IVTV_CARD_PVR_350) {
itv->video_dec_func(itv, VIDIOC_STREAMOFF, NULL);
ivtv_msleep_timeout(300, 1);
+ }
+
ivtv_vapi(itv, CX2341X_ENC_INITIALIZE_INPUT, 0);
+
+ if (itv->card->type != IVTV_CARD_PVR_150 &&
+ itv->card->type != IVTV_CARD_PVR_350) {
itv->video_dec_func(itv, VIDIOC_STREAMON, NULL);
}
+ }
/* begin_capture */
if (ivtv_vapi(itv, CX2341X_ENC_START_CAPTURE, 2, captype, subtype))
{
IVTV_DEBUG_WARN( "Error starting capture!\n");
========================================================================
- Argus
_______________________________________________
ivtv-devel mailing list
[email protected]
http://ivtvdriver.org/mailman/listinfo/ivtv-devel