Transcodeurs¶
Installation des transcodeurs pour Perfect Streamer.
Paquets disponibles :
pstreamer-tcsw — transcodage sur CPU (Software).
pstreamer-tcnv — transcodage sur GPU NVIDIA.
pstreamer-tcivpl — transcodage sur GPU Intel (Intel VPL).
L’exigence principale est la version de GLIBC >= 2.28.
Le transcodeur fonctionne sous AlmaLinux 8.9. Le transcodeur Intel VPL fonctionne sur les systèmes AlmaLinux 10 (RHEL 10) et Ubuntu 24.04.
Quel matériel Intel convient au transcodage, quels runtimes et codecs sont disponibles sur les différentes générations graphiques et comment vérifier que le matériel est reconnu — voir la section Transcodeur Intel VPL : matériel pris en charge.
RHEL 8+¶
Installer pstreamer.
Pour NVIDIA, installer les dépôts et mettre à jour le système (s’ils n’ont pas encore été installés) :
sudo dnf config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel9/x86_64/cuda-rhel9.repo
sudo dnf clean all
sudo dnf update -y
reboot
NVIDIA Encoder.
Installer CUDA :
sudo dnf -y install cuda-toolkit-12-5
Installer le pilote (choisissez une option) :
Legacy
sudo dnf -y module install nvidia-driver:latest-dkms
New
sudo dnf -y module install nvidia-driver:open-dkms
Après l’installation, il est impératif de redémarrer la machine :
reboot
Après le redémarrage, vérifier le fonctionnement du pilote :
nvidia-smi
modprobe nvidia
sudo lsmod | grep nvidia
ou
modprobe nouveau
sudo lsmod | grep nouveau
Intel VPL Encoder.
Installation du pilote Intel et d’Intel VPL (RHEL 10) :
dnf install -y intel-gpu-firmware
dnf install -y https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-$(rpm -E %rhel).noarch.rpm https://mirrors.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-$(rpm -E %rhel).noarch.rpm
dnf install -y intel-media-driver
dnf install -y intel-vpl-gpu-rt
Installer les paquets du transcodeur.
Méthode CPU Software :
sudo dnf install -y pstreamer-tcsw
NVIDIA GPU:
sudo dnf install -y pstreamer-tcnv
Intel VPL GPU:
sudo dnf install -y pstreamer-tcivpl
Ubuntu 22/24¶
Installer pstreamer.
NVIDIA Encoder.
Installer le toolkit CUDA version 12.5 :
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-5
Installer le pilote (choisissez une option) :
legacy kernel module flavor:
sudo apt-get install -y cuda-drivers
ou
open kernel module flavor:
sudo apt-get install -y nvidia-driver-555-open
sudo apt-get install -y cuda-drivers-555
Après l’installation, il est impératif de redémarrer la machine :
reboot
Après le redémarrage, vérifier le fonctionnement du pilote :
nvidia-smi
Le transcodeur nécessite la version CUDA 12.5 pour fonctionner. Une autre version de CUDA peut déjà être installée sur le système. De plus, lors de la mise à jour du système, CUDA peut être mis à niveau vers une version plus récente. Cela ne gêne pas le fonctionnement ; il n’est pas nécessaire de les supprimer, car les différentes versions de CUDA sont installées dans des répertoires distincts.
Intel VPL Encoder (Ubuntu 24.04).
Les composants clés d’Intel VPL proviennent du dépôt officiel Intel Graphics — dans les dépôts standard d’Ubuntu, ils sont plus anciens et ne prennent pas en charge les GPU modernes.
Ajouter le dépôt Intel Graphics :
sudo apt-get update
sudo apt-get install -y ca-certificates gnupg wget
wget -qO - https://repositories.intel.com/gpu/intel-graphics.key | sudo gpg --yes --dearmor --output /usr/share/keyrings/intel-graphics.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/intel-graphics.gpg] https://repositories.intel.com/gpu/ubuntu noble unified" | sudo tee /etc/apt/sources.list.d/intel-gpu-noble.list
sudo apt-get update
Installer le runtime Intel VPL et le pilote :
sudo apt-get install -y libvpl2 libmfxgen1 intel-media-va-driver-non-free
En complément, vous pouvez installer les outils de diagnostic :
sudo apt-get install -y libvpl-tools
L’utilisateur pss sous lequel le service s’exécute doit appartenir aux groupes render et video (accès aux périphériques /dev/dri/) :
sudo usermod -aG render,video pss
sudo systemctl restart pss
Vérifier que le GPU est visible (avec libvpl-tools installé) :
vainfo --display drm --device /dev/dri/renderD128
vpl-inspect
La sortie de vainfo doit contenir la ligne « Driver version: Intel iHD … », et vpl-inspect doit répertorier l’implémentation matérielle (AccelerationMode VAAPI).
Installer les paquets du transcodeur.
Méthode CPU Software :
sudo apt-get install -y pstreamer-tcsw
NVIDIA GPU:
sudo apt-get install -y pstreamer-tcnv
Intel VPL GPU (Ubuntu 24.04):
sudo apt-get install -y pstreamer-tcivpl
Fichiers et vérification de l’installation¶
Les paquets des transcodeurs installeront les fichiers suivants :
/usr/local/bin/tcsw — fichier exécutable du transcodeur SW (CPU).
/usr/local/bin/tcnv — fichier exécutable du transcodeur NVIDIA (GPU).
/usr/local/bin/tcivpl — fichier exécutable du transcodeur Intel VPL (GPU).
/opt/pss/config/pss_tc_sw.properties — fichier de configuration de démarrage du transcodeur SW (CPU).
/opt/pss/config/pss_tc_nv.properties — fichier de configuration de démarrage du transcodeur NVIDIA (GPU).
/opt/pss/config/pss_tc_ivpl.properties — fichier de configuration de démarrage du transcodeur Intel VPL (GPU).
L’installation des paquets du transcodeur redémarrera le service pss. Vous pouvez vérifier l’installation des transcodeurs dans la section About de l’interface web : la version des transcodeurs ou une erreur sera affichée.
Autres systèmes d’exploitation basés sur Debian et RHEL¶
Pour installer le transcodeur pstreamer-tcnv sur des systèmes d’exploitation autres qu’Ubuntu 22/24 et RHEL 8+, utilisez le configurateur pour choisir la version de CUDA et du pilote requise sur le site NVIDIA :
https://developer.nvidia.com/cuda-toolkit-archive
Lors de la sélection de chaque version de CUDA, des informations sont disponibles sur la version du système d’exploitation à laquelle elle convient. L’architecture prise en charge est x86_64. Si vous avez besoin d’une version plus ancienne du système d’exploitation, vérifiez sa prise en charge dans les versions plus anciennes de CUDA. L’exigence principale pour le système d’exploitation est la prise en charge de la version de GLIBC >= 2.28.
Le pilote NVIDIA doit être installé à partir du dépôt proposé pour la version de votre système d’exploitation sur la page de la version de CUDA sélectionnée.
La prise en charge des cartes graphiques NVIDIA pour la fonctionnalité du transcodeur pstreamer-tcnv peut être vérifiée sur le site NVIDIA dans la Video Encode and Decode Support Matrix. Cette page propose une matrice de prise en charge des formats vidéo pour le décodeur et l’encodeur, ainsi que d’autres caractéristiques.
Suppression de l’ancienne version de CUDA et du pilote¶
En cas d’installation d’une version incorrecte de CUDA et du pilote, il peut être nécessaire d’installer une autre version, après avoir préalablement supprimé celle installée.
Suppression de CUDA¶
RHEL:
dnf remove "cuda*" "*cublas*" "*cufft*" "*cufile*" "*curand*" "*cusolver*" "*cusparse*" "*gds-tools*" "*npp*" "*nvjpeg*" "nsight*" "*nvvm*" "*nvptx*"
Debian/Ubuntu:
apt remove --autoremove --purge "*cuda*" "*cublas*" "*cufft*" "*cufile*" "*curand*" "*cusolver*" "*cusparse*" "*gds-tools*" "*npp*" "*nvjpeg*" "nsight*" "*nvvm*" "*nvptx*"
Suppression du pilote¶
Ubuntu 22/24:
apt remove --autoremove --purge -V \
cuda-compat\* \
cuda-drivers\* \
libnvidia-cfg1\* \
libnvidia-compute\* \
libnvidia-decode\* \
libnvidia-encode\* \
libnvidia-extra\* \
libnvidia-fbc1\* \
libnvidia-gl\* \
libnvidia-gpucomp\* \
libnvidia-nscq\* \
libnvsdm\* \
libxnvctrl\* \
nvidia-dkms\* \
nvidia-driver\* \
nvidia-fabricmanager\* \
nvidia-firmware\* \
nvidia-headless\* \
nvidia-imex\* \
nvidia-kernel\* \
nvidia-modprobe\* \
nvidia-open\* \
nvidia-persistenced\* \
nvidia-settings\* \
nvidia-xconfig\* \
xserver-xorg-video-nvidia\*
RHEL 9:
dnf module remove --all nvidia-driver
dnf module reset nvidia-driver
RHEL 10:
dnf remove nvidia-driver\*