[pvrusb2] New driver snapshot: pvrusb2-mci-20080629

Mike Isely isely at isely.net
Sun Jun 29 22:27:09 CDT 2008


A new pvrusb2 driver snapshot is available.  The differences since
last April (20080420 snapshot) are mostly minor little tweaks:

  o Select an appropriate GOP size value for the video standard in
    effect and set it when the video standard is changed. This is not
    a big stretch from what the driver had already been doing with the
    vertical capture resolution.

  o Track changes to cx2341x API (fixes compilation issue for kernel
    versions 2.6.27 or later).

  o Port hardware name and description nodes over to legacy sysfs
    implementation from the more recent sysfs implementation.

  o Increase duration of enforced encoder "quiet period" from 50msec
    to 100msec. This seems to improve the odds that the encoder will
    correctly start streaming.

  o Implement tv_freq and radio_freq module options. These set the
    initial default TV and radio frequencies upon
    initialization. Under normal use one does not care about this
    (since the app is always going to set these anyway); this is
    however useful for debugging.

  o Rework pvrusb2-sysfs.c to eliminate a giant pile of hacked up crap
    that dates from the early days of the driver. Back then the
    kernel's class device mechanism did not have a means for passing
    per-attribute information so an ugly thunking mechanism had been
    implemented as a workaround. These days we use the kernel's device
    mechanism which had been enhanced to handle sysfs classes - and
    with that we can pass per attribute info. So remove all the gunk
    and clean this up.

The GOP size change works around a bug in MythTV: Apparently in 0.21
the value for GOP size is factored into the calculation of a program's
length.  While MythTV does query the driver for this value, it's
apparently ignoring what it gets and is instead assuming something
else based on the video standard in use.  Admittedly the value it is
assuming is more appropriate than the default in the pvrusb2 driver -
however the driver could have also been told to switch to the correct
value via a V4L ioctl().  Long story short, the driver now sets the
GOP value appropriate to the video standard in use, thus satisfying
the assumption MythTV has been making.  The driver change is not
really a big deal; it was already adjusting the vertical capture
resolution based on video standard anyway so this just extends a bit
what is already there.  I understand that a different fix will likely
be going into MythTV that will eliminate its reliance on this video
parameter.  This change is a result of the discussion on this list
from last week; I'd appreciate it if Dan Bodoh could test this, verify
the fix, and post the results.

The driver snapshot now also includes the udev hack posted here to the
mailing list a little while back.

I haven't forgotten about the video cropping patch that had been
posted; I still hope to get that into the driver sometime soon.

As usual, the pvrusb2 web site can be found at:

  http://www.isely.net/pvrusb2/pvrusb2.html

  -Mike

-- 

Mike Isely
isely @ pobox (dot) com
PGP: 03 54 43 4D 75 E5 CC 92 71 16 01 E2 B5 F5 C1 E8


More information about the pvrusb2 mailing list