When installing with the RPM/DEB package file distributed in the OvenMediaEngine Enterprise, the Hardware-Accelerated Video Encoding is automatically enabled if the device has an NVIDIA Graphics Card or Xilinx Alveo U30MA card and the corresponding driver installed. Graphics drivers can be reinstalled, updated, or removed after the RPM/DEB package installation without affecting program execution. This section describes the supported versions, supported codecs, and the methods for driver installation and verification.
Supported OS and Driver Versions
Device
Support OS
Driver Verion
Supported Codecs
Device
Decoder
Filter
Encoder
Install and Check Drivers
NVIDIA Graphics Driver
The contents of this section are based on the misc/install_nvidia_driver.sh script provided by OvenMediaEngine as an Open-Source. If installation issues arise, please refer to the Official NVIDIA Documentation.
Ubuntu Linux 20.04 / 22.04
sudoapt-get-yupdatesudoapt-get-yinstall--no-install-recommendsapt-utilslshwsudoapt-get-yinstall--no-install-recommendskeyboard-configurationsudoapt-get-yinstall--no-install-recommendsubuntu-drivers-commonsudoapt-get-yinstall--no-install-recommendsgnupg2ca-certificatessoftware-properties-common# Uninstalling a previously installed NVIDIA Driversudoapt-get-yremove--purgenvidia-*sudoapt-get-yautoremovesudoapt-get-yupdate# Remove the nouveau driver.# If the nouveau driver is in use, the nvidia driver cannot be installed.USE_NOUVEAU=`sudolshw-classvideo|grepnouveau`if [ !-z"$USE_NOUVEAU" ]; then# Disable nouveau Driverecho"blacklist nouveau">>/etc/modprobe.d/blacklist.confecho"blacklist lbm-nouveau">>/etc/modprobe.d/blacklist.confecho"options nouveau modeset=0">>/etc/modprobe.d/blacklist.confecho"alias nouveau off">>/etc/modprobe.d/blacklist.confecho"alias lbm-nouveau off">>/etc/modprobe.d/blacklist.confsudoupdate-initramfs-u echo "Using a driver display nouveau.Remove the driver and reboot.Reboot and installation script to rerun the nvidia display the driver to complete the installation."
sleep5srebootfi# Custom Driver VersionNVIDIA_DRIVER_VERSION=# Install nvidia drivers and cuda-toolitsudoadd-apt-repository-yppa:graphics-drivers/ppasudoapt-yupdateif [ -z"$NVIDIA_DRIVER_VERSION" ]then# installation with recommended versionsudoubuntu-driversautoinstallelse# installation with specific versionsudoapt-getinstall-y--no-install-recommendsnvidia-driver-${NVIDIA_DRIVER_VERSION}fisudoapt-getinstall-y--no-install-recommendsnvidia-cuda-toolkit
Rocky Linux (Verification Required)
sudoyum-yupdatesudoyum-yinstallkernel-develsudoyum-yinstallepel-releasesudoyum-yinstalldkmscurllshwsudoyum-yinstallsubscription-managerecho"Reboot is required to run with a new version of the kernel."# Remove the nouveau driver.USE_NOUVEAU=`lshw-classvideo|grepnouveau`if [ !-z"$USE_NOUVEAU" ]; then# Disable nouveau Driver sudo sed "s/GRUB_CMDLINE_LINUX=\"\(.*\)\"/GRUB_CMDLINE_LINUX=\"\1 rd.driver.blacklist=nouveau nouveau.modeset=0\"/" /etc/default/grub
sudogrub2-mkconfig-o/boot/grub2/grub.cfgsudoecho"blacklist nouveau">>/etc/modprobe.d/blacklist.confsudomv/boot/initramfs-$(uname-r).img/boot/initramfs-$(uname-r)-nouveau.imgsudodracut/boot/initramfs-$(uname-r).img $(uname-r)echo"Using a driver display nouveau. so, remove the driver and reboot. " echo "After reboot and installation script to rerun the nvidia display the driver to complete the installation."
sleep5ssudorebootfisudosubscription-managerrepos--enable=rhel-7-server-optional-rpmssudo yum-config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/cuda-rhel7.repo
sudoyumcleanexpire-cachesudoyum-yinstallnvidia-driver-latest-dkmssudoyum-yinstallcudasudoyum-yinstallcuda-drivers
Install and Check the Driver
# nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Sun_Jul_28_19:07:16_PDT_2019
Cuda compilation tools, release 10.1, V10.1.243
# nvidia-smi
Wed Jul 3 23:30:00 2024
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.256.02 Driver Version: 470.256.02 CUDA Version: 11.4 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce ... Off | 00000000:0A:00.0 Off | N/A |
| 55% 33C P8 10W / 120W | 2MiB / 3018MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+
XILINX Video SDK 3.0 Driver
The Xilinx Video SDK 3.0 driver officially supports Ubuntu, Red Hat Linux 7.8, and Amazon Linux 2. This part specifically covers Ubuntu. For detailed information, please refer to the Official Xilinx Documentation.
Once the RPM/DEB package and driver installation are complete, you need to verify that the drivers are correctly loaded and the Hardware-Accelerated Video Encoding is activated in OvenMediaEngine. This can be checked through the OvenMediaEngine's Log files.