[pvrusb2] Audio/video sync (was re: Jumpy Video in Mythtv)
Mike Isely
isely at isely.net
Sun Jul 22 23:09:49 CDT 2007
First, sorry it took until now for me to reply. I've been away on a 3
week vacation, having just returned this evening. I'm working off a
backlog of e-mail...
On Thu, 5 Jul 2007, roger wrote:
> On Wed, 2007-07-04 at 15:39 -0700, Mark Goldberg wrote:
> > On 6/30/07, Rod Smith <rodsmith at rodsbooks.com> wrote:
> > > FWIW, I've noticed audio/video sync problems, too, although they're not
> >
> > After updating FC6 with the latest 2.6.20-1.2962.fc6 kernel and it's
> > v4l modules and ATRPMs, and compiling the pvrusb module from
> > pvrusb2-mci-20070428 and the firmware from pvrusb2_inf_24117.zip, then
> > shutting down the computer (turning it off so it reloads the
> > firmware), everything seems to work fine.
A modprobe -r pvrusb2 and then power cycling the PVR USB2 device should
be enough to clear everything. Note that rebooting the computer without
power cycling the PVR USB2 device does NOT necessarily cause the
device's FX2 firmware to be loaded. When the pvrusb2 driver initializes
a device, the first thing it does is to test for the need to load the
FX2 firmware. If needed, the FX2 firmware is sent to the device and it
is reset - then the pvrusb2 driver "ignores" the device under the
expectation that it will disconnect and reconnect. Upon (re)connection,
the pvrusb2 driver sees a new device, runs the same test which passes
this time, and then the driver completes its initialization of the
hardware. This of course also means that if the device already passes
its "test", then no firmware load is performed - thus rebooting the host
does not imply a reload of the FX2 firmware.
Just to complicate things further, there's other firmware here as well
which operates under different rules. The CX23416 firmware is *always*
loaded when the pvrusb2 driver initializes a device. And if this is a
24xxx model series device (if you don't know, it probably is), then the
cx25840 chip-level driver will also load another firmware image to that
chip upon initialization.
The best sure-fire way to completely reinitialize the device and to make
sure that the driver is what you just built is this:
1. Disconnect the PVR USB2 device from its power.
2. modprobe -r pvrusb2.
3. Connect the PVR USB2 device to its power source.
Not that any of that matters in this case - you got things working and
in the end that's all that really matters.
> >
> > The v4l updated kernel modules from ATRPMs don't work, you get errors
> > about disagreeing symbol versions.
>
> This sounds like a packaging issue. :-/
Errors involving disagreeing symbol versions AFAIK *always* are the
result of attempting to load modules that were built from sources
unrelated to the running kernel. Unfortunately since I don't do RPMs
here and have no idea how those "v4l updated kernel modules" are
actually built / packaged, I can't really suggest a specific cause. I'm
always building everything kernel-related from sources here.
>
> Maybe using an ancient pvrusb2 driver? As we have been on 2.6.20 for >
> 6 mos now and just recently went to 2.6.21 in the last month.
>
> So you're still using an *old* kernel in most people's view. :-)
>
-Mike
--
| Mike Isely | PGP fingerprint
Spammers Die!! | | 03 54 43 4D 75 E5 CC 92
| isely @ pobox (dot) com | 71 16 01 E2 B5 F5 C1 E8
| |
More information about the pvrusb2
mailing list