Einrichtung

Systemanforderungen

  • Perfect Streamer läuft unter Linux. Hauptanforderung: GLIBC >= 2.17.

  • Die vom Streamer-Dienst genutzten Netzwerkschnittstellen müssen statisch konfiguriert sein.

  • Die Installer-Skripte nutzen das Werkzeug sudo — es muss daher im System installiert sein.

Für die Familien Red Hat und Debian liegen Installationspakete und Repositories vor. Unterstützt werden RHEL 7 und höher (CentOS u. a.). Debian-basierte Systeme (Ubuntu usw.) müssen systemd nutzen.

Hardware-Richtwerte: 1 Kern @ 2,4 GHz und 1 GB RAM pro 200 Mbit Datenverkehr. Die Schätzung ist näherungsweise und hängt von den eingesetzten Protokollen und Einstellungen ab.

Eigenschaften der kostenlosen Demo-Version:

  • Auf 10 Streams begrenzt

  • Transkoder läuft nur im Software-CPU-Modus

  • Ohne Einschränkungen im Funktionsumfang

  • Ohne Zeitbeschränkung

Die Pakete unterscheiden sich zwischen Voll- und Demo-Version. Verwenden Sie für die Installation der Demo-Version das Paket pstreamer-demo. Beim Wechsel auf die Vollversion muss zuerst die Demo deinstalliert und dann die Vollversion installiert werden. Die Konfigurationsdatei der Demo ist mit der Vollversion kompatibel, aber eine Konfigurationsdatei der Vollversion kann mit pstreamer-demo inkompatibel sein — der Dienst startet möglicherweise nicht und die manuelle Entfernung der Datei pss.json kann erforderlich sein.

Installation auf RHEL-Systemen

Repository für RHEL 7 installieren:

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

Oder für RHEL 8+:

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

Paket installieren:

$ sudo yum -y install pstreamer

or

$ sudo yum -y install pstreamer-demo

Paket aktualisieren:

$ sudo yum -y update pstreamer

or

$ sudo yum -y update pstreamer-demo

Alle Pakete entfernen:

$ sudo yum -y remove pstreamer aksusbd

or

$ sudo yum -y remove pstreamer-demo

Installation auf Debian-Systemen

Repository installieren:

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

Paket installieren:

$ sudo apt-get install pstreamer

or

$ sudo apt-get install pstreamer-demo

Paket aktualisieren:

$ sudo apt install pstreamer

or

$ sudo apt install pstreamer-demo

Alle Pakete entfernen:

$ sudo apt-get remove pstreamer aksusbd

or

$ sudo apt-get remove pstreamer-demo

Dateien und Dienste

/usr/local/bin/pss

Ausführbare Datei.

/opt/pss/config/pss.properties

Globale Einstellungen, Logs, Pfade usw. Nach Änderungen den Dienst neu starten.

/opt/pss/config/pss.json

Konfigurationsdatei. Wird automatisch erstellt und aktualisiert.

/opt/pss/config/pss_default.json

Standardkonfigurationsdatei. Wird verwendet, wenn die Einstellungen beschädigt oder gelöscht sind.

/opt/pss/config/pss_back.json

Beim Restore zwischengespeicherte Konfigurationsdatei; wird verwendet, falls die wiederhergestellte Konfiguration Fehler enthält.

/opt/pss/data

Datenverzeichnis. Wird automatisch erstellt und aktualisiert. Kann in der globalen Konfigurationsdatei geändert werden.

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

systemd-Service-Datei.

/var/log/pss

Log-Verzeichnis. Kann in der globalen Konfigurationsdatei geändert werden.

Dienstname pss. Wird unter dem Benutzer pss ausgeführt.

Während der Installation wird das Begleitpaket aksusbd des Schutzsystems installiert; es enthält die Dienste hasplmd und aksusbd.

Nach der Installation

Nach der Installation von Perfect Streamer Aktivierung und Erstkonfiguration des Dienstes durchführen.

Transkoder

Installation der Transkoder für Perfect Streamer.

Verfügbare Pakete:

  • pstreamer-tcsw: Transkodierung auf CPU (Software).

  • pstreamer-tcnv: Transkodierung auf Nvidia-GPU. Nur für das Paket pstreamer (Vollversion mit Schutz).

  • pstreamer-tcivpl: Transkodierung auf Intel-GPU. Nur für das Paket pstreamer (Vollversion mit Schutz).

Haupterfordernis: GLIBC >= 2.28.

Funktioniert jetzt unter Alma Linux 8.9.

Intel VPL-Transkoder funktioniert auf Alma-Linux-10-Systemen (RHEL 10).

RHEL 8+

  1. pstreamer oder pstreamer-demo installieren.

  2. Für Nvidia die Repositories installieren und das System aktualisieren (falls noch nicht geschehen):

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.

  • CUDA installieren:

sudo dnf -y install cuda-toolkit-12-5
  • Treiber installieren (Variante wählen):

Legacy

sudo dnf -y module install nvidia-driver:latest-dkms

New

sudo dnf -y module install nvidia-driver:open-dkms

Nach der Installation den Rechner unbedingt neu starten:

reboot

Nach dem Neustart die Treiberfunktion prüfen:

nvidia-smi
modprobe nvidia
sudo lsmod | grep nvidia

oder

modprobe nouveau
sudo lsmod | grep nouveau
  1. Intel VPL Encoder.

  • Intel-Treiber und Intel VPL installieren (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. Transkoder-Pakete installieren.

  • CPU-Software-Methode:

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. pstreamer oder pstreamer-demo installieren.

  2. NVidia Encoder.

  • CUDA Toolkit Version 12.5 installieren:

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
  • Treiber installieren (Variante wählen):

legacy kernel module flavor:

sudo apt-get install -y cuda-drivers

oder

open kernel module flavor:

sudo apt-get install -y nvidia-driver-555-open
sudo apt-get install -y cuda-drivers-555

Nach der Installation den Rechner unbedingt neu starten:

reboot

Nach dem Neustart die Treiberfunktion prüfen:

nvidia-smi

Für den Betrieb des Transkoders ist CUDA 12.5 erforderlich. Im System kann bereits eine andere CUDA-Version installiert sein. Auch beim System-Update ist ein Upgrade auf eine neuere CUDA-Version möglich. Das beeinträchtigt den Betrieb nicht — die alten Versionen müssen nicht entfernt werden, da unterschiedliche CUDA-Versionen in separaten Verzeichnissen installiert werden.

  1. Transkoder-Pakete installieren.

  • CPU-Software-Methode:

sudo apt-get install -y pstreamer-tcsw
  • Nvidia GPU:

sudo apt-get install -y pstreamer-tcnv

Die Transkoder-Pakete installieren folgende Dateien:

  • /usr/local/bin/tcsw — ausführbare Datei des SW(CPU)-Transkoders.

  • /usr/local/bin/tcnv — ausführbare Datei des Nvidia-(GPU-)Transkoders.

  • /opt/pss/config/pss_tc_sw.properties — Startkonfigurationsdatei des SW-(CPU-)Transkoders.

  • /opt/pss/config/pss_tc_nv.properties — Startkonfigurationsdatei des Nvidia-(GPU-)Transkoders.

  1. Transkoder-Installation prüfen.

Die Installation der Transkoder-Pakete startet den pss-Dienst neu. Die Installation lässt sich im Bereich About prüfen — Version oder Fehler werden angezeigt.

Weitere auf Debian und RHEL basierende Systeme

Zur Installation des pstreamer-tcnv-Transkoders auf anderen OS als Ubuntu 22/24 und RHEL 8+ verwenden Sie den Konfigurator auf der Nvidia-Website, um passende CUDA- und Treiberversionen zu wählen:

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

Bei der Auswahl jeder CUDA-Version ist die Information verfügbar, für welche OS-Version sie geeignet ist. Unterstützte Architektur — x86_64. Wenn eine ältere OS-Version benötigt wird, prüfen Sie deren Unterstützung in älteren CUDA-Versionen. Die Hauptanforderung an das OS — Unterstützung von GLIBC >= 2.28.

Der Nvidia-Treiber muss aus dem Repository installiert werden, das auf der Seite der gewählten CUDA-Version für Ihre OS-Version angeboten wird.

Die Unterstützung von Nvidia-Grafikkarten für die Transkoder-Funktionalität pstreamer-tcnv lässt sich auf der Nvidia-Website unter Video Encode and Decode Support Matrix prüfen. Auf dieser Seite stehen die Matrix der unterstützten Videoformate für Decoder und Encoder sowie weitere Eigenschaften zur Verfügung.

Entfernen der alten CUDA- und Treiber-Version

Bei einer falschen CUDA-/Treiberversion ist ggf. ein Wechsel auf eine andere Version nötig — zuerst die bestehende Installation entfernen.

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

CUDA entfernen

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

Treiber entfernen

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