Getting analog video working on a Hauppauge HVR-1800?
Linux - HardwareThis forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Introduction to Linux - A Hands on Guide
This guide was created as an overview of the Linux Operating System, geared toward new users as an exploration tour and getting started guide, with exercises at the end of each chapter.
For more advanced trainees it can be a desktop reference, and a collection of the base knowledge needed to proceed with system and network administration. This book contains many real life examples derived from the author's experience as a Linux system and network administrator, trainer and consultant. They hope these examples will help you to get a better understanding of the Linux system and that you feel encouraged to try out things on your own.
Click Here to receive this Complete Guide absolutely free.
Getting analog video working on a Hauppauge HVR-1800?
I picked up a Hauppauge WinTV HVR-1800 PCIe TV tuner a few days ago. Digital TV worked fine right out of the box (after setting up the firmware), but I have not been able to get analog video to work at all.
If I run mplayer, xawtv or tvtime using /dev/video1 (yes, that is the correct devnode, video0 is a different card in my rig), I just get a solid green screen at about 1 frame per second, and my dmesg fills with:
[ 1000.029300] format_by_fourcc(0x32315659) NOT FOUND
[ 1000.029326] format_by_fourcc(0x32315559) NOT FOUND
[ 1001.880037] cx23885: VID A - dma channel status dump
[ 1001.880045] cx23885: cmds: init risc lo : 0xaf9e4000
[ 1001.880048] cx23885: cmds: init risc hi : 0x00000000
[ 1001.880051] cx23885: cmds: cdt base : 0x000107b0
[ 1001.880054] cx23885: cmds: cdt size : 0x0000000c
[ 1001.880056] cx23885: cmds: iq base : 0x000105b0
[ 1001.880059] cx23885: cmds: iq size : 0x00000010
[ 1001.880062] cx23885: cmds: risc pc lo : 0xaf9e4034
[ 1001.880064] cx23885: cmds: risc pc hi : 0x00000000
[ 1001.880067] cx23885: cmds: iq wr ptr : 0x00004179
[ 1001.880069] cx23885: cmds: iq rd ptr : 0x0000416d
[ 1001.880072] cx23885: cmds: cdt current : 0x000107b8
[ 1001.880075] cx23885: cmds: pci target lo : 0x00000000
[ 1001.880077] cx23885: cmds: pci target hi : 0x00000000
[ 1001.880080] cx23885: cmds: line / byte : 0x00000000
[ 1001.880083] cx23885: risc0: 0x80008000 [ sync resync count=0 ]
[ 1001.880087] cx23885: risc1: 0x1c000500 [ write sol eol count=1280 ]
[ 1001.880091] cx23885: risc2: 0x7b570500 [ jump sol irq2 irq1 22 20 18 cnt1 cnt0 count=1280 ]
[ 1001.880097] cx23885: risc3: 0x00000000 [ INVALID count=0 ]
[ 1001.880100] cx23885: (0x000105b0) iq 0: 0x80008000 [ sync resync count=0 ]
[ 1001.880104] cx23885: (0x000105b4) iq 1: 0x1c000500 [ write sol eol count=1280 ]
[ 1001.880108] cx23885: iq 2: 0x7b570500 [ arg #1 ]
[ 1001.880111] cx23885: iq 3: 0x00000000 [ arg #2 ]
[ 1001.880113] cx23885: (0x000105c0) iq 4: 0x18000100 [ write sol count=256 ]
[ 1001.880117] cx23885: iq 5: 0x7b570f00 [ arg #1 ]
[ 1001.880120] cx23885: iq 6: 0x00000000 [ arg #2 ]
[ 1001.880122] cx23885: (0x000105cc) iq 7: 0x14000400 [ write eol count=1024 ]
[ 1001.880126] cx23885: iq 8: 0x7c89d000 [ arg #1 ]
[ 1001.880129] cx23885: iq 9: 0x00000000 [ arg #2 ]
[ 1001.880131] cx23885: (0x000105d8) iq a: 0x1c000500 [ write sol eol count=1280 ]
[ 1001.880135] cx23885: iq b: 0x7c89d900 [ arg #1 ]
[ 1001.880138] cx23885: iq c: 0x00000000 [ arg #2 ]
[ 1001.880140] cx23885: (0x000105e4) iq d: 0x15c0dc92 [ write eol irq1 23 22 resync 14 12 count=3218 ]
[ 1001.880146] cx23885: iq e: 0xd975cc0e [ arg #1 ]
[ 1001.880148] cx23885: iq f: 0x13c61431 [ arg #2 ]
[ 1001.880150] cx23885: fifo: 0x00000040 -> 0x2840
[ 1001.880151] cx23885: ctrl: 0x000105b0 -> 0x10610
[ 1001.880154] cx23885: ptr1_reg: 0x00000040
[ 1001.880156] cx23885: ptr2_reg: 0x000107b8
[ 1001.880158] cx23885: cnt1_reg: 0x00000000
[ 1001.880161] cx23885: cnt2_reg: 0x0000000b
[ 1001.880165] cx23885/0: [ffff880078545e00/0] timeout - dma=0xaf9e4000
[ 1001.880167] cx23885/0: [ffff880078545000/1] timeout - dma=0xa7c10000
One such block per second (exactly). After this, digital TV no longer works and even unloading and reloading the kernel module won't help - I have to reboot the machine to get it going again.
Google only turned up a few listserv posts from 2008, none of which are of any use - they only tell me that some people got it working at some point, not how.
I am using kernel 2.6.36 built for amd64, with the cx23885 driver included with that kernel, and the firmware linked from the linuxtv.org wiki page:
I have seen and experience the same issue that you are having when I start fiddling with the settings for Hauppauge PVR-250. It is best to unload all modules for your card and wait for about 30 minutes and try again. If that does not work, you have to shutdown your computer completely and wait for a few minutes and turn it on again. Heat also causes problems, so put any PVR card far away from any high heat generating sources. Raw video capture cards works a lot easier because they do not require firmware.
Your card is only a PVR card and not a raw video capture card. Also you will have to select the input. Use v4l-ctl to change the input. If you are using mplayer and it is compile to include ivtv or PVR, you can specify the input on the same line. After you change the input, set the recording to a good default like a DVD format. It can take about two to five minutes for it to settle on the input and the recording format.
Recompiling mplayer with PVR support now. From what you say, this won't work:
mplayer -tv device=/dev/video1:input=1 tv://
Given that the devnodes are video1 for v4l2/raw and video2 for MPEG, and I want to capture from the S-Video input, what should I use?
That is only for raw capture cards. Your card is not a raw capture card. You have to use the pvr option.
Normally, /dev/video0 is the first capture card and /dev/video1 is the second video capture card. It does not relate to separate inputs. Assuming /dev/video0 is your Hauppauge WinTV HVR-1800, you have to tell it to switch to the input that you want using the utility V4l2-ctl. You will have to find out what device node your Hauppauge WinTV HVR-1800 is at before using the utility v4l2-ctl. The following is how to switch to a different input assuming that S-video is input 2 and the pvr is at /dev/video0.
v4l2-ctl -i 2 -d /dev/video0
Go to the following for more information about v4l2-ctl.