Hello, thought I’d share this with you given there are some threads like Any way to set up the AverMedia Live Gamer 4K GC573 in Linux and 4K + HDR Capture Options on here.
(TL;DR below)
In case you’re not aware the Live Gamer 4K (GC573) does not have official Linux support (only Windows 10 x64), however there is a different model made by AVerMedia called the CL511HN which is very similar under the hood. The Windows drivers of it and the GC573 are interchangeable, though not all features work (probably down to different firmware).
Now recently they released a Linux driver for the CL511HN on their download page, of interest is the driver description “Support users to complie driver by themselves.” Now unfortunately this does not mean the driver is fully open-source. They published a binary blob (AverMediaLib_64.a
) that seems to contain libraries to interface with the card’s components, but the code that links to the Linux kernel and v4l2 is there and open for us to read/modify. The build/install scripts that are included aren’t great and have a typo but after a bit of mucking around I got it to work:
The driver only officially supports Ubuntu 16.04-20.04 and Kernels up to 5.4.0, this limitation seems to be mainly due to Ubuntu’s kernel still exporting certain symbols that have been removed from the mainline kernel. But since those parts of the driver are open I was able to patch it and get it to work on Fedora 32 as well.
tl;dr: AVerMedia released a semi-open Linux driver for their “enterprise” card that has drivers that are compatible with the LG4K. With a few patches they can be made to work with the consumer variant.
GitHub repository containing driver + patches: https://github.com/derrod/lg4k-linux
Caveats:
- RGB LEDs will keep blinking red as if the driver isn’t installed
- Only the YUV 4:2:2 mode seems to work (may be due to firmware differences)
- Driver
does not load automatically andrequires manual re-installation every time there’s a kernel update - Requires some minor modifications to compile without Ubuntu’s kernel patches, those are in the
fedora
branch (since I tested it on Fedora 32)
I really don’t know much about Linux driver programming, but from what I’ve read it seems that making the driver load automatically should be fairly trivial by using MODULE_DEVICE_TABLE
. Turning off the LEDs may be possible by looking at the Windows/Mac driver and see if there’s a command or something you can send to control them.
Edit: I’ve added the device table export to the entry.c
file, the driver will now load automatically on boot.
Edit2: Also done some more poking around, seems like the RGB modes just won’t work on Linux, which is a shame. Maybe somebody can dig deeper into the other drivers to see if we can still get that on Linux.
I’ve also confirmed that the Linux driver requires the latest firmware (´2019.12.05´) to be flashed, this cannot be done on Linux currently so unless you’re lucky and your card comes with it you’ll have to boot into Windows at least once.