Hardwarebeschleunigung vs. CPU-Transkodierung für denselben 4K-Stream

Eva Wong ist die Technische Redakteurin und und leidenschaftliche Tüftlerin bei ZimaSpace. Eine lebenslange Geek mit einer Leidenschaft für Homelabs und Open-Source-Software, sie spezialisiert sich darauf, komplexe technische Konzepte in zugängliche, praktische Anleitungenzu übersetzen. Eva ist der Meinung, dass Self-Hosting Spaß machen und nicht einschüchternd sein sollte. Durch ihre Tutorials befähigt sie die Community, Hardware-Setups zu entmystifizieren, vom Bau ihres ersten NAS bis hin zur Beherrschung von Docker-Containern.

Für denselben 4K-Stream in Echtzeit ist Hardwarebeschleunigung in der Regel der bessere Weg für einen Medienserver, wenn die GPU oder Media-Engine jede erforderliche Decodier-, Filter-, Tone-Mapping- und Codierstufe unterstützt. Sie verlagert die aufwendigste Videoverarbeitung von den allgemeinen CPU-Kernen, senkt die CPU-Belastung und schafft mehr Spielraum für parallele Aufgaben. CPU-Transcoding bleibt nützlich, wenn der Hardwarepfad ein erforderliches Format oder einen erforderlichen Filter nicht unterstützt oder wenn bei einer einmaligen Softwarecodierung die Kompressionseffizienz wichtiger ist als der Echtzeitdurchsatz. Der Vergleich ist nur aussagekräftig, wenn Quelldatei, Zielauflösung, Bitrate, Client und Verarbeitungsanforderungen konstant gehalten werden.

Halte den 4K-Auftrag konstant, bevor du die Engines vergleichst

Ein fairer Vergleich verwendet dieselbe Quelldatei, Ausgabeauflösung, Zielbitrate oder Qualitätseinstellung, denselben Untertitelstatus, dieselbe HDR/SDR-Anforderung und denselben Client. Jede Änderung dieser Variablen kann den Arbeitsaufwand stärker verändern als die Wahl zwischen Hardware- und CPU-Codierung.

Die Performance-Dokumentation von HandBrake zeigt, wie Encoder-Preset, Qualitätsziel, Bitrate und Filter die Geschwindigkeit beeinflussen. Die kontrollierten Variablen der Encoderleistung geben die richtige Testrichtlinie vor: Vergleiche jeweils nur einen Pfad, anstatt zwei unterschiedliche Aufgaben miteinander zu vergleichen.

Erfasse die Transcoding-Geschwindigkeit, abgebrochene oder verzögerte Wiedergabe, CPU-Auslastung, Auslastung der Video-Engines, sofern verfügbar die Systemleistung sowie die Ausgabequalität. Wenn beide Pfade schneller als in Echtzeit sind, geht es bei der nächsten Entscheidung eher um Reserven und Effizienz als darum, ob einer der beiden Pfade die Aufgabe technisch abschließen kann.

Hardwarebeschleunigung gewinnt den Echtzeit-Durchsatztest

Die unterstützte Hardwarebeschleunigung verwendet speziell für Video entwickelte fest verdrahtete Decodier- und Codierblöcke. Dadurch müssen nicht für jeden Makroblock oder jede Transformation Rechenzeit auf der universellen CPU aufgewendet werden, sodass in der Regel deutlich mehr CPU-Kapazität für die Medienanwendung, den Speicher-Stack, Untertitel, Datenbankaufgaben und andere Dienste verbleibt.

Jellyfin führt QSV, NVENC/NVDEC, AMF, VA-API, VideoToolbox und weitere Hardwaremethoden auf und beschreibt, wie eine Transcoding-Pipeline mehrere Stufen auslagern kann. Die fest verdrahtete Transcoding-Pipeline stützt die praktische Schlussfolgerung: Hardware ist überlegen, wenn der gesamte erforderliche Pfad tatsächlich beschleunigt wird.

Der Vorteil ist am größten, wenn sich mehrere Streams überschneiden. Eine CPU, die eine 4K-Quelle in Echtzeit per Software transkodieren kann, hat möglicherweise kaum Spielraum für eine zweite Sitzung, während eine geeignete Video-Engine häufig mehr parallele Aufgaben bewältigen kann, ohne dass dasselbe allgemeine CPU-Budget verbraucht wird.

CPU-Transkodierung bewahrt Flexibilität, wo Hardwarepfade enden

Software-Transkodierung kann Formate, Encoderoptionen oder Filter verarbeiten, die eine bestimmte Hardwaregeneration nicht unterstützt. Außerdem ermöglicht sie langsamere Voreinstellungen, die mehr Rechenaufwand für bessere Kompressionsentscheidungen einsetzen können. Das kann für die Offline-Vorbereitung einer Mediathek attraktiv sein, auch wenn es sich für die Live-Wiedergabe oft schlecht eignet.

Die aktuelle Anleitung von Plex zum Hardware-Streaming weist darauf hin, dass die Hardwaregeneration die Ausgabequalität beeinflussen kann und dass die HEVC-Codierung mehr Ressourcen als H.264 erfordert. Die von der Generation abhängige Hardwareausgabe setzt hier die Grenze: Hardware ist nicht über jede Prozessor- und GPU-Generation hinweg ein identischer Encoder.

Die CPU-Transkodierung bleibt daher der Fallback, wenn der Beschleuniger die erforderliche Aufgabe nicht vollständig ausführen kann. Sie sollte nicht allein deshalb gewählt werden, weil CPU-Auslastung verfügbar ist; entscheidend ist, ob ihre zusätzliche Flexibilität den höheren Stromverbrauch und die geringere Parallelität bei einer Live-4K-Sitzung rechtfertigt.

Teilbeschleunigung kann den tatsächlichen Engpass verbergen

Eine Sitzung kann Hardware-Codierung anzeigen, während die CPU weiterhin die Decodierung, das Einbrennen von Untertiteln, die Audioverarbeitung, die Skalierung oder einen anderen Filter übernimmt. In diesem Fall vergleicht das System keine vollständig hardwarebeschleunigte Pipeline mit einer vollständig CPU-basierten Pipeline, sondern zwei hybride Pipelines mit unterschiedlichen Softwarestufen.

Das Video Codec SDK von NVIDIA trennt die Fähigkeiten von NVDEC und NVENC und dokumentiert die hardwarespezifische Codec-Unterstützung. Die getrennten Hardware-Decodierungs- und -Codierungsfähigkeiten veranschaulichen, warum eine erfolgreiche Hardware-Codierung nicht beweist, dass auch die Quelldecodierung ausgelagert wird.

Beobachten Sie die Aktivität von CPU und Video-Engine und prüfen Sie anschließend das Transkodierungsprotokoll. Wenn ein Softwarefilter den Engpass darstellt, ändert ein Upgrade auf einen schnelleren Hardware-Encoder möglicherweise nichts an der Wiedergabe, solange auch dieser Filter keinen beschleunigten Pfad unterstützt oder sich die Wiedergabeanforderung nicht ändert.

Die Qualität muss bei der tatsächlich verwendeten Übertragungsbitrate verglichen werden

Ein Software-Encoder kann langsame Presets verwenden, um intensiver nach Kompressionseffizienz zu suchen, während fest verdrahtete Hardware für Durchsatz und begrenzte Latenz optimiert ist. Neuere Hardware-Encoder wurden erheblich verbessert, daher sollten Qualitätsunterschiede gemessen und nicht aufgrund alter Generationenvergleiche angenommen werden.

Intels Quick-Sync-Dokumentation betont, dass die Funktion in der Prozessorgrafik implementiert ist und von der jeweiligen CPU unterstützt werden muss. Die genaue Prüfung der Quick-Sync-Generation ist wichtig, da „Hardwarebeschleunigung“ je nach Plattformgeneration sehr unterschiedliche Medien-Engines bedeuten kann.

Entscheidungsfaktor Hardwarebeschleunigung CPU-Transkodierung
4K-Durchsatz in Echtzeit Bei vollständiger Unterstützung meist leistungsfähiger Hängt stark von CPU und Codec ab
CPU-Reserven Erhält mehr allgemeine CPU-Kapazität Verbraucht allgemeine CPU-Kerne
Parallele Streams Meist praktischer Skaliert mit erheblichem CPU-Aufwand
Nicht unterstützte Filter/Formate Kann auf einen anderen Weg ausweichen oder fehlschlagen Größere Flexibilität der Software
Langsame Offline-Komprimierung Für Geschwindigkeit optimiert Kann langsamere Software-Presets verwenden

Vergleichen Sie bei der Live-Wiedergabe die sichtbare Qualität bei der Bitrate, die der entfernte Benutzer oder Client tatsächlich empfängt. Wenn beide Wege die Qualitätsanforderungen des Haushalts erfüllen, wählen Sie den Weg, der mehr Ressourcenreserven lässt, statt eine Encoder-Kennzahl zu optimieren, die der Zuschauer nicht sehen kann.

Leistung und Parallelität machen aus einem Ein-Stream-Test eine Serverentscheidung

Derselbe 4K-Stream kann auf der CPU problemlos laufen und dennoch die falsche Standardeinstellung für einen Server im Dauerbetrieb sein. Eine hohe Softwarenutzung erhöht die Wahrscheinlichkeit, dass ein zweiter Stream, ein Bibliotheksscan, ein Backup oder ein anderer Dienst mit der Wiedergabe in Konflikt gerät. Hardwarebeschleunigung lässt mehr Spielraum für solche Überschneidungen.

Der ZimaSpace-Leitfaden zum Überprüfen, ob die Hardware-Transkodierung tatsächlich funktioniert empfiehlt, den aktiven Stream, die Aktivität des Host-Beschleunigers und die Protokolle zu prüfen, statt sich allein auf eine Einstellung zu verlassen. Verwenden Sie denselben Nachweis, bevor Sie dem Hardware-Pfad einen Effizienzvorteil zuschreiben.

Wenn ein hardwarebeschleunigter Stream stabil läuft, aber der zweite fehlschlägt, haben Sie eine echte Grenze der Parallelität gefunden. Wenn CPU-Software-Transkodierung nur funktioniert, solange alle anderen Dienste im Leerlauf sind, hat sie zwar eine Demo bestanden, aber die Serverarbeitslast nicht bewältigt.

Häufig gestellte Fragen

Liefert Hardware-Transkodierung immer eine schlechtere Qualität als CPU-Transkodierung?

Nein. Die Qualität hängt von der Hardwaregeneration, dem Codec, den Encodereinstellungen, der Zielbitrate und dem zum Vergleich verwendeten Software-Encoder-Preset ab. Langsame Software-Presets können für eine höhere Kompressionseffizienz deutlich mehr Rechenaufwand erfordern, doch moderne Hardware-Engines können dennoch eine sehr gute Echtzeitausgabe liefern. Vergleichen Sie bei der Bitrate und Anzeigegröße, die Ihre Nutzer tatsächlich sehen.

Warum ist die CPU-Auslastung trotz aktivierter Hardwarebeschleunigung weiterhin hoch?

Nur ein Teil der Pipeline kann beschleunigt werden. Audiokonvertierung, Untertitel, Tonemapping, Skalierung, nicht unterstützte Dekodierungsformate oder andere Filter können weiterhin auf der CPU laufen. Verwenden Sie Streamprotokolle und die Aktivität der Host-Engines, um festzustellen, welcher Schritt noch softwaregebunden ist.

Sollten Sie CPU-Transkodierung verwenden, wenn der Server viele ungenutzte Kerne hat?

Nur wenn der Softwareweg die Echtzeitgeschwindigkeit mit ausreichender Reserve für die höchste gleichzeitige Auslastung erreicht und Sie seine Flexibilität oder Ausgabeeigenschaften schätzen. Nicht ausgelastete Kerne bieten wertvolle Reserven für Datenbanken, Scans, Backups und zusätzliche Sitzungen; sie einfach deshalb zu verbrauchen, weil sie verfügbar sind, kann die Ausfallsicherheit des Servers verringern.

Hardware zuerst bei Live-4K verwenden, CPU als Ausnahmeweg

Wählen Sie Hardwarebeschleunigung, wenn der exakte 4K-Pfad von der Quelle zur Ausgabe vollständig unterstützt wird und Live-Durchsatz, Parallelität sowie Serverreserven wichtig sind. Das ist die übliche Wahl für einen ständig laufenden Medienserver, der verschiedene Clients bedient.

Wählen Sie CPU-Transkodierung, wenn die Hardware einen erforderlichen Codec oder Verarbeitungsschritt nicht unterstützt oder wenn der Auftrag offline erfolgt und Sie für ein Software-Preset bewusst eine deutlich längere Kodierzeit akzeptieren. Das ist eine Ausnahme bei der Arbeitslast und kein Beleg dafür, dass fest verdrahtete Videohardware überflüssig ist.

Wenn der Stream bereits Direct Play nutzt, beenden Sie den Vergleich dieser beiden Wege vollständig. Weder Hardware- noch CPU-Transkodierung verbessert eine Sitzung, die keine Videokonvertierung benötigt. Behalten Sie Direct Play bei und verwenden Sie die Serverressourcen für die Konvertierungen, die sich nicht vermeiden lassen.

Produktvergleiche

Mehr zum Lesen

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.