VideoSecu DVC1612
Very similar (and probably driver-compatible) cards seem to be sold under the names EverSecu ES-1612, EyeMax DVB1920, and Tibet Systems Progress DVR CS16. The latter's preexisting support in the kernel was how I managed to get this card working. The IDR X016S may also be compatible—the layout of integrated circuits and other components on the card look similar to the VideoSecu DVC1612.
Introduction
The VideoSecu DVC1612 is a 16-channel PCI capture card with 4 Conexant Fusion 878A chips behind a PCI bridge. As suggested by its name, it is designed for security systems and comes with a CD containing a copy of the EyeONet DVR software.
The card has two VGA ports which are used for two VGA-to-BNC splitters (not real VGA). It seems that any of the 16 video inputs can be connected to any of the four Bt878a chips as long as the correct GPIO values are written, as already discovered by whoever added support for the Tibet Systems CS16.
The RCA connector on the left side is presumably for output to an analog screen. I do not think this is actually for DVB functionality; I am fairly sure that this is merely for passing one of the inputs through to a separate screen. To my knowledge, neither this functionality nor audio is currently working.
Using the Card
This card unfortunately lacks the necessary PCI identification to be autodetected. Use card=131,131,131,131
as a parameter to the bttv
kernel module in order to use this card. Video input 1 is named Composite0; Video input 16 is named Composite15. You will know that bttv was not loaded with the proper parameters if Composite0 is connected to video input 16 and video input 16 is the only input that works. If you are using software such as ZoneMinder that can be configured to capture from multiple inputs on the same /dev/videoX device, be sure to only designate four inputs to each /dev/videoX device. It would probably work to capture all 16 inputs through one /dev/video device, but in that case you would be leaving three out of the four bt878 chips on this card unused and you would have extremely low framerate due to input-switching delays.
I also found it useful to add the bit_test=1
parameter to the i2c_algo_bit
kernel module, as suggested by the bttv documentation. (Note that you may have to update your initramfs image for this change to take effect.) Without this it took waaay too long to insert the bttv module, causing udev's workers to time out, which caused systemd-logind to time out and get killed by systemd, which then even interfered with the login screen.