Bereitstellung eines dedizierten Media-Streamers: Experten-Tipps zur Installation von DVB-Tuner-Treibern auf Proxmox und Ubuntu
- Created: 2024-09-17 11:47
- Updated: 2025-03-12 14:11
Einführung
Im anspruchsvollen Umfeld von Rechenzentren spielen dedizierte Medien-Streamer eine entscheidende Rolle bei der Bereitstellung hochwertiger DVB-Streaming-Dienste. Die Digital Devices Max SX8 Pro (4/8) – 8-Tuner-TV-Karte ist eine erstklassige Lösung, die für solche anspruchsvollen Anwendungen entwickelt wurde. Mit acht DVB-S/S2/S2X-Tunern auf einer einzigen PCI-Express-Karte bietet diese Karte eine beispiellose Kombination aus Leistung, Effizienz und Vielseitigkeit. Das kompakte Design, der geringe Stromverb
Spezifikationen
BBFrame Output: 1
DVB Satellite Reception Properties: 8APSK-L [5/9|26/45], 8PSK [3/5|2/3|3/4|5/6|8/9|9/10], 8PSK [23/36|25/36|13/18], 16APSK-L [5/9|8/15|1/2|3/5|2/3], 16APSK [2/3|3/4|5/6|8/9|9/10], 16APSK [26/45|3/5|28/45|23/36|13/18|7/9|77/90], 32APSK-L [2/3], 32APSK [3/4|4/5|5/6|8/9|9/10], 32APSK [32/45|11/15|7/9], 64APSK-L [32/45], 64APSK [11/15|7/9|4/5|5/6], 128APSK [3/4|7/9], 256APSK-L [29/45|2/3|31/45|11/15], 256APSK [32/45|3/4], ACM (Adaptive Coding and Modulation), Annex M, Channel Bonding (S2X), Error correction: LDPC 720 MBit/s, Long Frames, MIS (Multiple Input Streams), Maximum Baudrate 500MBits, Maximum DVB-S2/S2X LDPC-Bitrate for all 8 Tuners is 720 MBit/s, QPSK [1/2|3/5|2/3|3/4|4/5|8/9|8/10], QPSK [1/4|1/3|2/5], QPSK [13/45|9/20|11/20], Short Frames, VCM (Variable Coding and Modulation), VL-SNR
Maximum Symbol Rates: 8APSK [86], 8PSK [86], 16APSK [64.5], 32APSK [51.6], 64APSK [43], 128APSK [36.85], 256APSK [32.25], Annex M 500, QPSK [~95]
DVB Standards: DVB-S, DVB-S2, DVB-S2X
Demodulators/Channels/Tuners (Frontends): 8
Power Consumption: approx. 7 watts without LNB power
Features: DiSEqC 2.x via SCR, Digital TV, HD (H.264/MPEG-4), SD (H.262/MPEG-2), UHD (H.265/HEVC), Unicable I (SCR) EN50494, Unicable II | JESS (SCR) EN50607
Autodeploy-Skript: DKMS-Treiber DDDVB-0.9.39 für Proxmox 8
#!/bin/bash
# Install essential build tools and kernel headers
apt -y install git make cmake gcc dvb-tools htop dkms build-essential patchutils libproc-processtable-perl pve-headers-$(uname -r)
# Download and extract the driver source code
echo "Downloading and extracting the driver source code..."
cd /usr/src/
wget https://github.com/DigitalDevices/dddvb/archive/0.9.39.tar.gz -O dddvb-0.9.39.tar.gz
tar -xf dddvb-0.9.39.tar.gz
cd dddvb-0.9.39
# Create the dkms.conf configuration file
echo "Creating dkms.conf file..."
cat < /dev/null
PACKAGE_NAME=dddvb
PACKAGE_VERSION=0.9.39
# Comment or remove the next line to avoid deprecated warnings
# REMAKE_INITRD=no
MAKE="make -j 4 KERNELDIR=/lib/modules/${kernelver}/build"
CLEAN="make clean"
AUTOINSTALL=yes
BUILT_MODULE_NAME[0]=tda18271c2dd
BUILT_MODULE_LOCATION[0]=frontends
DEST_MODULE_LOCATION[0]=/updates/dkms
BUILT_MODULE_NAME[1]=stv090x
BUILT_MODULE_LOCATION[1]=frontends
DEST_MODULE_LOCATION[1]=/updates/dkms
BUILT_MODULE_NAME[2]=lnbh25
BUILT_MODULE_LOCATION[2]=frontends
DEST_MODULE_LOCATION[2]=/updates/dkms
BUILT_MODULE_NAME[3]=drxk
BUILT_MODULE_LOCATION[3]=frontends
DEST_MODULE_LOCATION[3]=/updates/dkms
BUILT_MODULE_NAME[4]=cxd2843
BUILT_MODULE_LOCATION[4]=frontends
DEST_MODULE_LOCATION[4]=/updates/dkms
BUILT_MODULE_NAME[5]=stv0367dd
BUILT_MODULE_LOCATION[5]=frontends
DEST_MODULE_LOCATION[5]=/updates/dkms
BUILT_MODULE_NAME[6]=stv6111
BUILT_MODULE_LOCATION[6]=frontends
DEST_MODULE_LOCATION[6]=/updates/dkms
BUILT_MODULE_NAME[7]=tda18212dd
BUILT_MODULE_LOCATION[7]=frontends
DEST_MODULE_LOCATION[7]=/updates/dkms
BUILT_MODULE_NAME[8]=cxd2099
BUILT_MODULE_LOCATION[8]=frontends
DEST_MODULE_LOCATION[8]=/updates/dkms
BUILT_MODULE_NAME[9]=lnbp21
BUILT_MODULE_LOCATION[9]=frontends
DEST_MODULE_LOCATION[9]=/updates/dkms
BUILT_MODULE_NAME[10]=stv6110x
BUILT_MODULE_LOCATION[10]=frontends
DEST_MODULE_LOCATION[10]=/updates/dkms
BUILT_MODULE_NAME[11]=stv0910
BUILT_MODULE_LOCATION[11]=frontends
DEST_MODULE_LOCATION[11]=/updates/dkms
BUILT_MODULE_NAME[12]=mxl5xx
BUILT_MODULE_LOCATION[12]=frontends
DEST_MODULE_LOCATION[12]=/updates/dkms
BUILT_MODULE_NAME[13]=ddbridge
BUILT_MODULE_LOCATION[13]=ddbridge
DEST_MODULE_LOCATION[13]=/updates/dkms
BUILT_MODULE_NAME[14]=octonet
BUILT_MODULE_LOCATION[14]=ddbridge
DEST_MODULE_LOCATION[14]=/updates/dkms
BUILT_MODULE_NAME[15]=dvb-core
BUILT_MODULE_LOCATION[15]=dvb-core
DEST_MODULE_LOCATION[15]=/updates/dkms
EOF
# Clean up any previous builds
echo "Cleaning up any previous builds..."
sudo dkms remove dddvb/0.9.39 --all || true
# Add the module to the DKMS tree
echo "Adding the module to DKMS..."
sudo dkms add dddvb/0.9.39
# Build the module
echo "Building the module..."
sudo dkms build dddvb/0.9.39 --force
# Install the module
echo "Installing the module..."
sudo dkms install dddvb/0.9.39 --force
# Verify the installation
echo "Verifying the installation..."
dkms status | grep dddvb
echo "Installation complete."
Autodeploy-Skript: DKMS-Treiber DDDVB-0.9.39 für Ubuntu 22.04
#!/bin/bash
# Script to auto-deploy ddbridge kernel module with DKMS on Ubuntu
# Exit immediately if a command exits with a non-zero status
set -e
# Update package list and install required packages
echo "Updating package list and installing DKMS..."
sudo apt-get update
sudo apt-get install -y dvb-tools htop dkms build-essential linux-headers-$(uname -r) git wget
# Download and extract the driver source code
echo "Downloading and extracting the driver source code..."
cd /usr/src/
wget https://github.com/DigitalDevices/dddvb/archive/0.9.39.tar.gz -O dddvb-0.9.39.tar.gz
tar -xf dddvb-0.9.39.tar.gz
cd dddvb-0.9.39
# Create the dkms.conf configuration file
echo "Creating dkms.conf file..."
cat <<EOF | sudo tee dkms.conf > /dev/null
PACKAGE_NAME=dddvb
PACKAGE_VERSION=0.9.39
# Comment or remove the next line to avoid deprecated warnings
# REMAKE_INITRD=no
MAKE="make -j 4 KERNELDIR=/lib/modules/\${kernelver}/build"
CLEAN="make clean"
AUTOINSTALL=yes
BUILT_MODULE_NAME[0]=tda18271c2dd
BUILT_MODULE_LOCATION[0]=frontends
DEST_MODULE_LOCATION[0]=/updates/dkms
BUILT_MODULE_NAME[1]=stv090x
BUILT_MODULE_LOCATION[1]=frontends
DEST_MODULE_LOCATION[1]=/updates/dkms
BUILT_MODULE_NAME[2]=lnbh25
BUILT_MODULE_LOCATION[2]=frontends
DEST_MODULE_LOCATION[2]=/updates/dkms
BUILT_MODULE_NAME[3]=drxk
BUILT_MODULE_LOCATION[3]=frontends
DEST_MODULE_LOCATION[3]=/updates/dkms
BUILT_MODULE_NAME[4]=cxd2843
BUILT_MODULE_LOCATION[4]=frontends
DEST_MODULE_LOCATION[4]=/updates/dkms
BUILT_MODULE_NAME[5]=stv0367dd
BUILT_MODULE_LOCATION[5]=frontends
DEST_MODULE_LOCATION[5]=/updates/dkms
BUILT_MODULE_NAME[6]=stv6111
BUILT_MODULE_LOCATION[6]=frontends
DEST_MODULE_LOCATION[6]=/updates/dkms
BUILT_MODULE_NAME[7]=tda18212dd
BUILT_MODULE_LOCATION[7]=frontends
DEST_MODULE_LOCATION[7]=/updates/dkms
BUILT_MODULE_NAME[8]=cxd2099
BUILT_MODULE_LOCATION[8]=frontends
DEST_MODULE_LOCATION[8]=/updates/dkms
BUILT_MODULE_NAME[9]=lnbp21
BUILT_MODULE_LOCATION[9]=frontends
DEST_MODULE_LOCATION[9]=/updates/dkms
BUILT_MODULE_NAME[10]=stv6110x
BUILT_MODULE_LOCATION[10]=frontends
DEST_MODULE_LOCATION[10]=/updates/dkms
BUILT_MODULE_NAME[11]=stv0910
BUILT_MODULE_LOCATION[11]=frontends
DEST_MODULE_LOCATION[11]=/updates/dkms
BUILT_MODULE_NAME[12]=mxl5xx
BUILT_MODULE_LOCATION[12]=frontends
DEST_MODULE_LOCATION[12]=/updates/dkms
BUILT_MODULE_NAME[13]=ddbridge
BUILT_MODULE_LOCATION[13]=ddbridge
DEST_MODULE_LOCATION[13]=/updates/dkms
BUILT_MODULE_NAME[14]=octonet
BUILT_MODULE_LOCATION[14]=ddbridge
DEST_MODULE_LOCATION[14]=/updates/dkms
BUILT_MODULE_NAME[15]=dvb-core
BUILT_MODULE_LOCATION[15]=dvb-core
DEST_MODULE_LOCATION[15]=/updates/dkms
EOF
# Clean up any previous builds
echo "Cleaning up any previous builds..."
sudo dkms remove dddvb/0.9.39 --all || true
# Add the module to the DKMS tree
echo "Adding the module to DKMS..."
sudo dkms add dddvb/0.9.39
# Build the module
echo "Building the module..."
sudo dkms build dddvb/0.9.39 --force
# Install the module
sudo dkms install dddvb/0.9.39 --force
# Verify the installation
echo "Verifying the installation..."
dkms status | grep dddvb
echo "Installation complete."
Erweiterte Systemvorbereitung
Hinweis: Für eine schnelle Bereitstellung und eine vereinfachte Ausführung dieser Skripte wird empfohlen, das Tool ‘cURL’ zu installieren. Dies ermöglicht das effiziente Herunterladen und Ausführen von Skripten direkt über die Kommandozeile.
Um cURL zu installieren, führen Sie den folgenden Befehl aus:
sudo apt install curl
Wenn Sie wget bevorzugen, laden Sie die Skripte herunter, machen Sie sie ausführbar und führen Sie sie mit den folgenden Befehlen aus:
chmod u+x script.sh && ./script.sh
Bash-Skripte ausführen
Um ein Bash-Skript in einer Linux-Umgebung auszuführen, geben Sie den vollständigen Pfad zum Skript an und fügen Sie alle erforderlichen Argumente hinzu:
./path/to/script <arg1> <arg2> ... <argn>
Digital Devices-Skripte: Wesentliche Werkzeuge für die DVB-Verwaltung
1. ddinfo.sh
Das ddinfo.sh-Skript ist ein unverzichtbares Werkzeug zum Sammeln umfassender Informationen über Digital Devices-Karten, einschließlich Kartenidentifikation, PCI-Adresse, Firmware-/Treiber-Versionen und Betriebstemperatur. Dieses Skript ist entscheidend für die Überwachung und Fehlerbehebung in anspruchsvollen Umgebungen.
Verbose-Modus: Aktivieren Sie den Verbose-Modus, indem Sie die Option -v für eine detaillierte Ausgabe verwenden.
Skript-Standort: http://linuxsupport.digital-devices.eu/ddinfo.sh
Beispiel für die Verwendung:
curl -s http://linuxsupport.digital-devices.eu/ddinfo.sh | bash
2. dddvb_build.sh
Das dddvb_build.sh-Skript automatisiert die Kompilierung der DDDVB-Treiber und bietet eine Reihe von Konfigurationsoptionen, die sich an verschiedene Bereitstellungsszenarien anpassen. Dieses Skript erfordert Root-Rechte.
Optionen:
-g|--git: Laden Sie die neueste Git-Version der Treiber herunter und bauen Sie sie.-f|--fmode: Konfigurieren Sie den Betriebsmodus für Max S8/SX8/SX8 Basic Karten.-v|--version: Geben Sie die Treiberversion an (z. B. 37 für 0.9.37, 38 für 0.9.38, 39 für 0.9.39).-m|--max-adapters: Legen Sie die maximale Anzahl an Adaptern fest (Standard ist 64).-M|--msi: Aktivieren oder deaktivieren Sie MSI für ddbridge.
Skript-Standort: http://linuxsupport.digital-devices.eu/dddvb_build.sh
Beispiel für die Verwendung:
# curl -s http://linuxsupport.digital-devices.eu/dddvb_build.sh | bash
# curl -s http://linuxsupport.digital-devices.eu/dddvb_build.sh | bash /dev/stdin -g
# curl -s http://linuxsupport.digital-devices.eu/dddvb_build.sh | bash /dev/stdin -g -f 2
# curl -s http://linuxsupport.digital-devices.eu/dddvb_build.sh | bash /dev/stdin -v 39 -f 1
3. dd_fw_update.sh
Das dd_fw_update.sh-Skript erleichtert die Aktualisierung des Firmwares auf allen DVB-Karten im System. Dieses Skript ist entscheidend für die Aufrechterhaltung der neuesten Funktionen und Fehlerbehebungen in hochdichten Streaming-Umgebungen. Da dieses Skript alle Karten im System betrifft, wird empfohlen, spezifische Anweisungen zu befolgen, wenn Firmware-Updates für einzelne Karten erforderlich sind.
Skript-Standort: http://linuxsupport.digital-devices.eu/dd_fw_update.sh
Um das Firmware zu aktualisieren:
curl -s http://linuxsupport.digital-devices.eu/dd_fw_update.sh | bash
DDbridge-Modusauswahl
Die Digital Devices Max SX8 Pro (4/8) bietet mehrere Betriebsmodi, die sich an verschiedene Installationsszenarien anpassen. Diese Modi ermöglichen Flexibilität bei der Verbindung mit unterschiedlichen Arten von LNBs und Multischaltern. Nachfolgend finden Sie eine detaillierte Beschreibung jedes Modus, begleitet von einer Bildkarte, die eine visuelle Anleitung zu den Verbindungstypen bietet:
Betriebsmodus 0: 4 Sintonizadores Directos
Der “4 Sintonizadores”-Modus ermöglicht es, dass die vier Eingänge der Karte als einzelne Sintonizadores funktionieren. Dieser Modus unterstützt mehrere Satelliten (DiSEqC) und erfordert 1 bis 4 Kabel von einem Multischalter oder einem LNB mit integriertem Multischalter.
Betriebsmodus 1: Quad LNB oder 4 Multischalter-Ausgänge
Verwenden Sie diese Option, um Ihre Max SX8 mit einem standardmäßigen Multischalter oder einem LNB mit integriertem Multischalter (QUAD LNB oder OCTO LNB) zu verbinden. Diese Konfiguration erfordert vier SAT-Leitungen, um eine vollständige und umfassende Empfangsmöglichkeit über alle vier SAT-Ebenen zu ermöglichen.
Betriebsmodus 2: Quattro LNB oder Multischalter-Kaskadenausgang (VL, VH, HL, HH)
Dieser Modus ist ideal, wenn die Max SX8 mit einem kaskadenfähigen Multischalter verbunden wird. Solche Multischalter haben zusätzliche Ausgänge, die als “Kaskadenausgänge” bekannt sind und die Signale, die von einem Quattro LNB empfangen werden, durchleiten. Alternativ können die vier Ausgänge direkt an ein Quattro LNB ohne einen Multischalter angeschlossen werden.
Betriebsmodus 3: Lösung mit Einem Kabel
In diesem Modus kann die Karte mit einem einzigen Antennenkabel über Geräte verwendet werden, die Unicable® oder JESS® unterstützen. Dadurch können bis zu 8 Sintonizadores mit einem UniCable®-System und bis zu 32 Sintonizadores mit einem JESS®-System betrieben werden, wobei nur ein Kabel für alle Sintonizadores erforderlich ist.

Die Digital Devices MAX SX8 kann in zahlreiche TV-Anwendungen integriert werden und ist sowohl mit Windows– als auch Linux-Umgebungen kompatibel, was sie zu einer vielseitigen Wahl für jede dedizierte Medien-Streaming-Setup macht.