Installation

Configuration système requise

  • Perfect Streamer fonctionne sous Linux. Exigence principale : GLIBC >= 2.17.

  • Les interfaces réseau utilisées par le service streamer doivent avoir une configuration statique.

  • Les scripts d’installation utilisent l’utilitaire sudo ; celui-ci doit donc être installé sur le système.

Pour les familles Red Hat et Debian, des paquets d’installation et des dépôts sont fournis. RHEL 7 et plus récent sont pris en charge (CentOS, etc.). Les systèmes basés sur Debian (Ubuntu, etc.) doivent utiliser systemd.

Exigences indicatives : 1 cœur 2,4 GHz et 1 Go de RAM pour chaque 200 Mbit/s de trafic. Estimation approximative dépendant des protocoles et des réglages du service.

Particularités de la version gratuite Demo :

  • Limité à 10 flux

  • Le transcodeur fonctionne uniquement en mode Software CPU

  • Sans limitations fonctionnelles

  • Sans limite de temps

Les paquets diffèrent entre les versions complète et Demo. Pour installer la version Demo, utilisez le paquet pstreamer-demo. Lors du passage à la version complète, il faut d’abord désinstaller la Demo, puis installer la version complète. Le fichier de configuration de la Demo est compatible avec la version complète, mais le fichier de configuration de la version complète peut être incompatible avec pstreamer-demo — le service peut ne pas démarrer et la suppression manuelle du fichier pss.json peut être nécessaire.

Installation sur les systèmes RHEL

Installer le dépôt pour RHEL 7 :

$ sudo yum install yum-utils
$ sudo yum-config-manager --add-repo=http://repo.pstreamer.tv/pub/pstreamer/pstreamer.repo

Ou pour RHEL 8+ :

$ sudo yum config-manager --add-repo=http://repo.pstreamer.tv/pub/pstreamer/pstreamer.repo

Installer le paquet :

$ sudo yum -y install pstreamer

or

$ sudo yum -y install pstreamer-demo

Mettre à jour le paquet :

$ sudo yum -y update pstreamer

or

$ sudo yum -y update pstreamer-demo

Suppression de tous les paquets :

$ sudo yum -y remove pstreamer aksusbd

or

$ sudo yum -y remove pstreamer-demo

Installation sur les systèmes Debian

Installer le dépôt :

$ sudo wget http://repo.pstreamer.tv/pub/deb/dists/pstreamer/pstreamer.list -O /etc/apt/sources.list.d/pstreamer.list
$ sudo apt-get update

Installer le paquet :

$ sudo apt-get install pstreamer

or

$ sudo apt-get install pstreamer-demo

Mettre à jour le paquet :

$ sudo apt install pstreamer

or

$ sudo apt install pstreamer-demo

Suppression de tous les paquets :

$ sudo apt-get remove pstreamer aksusbd

or

$ sudo apt-get remove pstreamer-demo

Fichiers et services

/usr/local/bin/pss

Fichier exécutable.

/opt/pss/config/pss.properties

Paramètres globaux, logs, chemins, etc. Après modifications, redémarrer le service.

/opt/pss/config/pss.json

Fichier de configuration. Créé et mis à jour automatiquement.

/opt/pss/config/pss_default.json

Fichier de configuration par défaut. Utilisé en cas de corruption ou de suppression des paramètres.

/opt/pss/config/pss_back.json

Fichier de configuration conservé lors de la restauration, utilisé si le fichier restauré contient des erreurs.

/opt/pss/data

Dossier des données. Créé et mis à jour automatiquement. Peut être modifié dans le fichier de configuration globale.

/usr/lib/systemd/system/pss.service

Fichier de service systemd.

/var/log/pss

Dossier de logs. Modifiable dans le fichier de configuration globale.

Nom du service pss. S’exécute sous l’utilisateur pss.

Au cours de l’installation, le paquet associé aksusbd du système de protection est installé ; il inclut les services hasplmd et aksusbd.

Après installation

Après l’installation de Perfect Streamer, procéder à l’activation et à la configuration initiale.

Transcodeurs

Installation des transcodeurs pour Perfect Streamer.

Paquets disponibles :

  • pstreamer-tcsw : transcodage sur CPU (Software).

  • pstreamer-tcnv : transcodage sur GPU Nvidia. Uniquement pour le paquet pstreamer (version complète protégée).

  • pstreamer-tcivpl : transcodage sur GPU Intel. Uniquement pour le paquet pstreamer (version complète avec protection).

Exigence principale : GLIBC >= 2.28.

Fonctionne désormais sous Alma Linux 8.9.

Le transcodeur Intel VPL fonctionne sur les systèmes Alma Linux 10 (RHEL 10).

RHEL 8+

  1. Installer pstreamer ou pstreamer-demo.

  2. Pour Nvidia, installer les dépôts et mettre le système à jour (si ce n’est pas déjà fait) :

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
  1. NVidia Encoder.

  • Installer CUDA :

sudo dnf -y install cuda-toolkit-12-5
  • Installer le pilote (choisir 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 faut impérativement 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
  1. 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
  1. 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

  1. Installer pstreamer ou pstreamer-demo.

  2. NVidia Encoder.

  • Installer le CUDA Toolkit 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 (choisir 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 faut impérativement redémarrer la machine :

reboot

Après le redémarrage, vérifier le fonctionnement du pilote :

nvidia-smi

Le transcodeur nécessite CUDA 12.5. Une autre version de CUDA peut déjà être installée sur le système. Lors d’une mise à jour du système, CUDA peut également être mis à niveau vers une version plus récente. Cela n’interfère pas avec le fonctionnement — il n’est pas nécessaire de les supprimer, car les différentes versions de CUDA sont installées dans des dossiers séparés.

  1. 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

Les paquets de transcodeurs installent les fichiers :

  • /usr/local/bin/tcsw — exécutable du transcodeur SW (CPU).

  • /usr/local/bin/tcnv — exécutable du transcodeur Nvidia (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).

  1. Vérifier l’installation du transcodeur.

L’installation des paquets du transcodeur redémarre le service pss. Vérifier l’installation dans la section About — la version ou une erreur est affichée.

Autres OS basés sur Debian et RHEL

Pour installer le transcodeur pstreamer-tcnv sur des OS autres qu’Ubuntu 22/24 et RHEL 8+, utilisez le configurateur du site Nvidia pour choisir la version de CUDA et du pilote :

https://developer.nvidia.com/cuda-toolkit-archive

Lors du choix de chaque version de CUDA, l’information sur les versions d’OS prises en charge est disponible. Architecture prise en charge — x86_64. Si une version d’OS plus ancienne est requise, vérifiez sa prise en charge dans des versions plus anciennes de CUDA. L’exigence principale du système d’exploitation — la prise en charge de GLIBC >= 2.28.

Le pilote Nvidia doit être installé depuis le dépôt proposé pour votre version d’OS sur la page de la version CUDA choisie.

La prise en charge des cartes Nvidia pour le transcodeur pstreamer-tcnv peut être vérifiée sur le site Nvidia dans Video Encode and Decode Support Matrix. Cette page contient la matrice de prise en charge des formats vidéo pour le decoder et l’encoder, ainsi que d’autres caractéristiques.

Suppression de l’ancienne version de CUDA et du pilote

Si la version installée de CUDA et du pilote est incorrecte, il peut être nécessaire de passer à une autre version en désinstallant d’abord l’existante.

https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html?highlight=uninstall#removing-cuda-toolkit

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\*