HDR-Videokonvertierung mit HandBrake: So klappt es mit CPU oder GPU
Früher haben sich VHS-Kassetten, CDs und DVDs unschön gestapelt. Heute belegen UHD-HDR-Filme mit bis 100 Gigabyte pro Stück viel Speicher. Was dagegen hilft: Umwandlung mit HandBrake.
In diesem Beitrag erfährst du, wie du UHD-HDR-Videos unter Verwendung des High Efficiency Video Coding Codec (H.265/HEVC) mit HandBrake sowie deiner CPU oder GPU umwandeln kannst. Persönlich nutze ich dies, um gerippte oder heruntergeladene Kopien meiner Filme mit geringem Qualitätsverlust auf eine kleinere Dateigrösse zu bringen. Beispielsweise eine Filmdatei von 80 auf 20 Gigabyte zu schrumpfen, sodass das Ergebnis irgendwas zwischen Streaming-Qualität und derjenigen der Originaldatei aufweist.
Mein aktuell liebstes Programm zum Umwandeln von Videos ist HandBrake. Doch hat es einen Nachteil: Möchte ich 10-bit-HDR-Videos (HDR: High Dynamic Range) konvertieren, geht das zwar mit meinem Prozessor, doch nicht durch Nutzung meiner Grafikkarte, die ich seit kurzem fürs Konvertieren präferiere.
Nun habe ich eine Lösung gefunden; die Snapshot Builds von HandBrake. In diesen noch nicht finalen Versionen des Programms sind Funktionen enthalten, die sonst (noch) fehlen. Und somit auch die Unterstützung für 10-Bit-Farbtiefe beim Umwandeln mit Nvidia-GeForce-Grafikkarten. 12-Bit-Farbtiefe kann jedoch weiterhin nur mit dem Prozessor gewandelt werden. Und wer auf Unterstützung für Dolby Vision oder HDR10+ hofft, geht ebenfalls leer aus. Du kannst die verbesserten HDR-Standards zwar dank Rückwärtskompatibilität als HDR-Quelle nutzen, jedoch nicht mit HandBrake in diese Formate umwandeln.
Was HandBrake kann und welche Version du nutzen solltest
HandBrake ist ein quelloffenes, freies Programm zur Transkodierung von Videodateien. Es unterstützt die Videocodecs (Umwandlungsalgorithmen) H.265 (HEVC), H.264 (AVC), MPEG-4, MPEG-2, VP9, VP8 und Theora. Bei der Konvertierung von HEVC und AVC kann das Programm auf Hardwarebeschleunigung zurückgreifen. Als File Container werden MKV, MP4 und WebM unterstützt. Ebenfalls werden eine Menge Audiocodecs und Untertitelformate unterstützt. So ist ein Audio Passthrough – also ein Durchleiten der Originaltonspur ohne erneute Konvertierung – für AC-3, E-AC3, FLAC, DTS, DTS-HD, TrueHD, AAC, MP3 und MP2 möglich. Willst du die Tonspur neu encodieren, kannst du das mit AAC sowie HE-AAC, MP3, FLAC, AC3, E-AC3, Opus und Vorbis.
Damit du nicht alle Einstellungen selber tätigen musst, bietet dir das Programm voreingestellte Profile für Webvideos, das Matroska-Format, Hardware-Encoder oder ein spezifisches Endgerät. Dann wählst du Android, Apple, Chromecast, Playstation oder was anderes und die gewünschte Auflösung. Alternativ konfigurierst du alles selber und wandelst deine UHD-Videos mit bis zu 12-Bit Farbtiefe um.
Du kannst dir HandBrake hier für Windows, Linux und macOS herunterladen. Da dieser Medienkonverter mit grafischer Oberfläche daherkommt, ist die Bedienung auch für Beginner komfortabel.
Möchtest du, wie ich, Videos anstelle mit dem Prozessor mit einer aktuellen Nvidia-Grafikkarte umwandeln, benötigst du, damit die 10-Bit-HDR-Umwandlung mit dem Nvidia Encoder (NVEnc) klappt, einen Snapshot Build von HandBrake. Den gibt’s hier. Bitte nutze diese Version nur auf eigene Verantwortung, da sie noch nicht final ist. Weiter musst du, damit der Chip 10-Bit und B-Frames unterstützt, eine GeForce GTX 1650 Super oder besser besitzen.
Was du vor dem Konvertieren deines ersten Filmes wissen solltest
Anfang der 00er-Jahre habe ich DVDs gerippt und auf 650 oder 700 Megabyte Grösse umgewandelt. Danach brannte ich sie auf CDs. Damals rechnete mein PC zeitweise Tag und Nacht für die Umwandlung von Filmen mit ursprünglich 720 x 576 Pixeln. Für alle Nostalgiker: Ich nutzte dazu den Codec DivX 3.11a und die Softwares SmartRipper sowie FlasKMPEG.
Heute kann das Konvertieren eines Films je nach Prozessor und Einstellung noch immer viele Stunden bis Tage dauern. Doch gibt es auch Methoden, die etwas schneller sind, jedoch kein perfektes Ergebnis in Sachen Qualität oder Dateigrösse bieten. Aber eines, das der Qualität der Streamingdienste das Wasser reichen kann und nur ein Bruchteil der Zeit benötigt, die sonst bei extremen Encodier-Einstellungen anfallen.
Beste Qualität und Dateigrösse: 2-Pass-Encoding mit dem Prozessor
Auf dem folgenden Bild siehst du die HandBrake-Einstellungen der softwarebasierten CPU-Konvertierung mit HEVC. Ich habe sie bis anhin für meine Filme genutzt, da ich nicht wusste, wie gut mir die Grafikkartenumwandlung von Nvidia gefällt. Und weil die Umwandlung mit dem Prozessor einen grossen Vorteil bietet: 2-Pass-Encoding beziehungsweise Encodieren in zwei Durchgängen.
Möchtest du die bestmögliche Qualität bei niedrigst möglicher Dateigrösse, ist 2-Pass-Encoding das Richtige. Dabei wird das Videomaterial in einem ersten Durchgang analysiert und die Infos dazu in einer Log-Datei gespeichert. Vereinfacht gesagt schaut sich der Encoder an, wo beispielsweise schnelle Filmszenen mit vielen Bildwechseln sind. Die brauchen, wie auch Bildmaterial mit vielen Details oder starker Körnung, mehr Speicherplatz pro Sekunde und somit eine höhere Bitrate. Und so kann im zweiten Durchgang, wo dann auch die neue Filmdatei geschrieben wird, immer die beste Zielbitrate pro Szene angestrebt werden – beziehungsweise die angedachte Zielspeicherkapazität und durchschnittliche Bitrate eingehalten werden.
Wie viel Speicher pro Sekunde Film benutzt werden darf, ist beim 2-Pass-Encoding variabel – ebenso bei der Konvertierung in einem Durchgang unter Verwendung der mittleren Bitrate. Und ganz besonders bei der Konvertierung in einem Durchgang aufgrund eines gesetzten Qualitäts-Werts, wo es keine Bitrate-Vorgabe gibt. Jedoch ist das 1-Pass-Encoding weniger vorausschauend als das 2-Pass-Encoding, was zu einer grösseren Datei und/oder zu einer weniger hohen Qualität führt.
Was gegen 2-Pass-Encoding spricht: Die Umwandlung dauert annähernd doppelt so lange. Etwas entgegenwirken kannst du, indem du die Turbo-Option aktivierst. Im Bild oben am Häkchen bei «Ersten Durchgang beschleunigen» zu sehen. Damit sparst du beim ersten Durchgang etwas Zeit auf Kosten praktisch nicht sichtbarer Qualitätseinbussen – was den Braten bezüglich Zeit aber auch nicht fetter macht. Bei mir dauert das Umwandeln mit obigen Einstellungen dennoch rund 140 Minuten pro Filmstunde. Also fünfeinhalb Stunden für «Star Trek: Der Film» von 1979 im Director’s Cut. Und das, obschon ich einen aktuellen Intel Core i7-12700K nutze und die sechstbeste beziehungsweise fünftschlechteste Encoder-Voreinstellung «Fast» gewählt habe.
Genaueres zu den Einstellungen folgt weiter unten bei der Schritt-für-Schritt-Anleitung. Die zu sehende, gewählte, mittlere Bitrate von 20 000 Kilobit pro Sekunde auf dem Bild mündete in einer 24 Gigabyte grossen MKV-Datei. Ursprünglich war die Videospur 74,7 Gigabyte schwer und wies eine durchschnittliche Bitrate von 72,9 Megabit pro Sekunde auf. Die neue Videospur ist 20,5 Gigabyte gross und hat eine mittlere Bitrate von genau 20 Megabit pro Sekunde.
Gute Qualität und grosse Zeiteinsparung: 1-Pass-Encoding mit Prozessor oder Grafikkarte
Natürlich hängt die Qualität abgesehen von einem oder zwei Durchgängen immer massgeblich von der Bitrate ab. Ist die Bitrate genügend hoch, bleibt das Zielvideo etwa von unschönen Artefakten verschont. Bei Netflix werden Filme mit Bitraten bis 20 Megabit pro Sekunde gestreamt – bei UHD-Auflösung mit HDR10 sowie teilweise Dolby Vision. Dagegen kann eine UHD-Blu-ray bis 128 Megabit (16 Megabyte) pro Sekunde erreichen. Wenn du Netflix, Amazon Prime oder Disney+ gewohnt bist, sollte eine Zielbitrate, die gleich oder etwas höher ist, theoretisch ein ähnlich gutes Resultat abgeben.
Entscheidest du dich für ein Prozessor-gestütztes Umwandeln in einem Durchgang, wird dein PC gegenüber 2-Pass-Encoding nur rund die Hälfte der Zeit benötigen. Was noch etwas schneller gehen kann, ist die Umwandlung mit einer Grafikkarte. Dabei bieten Intel, AMD und Nvidia entsprechende Encoder. Wobei ich aus Gründen der Qualität, soweit ich bisher in Erfahrung bringen konnte, nur Nvidias Encoder als einen Ersatz fürs Konvertieren mit CPU empfehlen kann. Und auch nur mit der Encoder-Voreinstellung «Slowest». Damit habe ich ab einer mittleren Bitrate von rund 15 Megabit pro Sekunde das Gefühl, dass die Qualität mindestens so gut wie bei Netflix ist. Ich finde, sie ist vergleichbar mit der «Fast»-Voreinstellung bei einer CPU-Konvertierung in einem Durchgang. Allerdings dauert die Umwandlung mit einer Nvidia GeForce RTX 3080 pro Stunde Filmmaterial nur circa 30 Minuten.
So konvertierst du deine HDR-Videos Schritt für Schritt
Nach all der Theorie ist es Zeit für die Praxis. Als Beispiel dient die UHD-HDR-Version von «Batman Begins». Eine MKV-Datei mit einer Grösse von 58 Gigabyte.
1. Programm starten und Videoquelle öffnen
Nach dem Starten von HandBrake kannst du ein einzelnes Video oder einen Ordner (Stapelverarbeitung) als Quelle hinzufügen.
2. Voreinstellung laden und Container definieren
Nach Öffnen der Quelle landest du beim Register «Übersicht», wo du eine Vorschau des Filmes siehst und das Format beziehungsweise den Container auswählen kannst. Darüber siehst du ein «Voreinstellung» genanntes Auswahlfeld, bei dem die besagten Profile hinterlegt sind. Nun geht es daran, ein zum angestrebten Zielergebnis einigermassen passendes Profil zu wählen. Alternativ kannst du auch alles ohne Profil eigenhändig einstellen, doch so gehts schneller.
Wähle die Voreinstellung «H.265 MKV 2160p60» und entscheide dich danach für ein Format. Persönlich setze ich immer auf den MKV-Container, da all meine Player das Format unterstützen und es auch sonst top ist. MKV kannst du dir wie einen Behälter vorstellen, in den du die Videospur, verschiedene Tonspuren und beliebige Untertitel packst. Falls du die Datei im Nachhinein ohne Neukonvertierung bearbeiten möchtes, also eine Audiospur austauschen oder anderes, ist dies mit der Software MKVToolNix möglich. Alternativ wählst du als Container MP4, was vor allem für Apple-Geräte empfehlenswert ist.
Bitte stelle auch sicher, dass das Häkchen bei «Metadaten-Passthru» aktiviert ist. Danach definierst du den Namen und Speicherort der Zieldatei.
3. Bildgrösse definieren
Im Register «Bildgrösse» achtest du darauf, dass das Auflösungslimit auf deine Zielvorgabe passt. Willst du UHD-Auflösung, muss da «2160p 4K Ultra HD» stehen. Hast du wie vorgeschlagen die Voreinstellungen beim zweiten Schritt geladen, müsste bereits alles korrekt eingestellt sein und wie auf diesem Screenshot aussehen. Belässt du den Beschnitt auf «Automatic», wird HandBrake übrigens automatisch die schwarzen Balken ober- und unterhalb des Bildes entfernen, was Speicherplatz spart und empfohlen ist.
4. Filter, die bei Bedarf angewendet werden können
Unter «Filter» kannst du alles auf «Off» belassen. Es sei denn, du weisst, was du tust.
5.1 Encodier-Einstellungen für Konvertierung mit Prozessor
Im Register «Video» wählst du für die Konvertierung mit Prozessor bei Videoencoder «H.265 10-bit». Solltest du eine 12-Bit-Quelle haben, gibt’s auch den «H.265 12-bit»-Videoencoder. Da ich persönlich kaum einen Unterschied zwischen 10 und 12 Bit Farbtiefe ausmachen kann, nutze ich den bisher nicht. Und auch nicht, weil er zeitintensiver ist.
Abgesehen vom Videoencoder stellst du bei der Bildfrequenz «Same as source» ein, damit die FPS der Originaldatei übernommen werden. Unter Encodereinstellungen kannst du den Voreinstellungswert auf beliebige Position stellen. Ich empfehle den Wert «Fast», da damit eine gute Qualität innert akzeptabler Zeit herausschauen kann. Dazu musst du jedoch auch eine genügend hohe mittlere Bitrate definieren. Die beeinflusst direkt die endgültige Dateigrösse. Ich habe mich entschieden, 15 000 Kilobit pro Sekunde im Mittelwert anzustreben.
Alternativ wendest du dich von den Kilobit-Einstellungen ab und setzt einen CRF-Wert (CRF: Constant Rate Factor) beim Punkt «Konstante Qualität» – anstelle CRF kann auch RF oder CQ als Bezeichnung dastehen. Das ist eigentlich sowieso die bessere Methode, da das Videomaterial dann aufgrund eines Qualitätswertes andauernd die passende Bitrate erhält, ohne sich an einen Speichermittelwert halten zu müssen. Damit wird jedoch ein Abschätzen der Zieldateigrösse schwer. Dafür sorgt die Methode besser dafür, bei schnellen und langsamen Bildwechseln immer die gleich gute Bildqualität zu liefern. Für UHD-Auflösung wird ein CRF-Wert von 28-22 in der Handbrake-Dokumentation empfohlen. Je nachdem, wie actionlastig ein Film ist, kann auch ein Wert unter 22 Sinn machen. Denke ich an den genialsten Film des Jahres «Everything Everywhere All at Once», werde ich dem nach Erhalt meiner Blu-ray wohl aufgrund der beinahe Epilepsie auslösenden, rasanten Bildwechsel mit einem Wert von 18 an den Kragen gehen und schauen, was dabei rauskommt. Je kleiner der Wert, desto weniger gross ist die Kompression – desto besser wird die Qualität und desto grösser die Datei.
Hast du dich nach dem Lesen der Theorie dazu entschieden, ein ultralanges 2-Pass-Encoding vorzunehmen, definierst du eine mittlere Bitrate und setzt bei «Encodierung in zwei Durchgängen» ein Häkchen. Falls du den ersten Encoding-Durchgang mit Turbo durchführen möchtest, setzt du ebenso eines bei «Ersten Durchgang beschleunigen».
5.2 Encodier-Einstellungen für Konvertierung mit Nvidia-Grafikkarte
Für die Konvertierung mit Nvidia-Grafikkarte wählst du bei Videoencoder «H.265 10-bit (NVEnc)». Bei der Bildfrequenz wählst du «Same as source», damit die FPS der Originaldatei übernommen werden. Bei den Encodereinstellungen solltest du beim Voreinstellungswert «Slowest» wählen und es dabei belassen. Es lohnt sich nicht, hier eine schnellere Variante zu fahren, da auch der Slowest-Wert bereits relativ schnell encodiert und obendrauf die beste Qualität bietet.
Wie bei der Prozessor-Umwandlung ist auch hier ein Qualitätswert von 0 bis 51 oder eine mittlere Bitrate als Vorgabe möglich. Wie bereits erwähnt, werde ich bei den meisten Filmen mit einer mittleren Bitrate von 15 Megabit pro Sekunde glücklich. Bei neueren und schneller geschnittenen Filmen gehe ich auch mal auf 20 oder 25 Megabit. Beim Qualitätswert habe ich mit dem Nvidia Encoder ähnliche Erfahrungen gemacht, wie wenn der Prozessor encodiert. Ein guter Startwert ist für mich die 23, wobei ich je nach Film auch mal bis 18 herunterregle.
Für diesen Artikel habe ich den Batman-Film mit dem Mittelwert sowie den Qualitätswerten 23 und 18 umgewandelt: Der Mittelwert von 15 000 Kilobit mündete in einer durchschnittlichen Bitrate von genau 15 Megabit pro Sekunde (15,8 Gigabyte Videospur). Mit CRF 23 kommt ein ähnlich gutaussehendes Resultat mit 14,3 Megabit pro Sekunde heraus (15 Gigabyte Videospur). Mit CRF 18 sind es 18,9 Megabit pro Sekunde (19,9 Gigabyte Videospur) und ein kaum vom Original zu unterscheidendes Bild. Das alles kann allerdings je nach Filmmaterial variieren. Die Umwandlung dauerte jeweils rund eine Stunde und 15 Minuten – 32 Minuten pro Stunde Filmmaterial.
6. Tonspuren auswählen und bei Bedarf umkonvertieren
Gleich haben wir es geschafft. Unter «Audio» kannst du die Tonspur oder Tonspuren über das Dropdownmenu «Spuren» hinzufügen und bestimmen, ob sie im Originalformat bleiben oder in ein anderes umgewandelt werden sollen.
Ich habe, wie auf dem Screenshot zu sehen, je eine deutsche und eine englische Tonspur hinzugefügt. Sie liegen in DTS-HD vor, was leider von praktisch keinem meiner Endgeräte unterstützt wird. Daher habe ich ihnen einen neuen Codec zugewiesen. Ich möchte, dass die Tonspuren nach Umwandlung in Dolby Digital 5.1 vorliegen. Daher wähle ich AC3, die bestmögliche Bitrate von 640 Kilobit pro Sekunde und 5.1 Kanäle.
Möchtest du eine Tonspur so übernehmen, wie sie ist, achtest du darauf, dass du bei Codec den gleichen wählst und dahinter «Passthru» steht:
7. Untertitel auswählen
Im Register «Untertitel» fügst du gewünschte Texte über das Dropdownmenu «Spuren» hinzu. Von der Eingebrannt-Option solltest du die Finger lassen. Die ermöglicht es, den Text direkt ins Bild des Videos zu rendern. Das bedeutet, dass der Text dann auch ohne Untertitelauswahl beim Abspielen erscheint und nicht mehr entfernt werden kann. Nützlicher ist die Standard-Option, die ich beim Untertitel mit Name «German Forced» gesetzt habe. Der Forced-Untertitel enthält nur Übersetzungen zu fremdgesprochenen Passagen oder Zeit- und Ortsangaben im Film. Daher will ich, dass er standardmässig aktiviert ist – passend zur Standardtonspur, die auch deutsch ist.
8. Konvertierung starten und warten
Endlich, du darfst nun auf den grünen Knopf oben im Programm drücken und die Encodierung starten.
Mit etwas Glück wirst du in wenigen Stunden oder Tagen ein ansehnliches Resultat erhalten.
Der tägliche Kuss der Muse lässt meine Kreativität spriessen. Werde ich mal nicht geküsst, so versuche ich mich mittels Träumen neu zu inspirieren. Denn wer träumt, verschläft nie sein Leben.