AgentDVR Hardware Acceleration Under Fedora
Posted: Thu Apr 04, 2024 3:07 am
By default on Linux, AgentDVR doesn't have hardware acceleration available. This isn't a problem if you have just a few low resolution cameras, but becomes an increasing problem on larger camera installs.
Fedora and many other Linux distributions are on the FOSS bandwagon and don't include codecs that allow hardware decoding/encoding of video, like MPEG4 or H.26x. There is a way to add this, but it's not straightforward. This is a guide if you have an AMD video card installed.
To start with, you'll need to add the RPM Fusion repositories (both free and non-free) You can get instructions on how to do this from the repo website:
https://rpmfusion.org/
You'll then need to install the "extended" versions of the Mesa drivers that support the proprietary video codecs. By default, Fedora usually installs the "free" versions of these packages.
If you have "mesa-va-drivers" and "mesa-vdpau-drivers" installed, run these commands in a bash session:
You'll also need to swap the ffmpeg-free package for ffmpeg from RPM Fusion:
And update the multimedia software group:
After installing all of this, reboot the machine. You can check what codecs are enabled through VAAPI using "vainfo" in a bash session. This tool can be installed with the "libva-utils" package in dnf.
You can also view the current GPU usage using "radeontop", which is provided by the "radeontop" package in dnf.
Fedora and many other Linux distributions are on the FOSS bandwagon and don't include codecs that allow hardware decoding/encoding of video, like MPEG4 or H.26x. There is a way to add this, but it's not straightforward. This is a guide if you have an AMD video card installed.
To start with, you'll need to add the RPM Fusion repositories (both free and non-free) You can get instructions on how to do this from the repo website:
https://rpmfusion.org/
You'll then need to install the "extended" versions of the Mesa drivers that support the proprietary video codecs. By default, Fedora usually installs the "free" versions of these packages.
If you have "mesa-va-drivers" and "mesa-vdpau-drivers" installed, run these commands in a bash session:
Code: Select all
sudo dnf swap mesa-va-drivers mesa-va-drivers-freeworld
Code: Select all
sudo dnf swap mesa-vdpau-drivers-freeworld
Code: Select all
sudo dnf swap ffmpeg-free ffmpeg --allowerasing
Code: Select all
sudo dnf groupupdate multimedia
You can also view the current GPU usage using "radeontop", which is provided by the "radeontop" package in dnf.