Hauppauge ImpactVCB-e

From MythTV Official Wiki
Jump to: navigation, search

Description

Capture card info
Inputs Composite S-Video TV
Vendor Site https://www.hauppauge.co.uk/site/products/data_impactvcb-e.html
Support Status Supported but requires separate compression process.
Drivers cx23885
Firmware v4l-cx23885-enc.fw

Installation and configuration notes

Mythtv-setup pick the device up just fine and allows it to be configured using the v4l2 device type, but mythbackend is not capable of setting it up or of streaming from it. See separate notes on using mythexternrecorder with v4l2 and vlc. Bear in mind that each recording channel will fire up it's own vlc compression and multiplexing process when it opens a channel to record or live play, so this approach is only possible with some fairly powerful hardware.

Most modern linux distributions will automagically load the kernel drivers.

At time of writing the firmware file is not present in the stock Red Hat package (linux-firmware) so will need to be downloaded separately and placed in /usr/lib/firmware (for RH based distros). For the purposes of this build it was sourced from GitHub at https://github.com/Jolicloud/linux-firmware.

Boot time checks

Once you have fitted the card, put the firmware file in place, and cold booted, you should see something like the following in the system logs

... kernel: cx23885: CORE cx23885[1]: subsystem: 0070:7137, board: Hauppauge ImpactVCB-e [card=43,autodetected]
... kernel: tveeprom: Hauppauge model 71200, rev H4  , serial# 14123685 
... kernel: tveeprom: tuner model is None (idx 0, type 4)
... kernel: tveeprom: TV standards none (eeprom 0x00)
... kernel: tveeprom: audio processor is CX23888 (idx 40)
... kernel: tveeprom: decoder processor is CX23888 (idx 34)
... kernel: tveeprom: has no radio
... kernel: cx23885: cx23885[1]: warning: unknown hauppauge model #71200
... kernel: cx23885: cx23885[1]: hauppauge eeprom: model=71200
... kernel: cx25840 16-0044: cx23888 A/V decoder found @ 0x88 (cx23885[1]) 
... kernel: cx25840 16-0044: loaded v4l-cx23885-avcore-01.fw firmware (16382 bytes)
... kernel: cx23885: cx23885[1]: registered device video1 [v4l2]
... kernel: cx23885: cx23885[1]: registered device vbi1
... kernel: cx23885: cx23885[1]: alsa: registered ALSA audio device
... kernel: cx23885: cx23885_dev_checkrevision() Hardware revision = 0xd0
... kernel: cx23885: cx23885[1]/0: found at 0000:06:00.0, rev: 4, irq: 24, latency: 0, mmio: 0xf5200000

Setup

Check to ensure the user that mythbackend runs as will be able to access the devices by adding that user to the "video" and "audio" user groups.

As that user use check the analogue functionality using the v4l2-ctl tool.

 v4l2-ctl --all -d /dev/video1
Driver Info:
	Driver name      : cx23885
	Card type        : Hauppauge ImpactVCB-e
	Bus info         : PCIe:0000:06:00.0
	Driver version   : 5.8.8
	Capabilities     : 0x85220011
		Video Capture
		VBI Capture
		Audio
		Read/Write
		Streaming
		Extended Pix Format
		Device Capabilities
	Device Caps      : 0x05220001
		Video Capture
		Audio
		Read/Write
		Streaming
		Extended Pix Format
Priority: 2
Video input : 0 (Composite1: no signal)
Audio input : 0 (Baseband L/R 1)
Video Standard = 0x00001000
	NTSC-M
Format Video Capture:
	Width/Height      : 720/480
	Pixel Format      : 'YUYV' (YUYV 4:2:2)
	Field             : Interlaced
	Bytes per Line    : 1440
	Size Image        : 691200
	Colorspace        : SMPTE 170M
	Transfer Function : Default (maps to Rec. 709)
	YCbCr/HSV Encoding: Default (maps to ITU-R 601)
	Quantization      : Default (maps to Limited Range)
	Flags             : 
Crop Capability Video Capture:
	Bounds      : Left 0, Top 0, Width 720, Height 480
	Default     : Left 0, Top 0, Width 720, Height 480
	Pixel Aspect: 11/10
Selection Video Capture: crop_default, Left 0, Top 0, Width 720, Height 480, Flags: 
Selection Video Capture: crop_bounds, Left 0, Top 0, Width 720, Height 480, Flags: 
Streaming Parameters Video Capture:
	Frames per second: 29.970 (30000/1001)
	Read buffers     : 2

User Controls

                     brightness 0x00980900 (int)    : min=0 max=255 step=1 default=128 value=128 flags=slider
                       contrast 0x00980901 (int)    : min=0 max=127 step=1 default=64 value=64 flags=slider
                     saturation 0x00980902 (int)    : min=0 max=127 step=1 default=64 value=64 flags=slider
                            hue 0x00980903 (int)    : min=-128 max=127 step=1 default=0 value=0 flags=slider
                         volume 0x00980905 (int)    : min=0 max=65535 step=655 default=65024 value=65024 flags=slider
                        balance 0x00980906 (int)    : min=0 max=65535 step=655 default=32768 value=32768 flags=slider
                           bass 0x00980907 (int)    : min=0 max=65535 step=655 default=32768 value=32768 flags=slider
                         treble 0x00980908 (int)    : min=0 max=65535 step=655 default=32768 value=32768 flags=slider
                           mute 0x00980909 (bool)   : default=0 value=0

You should now be able to proceed to the notes at mythexternrecorder with v4l2 and vlc on how to set up a non-compressing analogue card for mythexternrecorder noting which video and vbi device numbers were listed in the logs.

eg:

... kernel: cx23885: cx23885[1]: registered device video1 [v4l2]
... kernel: cx23885: cx23885[1]: registered device vbi1