[pvrusb2] Green screen + compiling problems ( compiling by newbie)

Mike Isely isely at isely.net
Fri Apr 8 19:03:47 CDT 2011


Comments interspersed below...

On Fri, 8 Apr 2011, Larry J on Ubuntu 10.04 Desktop wrote:

> I can no longer get my USB Wintv PVR2 Mpeg external encoder working using the
> 2.6.32-30-generic kernel.    This following describes my circumstances:
> 
> 
> 1. I plugin WinTVthe USB cord and lsusb shows:
> lj at lian:~$ lsusb
> Bus 002 Device 005: ID 2040:2400 Hauppauge

So it's a 24xxx device.  No ATSC hardware but that's fine - I test 
against this model all the time.


> 
> 2. I see that /dev/video1 comes and goes with my plugging and unplugging the
> WinTV PvR2 usb cord
> lj at lian:~$ ls -al /dev/vid*
> crw-rw----+ 1 root video 81, 0 2011-04-07 09:37 /dev/video0
> crw-rw----+ 1 root video 81, 1 2011-04-08 12:02 /dev/video1
> (Note: /dev/video0 is my web camera)
> 
> 3. The chatter from dmesg looks OK:
> (In particular, note the line:
> "[95354.638212] pvrusb2: Device initialization completed successfully."
> 
> [95353.520015] usb 2-1: new high speed USB device using ehci_hcd and address 7
> [95353.682382] usb 2-1: configuration #1 chosen from 1 choice
> [95353.703541] pvrusb2: Binding ir_video to i2c address 0x18.
> [95353.705664] cx25840 3-0044: cx25843-24 found @ 0x88 (pvrusb2_a)
> [95353.706163] pvrusb2: Attached sub-driver cx25840
> [95353.717316] tuner 3-0061: chip found @ 0xc2 (pvrusb2_a)
> [95353.717320] pvrusb2: Attached sub-driver tuner
> [95353.718501] wm8775 3-001b: chip found @ 0x36 (pvrusb2_a)
> [95353.721787] pvrusb2: Attached sub-driver wm8775
> [95353.726105] tuner 3-0043: chip found @ 0x86 (pvrusb2_a)
> [95353.726175] tda9887 3-0043: creating new instance
> [95353.726178] tda9887 3-0043: tda988[5/6/7] found
> [95353.726538] pvrusb2: Attached sub-driver tuner
> [95353.734194] cx25840 3-0044: firmware: requesting v4l-cx25840.fw
> [95354.584790] cx25840 3-0044: loaded v4l-cx25840.fw firmware (16382 bytes)
> [95354.638163] tveeprom 3-00a2: Hauppauge model 24012, rev C2A3, serial#
> 8504958
> [95354.638167] tveeprom 3-00a2: tuner model is TCL MFNM05-4 (idx 103, type 43)
> [95354.638170] tveeprom 3-00a2: TV standards NTSC(M) (eeprom 0x08)
> [95354.638173] tveeprom 3-00a2: audio processor is CX25843 (idx 37)
> [95354.638175] tveeprom 3-00a2: decoder processor is CX25843 (idx 30)
> [95354.638178] tveeprom 3-00a2: has radio, has IR receiver, has no IR
> transmitter
> [95354.638183] pvrusb2: Supported video standard(s) reported available in
> hardware: PAL-M/N/Nc;NTSC-M/Mj/Mk
> [95354.638187] pvrusb2: Mapping standards mask=0xb700
> (PAL-M/N/Nc;NTSC-M/Mj/Mk)
> [95354.638189] pvrusb2: Setting up 6 unique standard(s)
> [95354.638192] pvrusb2: Set up standard idx=0 name=PAL-M
> [95354.638194] pvrusb2: Set up standard idx=1 name=PAL-N
> [95354.638196] pvrusb2: Set up standard idx=2 name=PAL-Nc
> [95354.638199] pvrusb2: Set up standard idx=3 name=NTSC-M
> [95354.638201] pvrusb2: Set up standard idx=4 name=NTSC-Mj
> [95354.638203] pvrusb2: Set up standard idx=5 name=NTSC-Mk
> [95354.638206] pvrusb2: Initial video standard guessed as NTSC-M
> [95354.638212] pvrusb2: Device initialization completed successfully.
> [95354.638221] usb 2-1: firmware: requesting v4l-cx2341x-enc.fw
> [95354.638270] pvrusb2: registered device video1 [mpeg]
> [95354.638296] pvrusb2: registered device radio0 [mpeg]
> [95354.920292] tuner-simple 3-0061: creating new instance
> [95354.920297] tuner-simple 3-0061: type set to 43 (Philips NTSC MK3
> (FM1236MK3 or FM1236/F))

That all looks pretty reasonable.

> 
> 
> 4.  However, if I
> lj at lian:~$ cat /dev/video1 > test.mpeg
> then play  test.mpeg back through VLC
> using  vlc stream:///dev/video1.   Then
> I see a "green screen" and hear digital noise in the audio.
> You can grab a copy of the green screen mpeg video here:
> http://foxgulch.com/Miscellaneous/test.mpeg
> 
> Power cycling does not cause the problem to disappear.
> 

If you just run the cat command without actually doing anything to 
select a channel or a specific input, then you're just going to see 
whatever the driver configures as its default.  For the longest time, 
the "default" was the television input, US Broadcast channel 7.  However 
a while back (after NTSC OTA went dark in the USA) I changed the default 
to US Broadcast channel 3 - to match the RF modulator I had laying 
around so as to make it easy to continue testing.  It's possible that 
you just now switched to a kernel with a driver that is defaulting to 
channel 3 instead of 7....

You can use the driver's sysfs interface to control all of this right 
from the shell command line.  Failing that you will need to run a V4L 
app in order to set the input (e.g. "television" vs "s-video" vs 
"composite" vs "radio" in your case) and in the case of "television" or 
"radio" also set the tuned frequency.  Otherwise you're probably not 
getting a valid signal which would explain the results you're seeing.


> 5. So I grab a copy of the standalone driver from Mike Isleys site, extract it
> to a folder on my desktop, cd into the driver directory then "sudo make"
> following the outline given here:
> http://ubuntuforums.org/showthread.php?t=159989
> 
> That "make" kicks back multiple "No such file or directory" errors
> 
> make INSTALL_MOD_DIR=pvrusb2 -C /lib/modules/2.6.32-30-generic/build
> M=/home/lj/Desktop/PVRUSB2/pvrusb2-mci-20110116/driver CONFIG_VIDEO_PVRUSB2=m
> CONFIG_VIDEO_PVRUSB2_24XXX=y CONFIG_VIDEO_PVRUSB2_SYSFS=y
> CONFIG_VIDEO_PVRUSB2_DVB=y CONFIG_VIDEO_PVRUSB2_DEBUGIFC=y
> CONFIG_VIDEO_ADV_DEBUG=y modules
> make[1]: Entering directory `/usr/src/linux-headers-2.6.32-30-generic'
>   CC [M]  /home/lj/Desktop/PVRUSB2/pvrusb2-mci-20110116/driver/pvrusb2-std.o
>   CC [M]
> /home/lj/Desktop/PVRUSB2/pvrusb2-mci-20110116/driver/pvrusb2-compat.o
>   CC [M]  /home/lj/Desktop/PVRUSB2/pvrusb2-mci-20110116/driver/pvrusb2-ctrl.o
>   CC [M]  /home/lj/Desktop/PVRUSB2/pvrusb2-mci-20110116/driver/pvrusb2-hdw.o
>   CC [M]
> /home/lj/Desktop/PVRUSB2/pvrusb2-mci-20110116/driver/pvrusb2-devattr.o
> /home/lj/Desktop/PVRUSB2/pvrusb2-mci-20110116/driver/pvrusb2-devattr.c:42:22:
> error: tda18271.h: No such file or directory
> /home/lj/Desktop/PVRUSB2/pvrusb2-mci-20110116/driver/pvrusb2-devattr.c:43:21:
> error: tda8290.h: No such file or directory
> 
> Anyone see  why my compilation fails?

Those missing headers are for support of specific v4l-dvb tuners having 
to do with later model devices (like the HVR-1950).  The standalone 
driver supports all that, and the kernel version you're compiling 
against (2.6.32) should also support that.  However I've seen cases 
where a distro vendor's kernel source package fails to include *all* of 
the headers for that kernel.  Sometimes the distro might split the 
headers into multiple packages, in which case you would need to identify 
and install those other packages.


> 
> Anyone else experience the "green screen" and digital noise in the mpeg
> stream?

See above...

  -Mike


-- 

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


More information about the pvrusb2 mailing list