HDR to SDR Movie Converter Logo HDR to SDR Movie Converter
FFmpeg · libplacebo/Vulkan · HandBrakeCLI

Verwandeln Sie jeden Bildschirm in einen HDR-Bildschirm. Einfach genug für Oma.

Ein Desktop-Tool für Tone-Mapping mit FFmpeg- und HandBrake-Unterstützung, vielen Kurven und echtem BT.2390 auf der GPU. 10-Bit- und 12-Bit-Ausgabe kostenlos inklusive.

Fenster von HDR to SDR Movie Converter: Dateien, Quellanalyse, Fortschritt und Steuerung links, Konvertierungseinstellungen rechts.
Warum es wichtig ist

Gleiche Quelle — unterschiedliches Ergebnis

Wie der Film tatsächlich aussieht, hängt vollständig von der Verarbeitung ab — gar keine Konvertierung, die schnelle Vermutung eines Media-Players oder ein echter BT.2390-Durchlauf.

Rohes HDR-Video auf einem Display ohne HDR-Unterstützung — blass, flach, kontrastarm.
Keine Konvertierung

Rohes HDR, keine Konvertierung

Eine unveränderte HDR-Datei auf einem Display oder Projektor abzuspielen, der HDR nicht versteht — die PQ/HLG-Kurve wird so angezeigt, als wäre sie SDR, wodurch alles grau, flach und blass wirkt.

Dasselbe HDR-Video, automatisch tone-gemappt von einem Media-Player wie VLC — überstrahlte Lichter, Farbverschiebung.
Auto-Tone-Mapping

Automatisch konvertiert von einem Media-Player

Player wie VLC wenden ihr eigenes schnelles Tone-Mapping an, damit die Wiedergabe wenigstens ansehbar ist — meist eine grobe, feste Kurve, die Lichter abschneidet oder Farben verschiebt, kein bewusster BT.2390-Durchlauf mit selbst gewählter Kurve.

Dasselbe HDR-Video korrekt mit dem BT.2390-GPU-Tone-Mapping dieser App in SDR konvertiert — ausgewogene Lichter und präzise Farben.
Echtes BT.2390

Korrektes BT.2390-Tone-Mapping

Die echte ITU-R-BT.2390-EETF, ausgeführt auf der GPU über libplacebo — kontrollierter Lichter-Rolloff und präzise Farben, ausgegeben als echte SDR-Datei für jedes Standarddisplay.

Backends

Drei Arten des Tone-Mappings. Wählen Sie, was zu Ihrer Hardware passt.

Dasselbe Quellvideo, drei wirklich unterschiedliche Pipelines. Nichts wird hinter einem „Auto“-Knopf versteckt — es läuft genau das Backend und die Kurve, die Sie wählen.

CPU · Standard

Standard-FFmpeg

Der klassische tonemap-Filter. Schnell, funktioniert überall, wo FFmpeg läuft, keine GPU nötig.

  • Hable-, Reinhard-, Mobius-Kurven
  • Pro-Modus fügt Linear, Gamma, Clip und einen direkten „None“-Durchlauf hinzu
GPU · Vulkan

libplacebo / BT.2390

Führt die echte ITU-R-BT.2390-EETF auf der GPU über libplacebo aus — dieselbe Referenzkurve, auf der die meisten HDR-zu-SDR-Abstimmungen basieren.

  • BT.2390 standardmäßig
  • Pro-Modus schaltet BT.2446A, ST2094-10, ST2094-40 (HDR10+) und Auto frei
Optional

HandBrakeCLI

Ein alternativer Encode-Pfad über HandBrakeCLI für Fälle, in denen dessen eigene Pipeline bei einer bestimmten Quelle besser funktioniert.

  • Gleiche Auflösungs-/Encoder-Einstellungen
  • Eigenes Fortschritts-Parsing, live in „Aktivität“ angezeigt
Funktionen

Alles, was eine echte Konvertierung braucht — richtig gemacht.

Aufgebaut um die Dinge, die bei Tone-Mapping mit echtem Material tatsächlich schiefgehen: die falsche Kurve, der falsche Encoder oder ein Prozess, der sich während des Laufs die ganze Maschine unter den Nagel reißt.

Auflösungs-Presets

Source (keine Skalierung), 4K, 1440p, 1080p, 720p oder 480p. Die Skalierung richtet sich nach der Höhe, die Breite wird automatisch berechnet, sodass das Seitenverhältnis der Quelle nie verzerrt wird.

Analysiert automatisch

Quelle auswählen — sie wird sofort gelesen: Übertragungscharakteristik, Farbtiefe, Dauer, HDR10+/Dolby-Vision-Metadaten — mit einer für diese Datei vorgeschlagenen Kurve. Der SDR-Ausgabepfad wird automatisch ausgefüllt, und eine Videodatei auf das Fenster zu ziehen funktioniert genauso wie „Durchsuchen“.

Live-Vorschau

Ein echter, dekodierter und tone-gemappter Frame aus Ihrer Quelle, der sich bei Änderungen aktualisiert, mit einer Schatten-/Licht-Clipping-Prüfung, damit eine detailzerstörende Kurve schon vor dem vollständigen Encode auffällt. Als Vollbild ansehen oder den Frame direkt speichern.

Live-Bitraten-Schätzung

Aktualisiert sich automatisch bei Änderungen an Qualität, Auflösung oder Encoder, sodass eine überraschende CRF/Auflösungs-Kombination schon vor „Start“ sichtbar ist.

Kurven-Tooltips

Mit dem Mauszeiger über eine Tone-Mapping-Kurve fahren für eine klare Erklärung der tatsächlichen Kompromisse — keine Marketingtexte.

Encoder-Wahl

x264/x265 auf der CPU oder Hardware-Encoding über NVIDIA NVENC, AMD AMF oder Apple VideoToolbox, in H.264 oder H.265.

10-Bit- & 12-Bit-Ausgabe

Kostenlos, ohne Lizenz, keine separate Version. 10-Bit funktioniert mit jedem H.265-Encoder (CPU oder Hardware); 12-Bit ist über libx265 auf der CPU verfügbar — die App zeigt nur Encoder, die die gewählte Farbtiefe tatsächlich unterstützen.

Pro-Modus

Öffnet den vollen CRF/CQ-Bereich (0–51), eine Helligkeitsanpassung und die zusätzlichen Tone-Map-Kurven — bleibt verborgen, bis Sie sie brauchen.

Hardwarebeschleunigtes Decodieren

CUDA-/DXVA2-/VideoToolbox-Decoding für das FFmpeg-Backend, sodass die GPU sowohl liest als auch tone-mapped.

Prozesspriorität & CPU-Kerne

Effizienz, Ausgewogen oder Leistung, plus ein Live-CPU-Kern-Limit — beides bei „Start“ angewendet und während einer laufenden Konvertierung anpassbar, damit ein langer Batch nicht den Rest Ihres Rechners blockiert.

Aktivität & System

Ein einklappbares Live-Log zeigt die tatsächliche FFmpeg-/HandBrake-Ausgabe und den Fortschritt; ein System-Panel meldet, was auf Ihrem System erkannt wurde — FFmpeg, Vulkan, HandBrakeCLI — bevor Sie konvertieren.

Einrichtung mit einem Klick unter Windows

Fehlendes FFmpeg oder HandBrakeCLI wird über winget direkt aus der App installiert — über das System-Panel oder die „Schnellinstallation“ direkt daneben — der Installationsverlauf wird live in „Aktivität“ angezeigt.

HDR to SDR Movie Converter Symbol
Download

App herunterladen

Ein Windows-Build, wenn Sie es einfach ausführen möchten, oder der Quellcode, wenn Sie macOS/Linux nutzen oder den Code zuerst lesen möchten.

Windows

Windows (.exe)

Single-File-Build, kein Python nötig. FFmpeg wird weiterhin separat benötigt — oder in der App über winget installieren.

Immer die neueste Version · Windows 10/11

Quellcode

Quellcode

Benötigt Python 3.10+ und pip install -r requirements.txt. Läuft unter Windows, macOS und Linux.

MIT-lizenziert · main-Branch

Dokumentation

Installations- & Nutzungsanleitung

Die App ist ein einzelnes PySide6-Skript. Kein Installer, kein Hintergrunddienst — Sie starten es, und es ruft direkt FFmpeg (und optional HandBrakeCLI) auf.

Voraussetzungen

Was vor dem Start auf dem Rechner vorhanden sein muss.

KomponenteBenötigt für
Python 3.10+Ausführung der App selbst
PySide6Die Qt-basierte Oberfläche
FFmpegStandard- und GPU-Tone-Mapping-Backends
Vulkan-fähige GPU + TreiberSpeziell das libplacebo/BT.2390-Backend
HandBrakeCLI (optional)Das HandBrake-Backend
psutil (optional)Live-Pause/Fortsetzen, CPU-Kern-Steuerung und CPU/GPU-Ressourcenstatistiken

Installation & Start

Drei Befehle, dann sehen Sie das Fenster.

# 1. Skript und Python-Abhängigkeiten holen
pip install PySide6 psutil

# 2. Sicherstellen, dass FFmpeg im PATH liegt
ffmpeg -version

# 3. Starten
python hdr_to_sdr_gui_qt.py
Windows: Wenn FFmpeg oder HandBrakeCLI nicht gefunden werden, öffnen Sie das System-Panel und nutzen Sie „Fehlendes installieren (winget)“ statt manueller Installation.

Grundlegender Ablauf

Von der HDR-Quelldatei zur SDR-Ausgabe.

  1. Quelldatei auswählen. Jeder HDR-Container, den FFmpeg lesen kann — die Analyse läuft automatisch (Übertragungsfunktion, Farbtiefe, HDR10+/Dolby-Vision-Metadaten und eine vorgeschlagene Kurve), und der SDR-Ausgabepfad wird automatisch ausgefüllt. Eine Datei auf das Fenster zu ziehen funktioniert wie „Durchsuchen“.
  2. Backend und Kurve wählen. BT.2390 auf der GPU ist der vernünftige Standard; wechseln Sie zu Standard-FFmpeg, wenn Sie keine Vulkan-fähige GPU haben. Mit dem Mauszeiger über eine Kurve fahren, um deren tatsächliche Kompromisse zu sehen.
  3. Auflösung, Encoder und Farbtiefe festlegen. Auflösung auf „Source“ belassen, um die ursprüngliche Bildgröße und das Seitenverhältnis zu behalten, oder ein Preset wählen, um im selben Durchlauf zu verkleinern.
  4. Qualität anpassen oder Pro-Modus aktivieren für den vollen CRF/CQ-Bereich und eine Helligkeitsanpassung. Live-Vorschau prüfen — sie zeigt einen echten tone-gemappten Frame und markiert Schatten-/Licht-Clipping — plus die Live-Bitraten-Schätzung vor dem Start.
  5. Konvertieren und Fortschritt sowie die Live-FFmpeg-/HandBrake-Ausgabe in „Aktivität“ beobachten. Pause/Fortsetzen, CPU-Kern-Limits und Prozesspriorität lassen sich während des Laufs anpassen.

Eine Kurve wählen

All dies sind echte, dokumentierte FFmpeg-/libplacebo-Tone-Mapping-Optionen — nichts davon ist erfunden.

KurveBackendWann verwenden
BT.2390GPUStandardwahl — die Referenz-EETF, auf die die meisten HDR-zu-SDR-Abstimmungen abzielen
HableCPUFilmischer Rolloff, keine GPU nötig
Reinhard / MobiusCPUSanftere Licht-Rolloff-Alternativen zu Hable
BT.2446AGPU · ProBroadcast-orientierte Alternative zu BT.2390
ST2094-10 / ST2094-40GPU · ProDynamisches Tone-Mapping; ST2094-40 nutzt HDR10+-Metadaten, falls vorhanden
Linear / Gamma / Clip / NoneCPU · ProDiagnose- oder manuelle Abstimmungsdurchläufe, nicht für den allgemeinen Gebrauch

Fehlerbehebung

Das System-Panel ist die erste Anlaufstelle — es zeigt genau, was erkannt wurde, bevor Sie dies als Bug melden.

  • Option BT.2390 (GPU) ausgegraut — es wurde kein Vulkan-fähiges Gerät erkannt; verwenden Sie stattdessen eine Standard-FFmpeg-Kurve.
  • HandBrakeCLI-Backend fehlt — es ist optional und erscheint erst, wenn HandBrakeCLI in Ihrem PATH gefunden wird.
  • Die Konvertierung scheint den ganzen Rechner zu blockieren — Prozesspriorität auf Effizienz setzen.