Een desktop tone-mapping tool met ondersteuning voor FFmpeg en HandBrake, een breed scala aan curves, en echte BT.2390 op de GPU. 10-bit- en 12-bit-output inbegrepen, gratis.
Hoe de film er daadwerkelijk uitziet, hangt volledig af van de manier waarop het wordt gedaan — geen conversie, de eigen snelle inschatting van een mediaspeler, of een echte BT.2390-bewerking.
Het afspelen van een onbewerkt HDR-bestand op een scherm of projector die geen HDR begrijpt — de PQ/HLG-curve wordt getoond alsof het SDR is, waardoor alles grijs, plat en vervaagd oogt.
Spelers zoals VLC passen hun eigen snelle tone-map toe zodat het afspelen op zijn minst kijkbaar is — meestal een grove, vaste curve die hooglichten afknipt of kleuren verschuift, geen bewuste BT.2390-bewerking met een curve die u zelf kiest.
De daadwerkelijke ITU-R BT.2390 EETF, uitgevoerd op de GPU via libplacebo — gecontroleerde uitloop van hooglichten en nauwkeurige kleur, uitgevoerd als een echt SDR-bestand klaar voor elk standaardscherm.
Dezelfde bronvideo, drie werkelijk verschillende pipelines. Niets is verborgen achter een "auto"-knop — de backend en curve die u kiest zijn precies degene die worden uitgevoerd.
Het klassieke tonemap-filter. Snel, werkt overal waar FFmpeg werkt, geen GPU vereist.
Voert de daadwerkelijke ITU-R BT.2390 EETF uit op de GPU via libplacebo, dezelfde referentiecurve waarop de meeste HDR-naar-SDR-gradaties zijn gebaseerd.
Een alternatief encodeertraject via HandBrakeCLI voor gevallen waarin de eigen pipeline beter presteert op een bepaalde bron.
Gebouwd rond de onderdelen van een tone-mapping-taak die op echt beeldmateriaal daadwerkelijk misgaan: de verkeerde curve, de verkeerde encoder, of een proces dat tijdens het draaien de hele machine claimt.
Bron (geen schaling), 4K, 1440p, 1080p, 720p of 480p. Schalen gebeurt op basis van hoogte, waarbij de breedte automatisch wordt berekend zodat de beeldverhouding van de bron nooit wordt uitgerekt.
Kies een bron en deze wordt direct ingelezen — overdrachtskarakteristieken, bitdiepte, duur, HDR10+/Dolby Vision-metadata — met een voorgestelde curve voor dat specifieke bestand. Het SDR-uitvoerpad wordt automatisch ingevuld, en een videobestand ergens op het venster slepen werkt hetzelfde als Bladeren.
Een echt gedecodeerd, tone-gemapt beeld van uw bron dat wordt bijgewerkt terwijl u instellingen wijzigt, met een schaduw-/hooglichtclipping-check zodat een curve die detail vernietigt al zichtbaar is vóór een volledige encode. Bekijk op volledig formaat of sla het beeld direct op schijf op.
Wordt automatisch bijgewerkt wanneer kwaliteit, resolutie of encoder verandert, zodat een verrassende CRF/resolutie-combinatie zichtbaar is voordat u op Start drukt.
Beweeg over een tone-mapping-curve voor een uitleg in gewone taal van wat er daadwerkelijk wordt ingeleverd — geen marketingpraat.
x264/x265 op de CPU, of hardwarematige encoding via NVIDIA NVENC, AMD AMF of Apple VideoToolbox, in H.264 of H.265.
Gratis, geen licentie vereist, geen aparte build. 10-bit werkt met elke H.265-encoder (CPU of hardware); 12-bit is beschikbaar via libx265 op de CPU — de app toont alleen encoders die de gekozen bitdiepte daadwerkelijk ondersteunen.
Opent het volledige CRF/CQ-bereik (0–51), een helderheidsoffset en de extra tone-map-curves — buiten beeld tot u erom vraagt.
CUDA-/DXVA2-/VideoToolbox-decodering voor de FFmpeg-backend, zodat de GPU zowel het lezen als de tone-mapping voor zijn rekening neemt.
Efficiëntie, Gebalanceerd of Prestatie, plus een live CPU-corelimiet — beide toegepast bij Start en aanpasbaar terwijl een conversie draait, zodat een lange batch de rest van uw machine niet hoeft te blokkeren.
Een inklapbaar live logboek toont de daadwerkelijke FFmpeg-/HandBrake-uitvoer en voortgang; een Systeempaneel meldt wat er op uw systeem is gedetecteerd — FFmpeg, Vulkan, HandBrakeCLI — voordat u op converteren drukt.
Ontbrekende FFmpeg of HandBrakeCLI wordt via winget vanuit de app zelf geïnstalleerd — vanuit het Systeempaneel, of de snelkoppeling "Snel installeren" ernaast — waarbij de installatie-uitvoer live in Activiteit wordt getoond.
Een Windows-build als u het gewoon wilt uitvoeren, of de broncode als u macOS/Linux gebruikt of eerst de code wilt lezen.
Build met één bestand, geen Python vereist. FFmpeg is nog steeds apart nodig — of installeer het in de app via winget.
Altijd de nieuwste release · Windows 10/11
Vereist Python 3.10+ en pip install -r requirements.txt. Werkt op Windows, macOS en Linux.
MIT-licentie · main-branch
De app is één enkel PySide6-script. Geen installatieprogramma, geen achtergrondservice — u start het en het roept rechtstreeks FFmpeg aan (en optioneel HandBrakeCLI).
Wat er op de machine moet staan voordat u de app start.
| Onderdeel | Nodig voor |
|---|---|
| Python 3.10+ | De app zelf uitvoeren |
| PySide6 | De op Qt gebaseerde UI |
| FFmpeg (volledige/GPL-build, met libx264 + libx265) | Standaard- en GPU-tone-mapping-backends |
| Vulkan-geschikte GPU + drivers | Specifiek de libplacebo-/BT.2390-backend |
| HandBrakeCLI (optioneel) | De HandBrake-backend |
| psutil (optioneel) | Live pauzeren/hervatten, CPU-core-controle, en CPU-/GPU-resourcestatistieken |
Deze app bundelt geen FFmpeg of HandBrakeCLI — deze worden op uw eigen machine geïnstalleerd, rechtstreeks via de officiële kanalen van hun makers, via winget.
| Tool | Bron | winget-pakket-ID | Licentie |
|---|---|---|---|
| FFmpeg | volledige build van gyan.dev | Gyan.FFmpeg | GPLv3 |
| HandBrakeCLI | officiële release van HandBrake | HandBrake.HandBrake.CLI | GPLv2 |
Beide zijn onafhankelijke open-source projecten — alle credits gaan naar hun auteurs en bijdragers. Deze app is een GUI-frontend die ze als aparte processen aanroept; ze wijzigt, linkt of herdistribueert hun code niet, en elk behoudt zijn eigen licentie, ongeacht de MIT-licentie van deze app zelf. Wilt u ze liever zelf installeren in plaats van via de ingebouwde installer? Dat werkt ook — de app zoekt gewoon naar ffmpeg, ffprobe en HandBrakeCLI in uw PATH.
Drie commando's, en u kijkt naar het venster.
# 1. Haal het script en de Python-afhankelijkheden op pip install PySide6 psutil # 2. Zorg dat FFmpeg in uw PATH staat ffmpeg -version # 3. Starten python hdr_to_sdr_gui_qt.py
Van HDR-bronbestand naar SDR-uitvoer.
Dit zijn allemaal echte, gedocumenteerde FFmpeg-/libplacebo-tone-mapping-opties — niets hiervan is verzonnen.
| Curve | Backend | Wanneer te gebruiken |
|---|---|---|
| BT.2390 | GPU | Standaardkeuze — de referentie-EETF waarop de meeste HDR-naar-SDR-gradaties zijn gericht |
| Hable | CPU | Filmische uitloop, geen GPU nodig |
| Reinhard / Mobius | CPU | Zachtere alternatieven voor hooglichtuitloop t.o.v. Hable |
| BT.2446A | GPU · Pro | Op broadcast gerichte alternatief voor BT.2390 |
| ST2094-10 / ST2094-40 | GPU · Pro | Dynamische tone-mapping; ST2094-40 gebruikt HDR10+-metadata indien aanwezig |
| Linear / Gamma / Clip / None | CPU · Pro | Diagnostische of handmatige gradatiebewerkingen, niet voor algemeen gebruik |
Het Systeempaneel is de eerste halte — het meldt precies wat er is gedetecteerd voordat u dit als bug meldt.
libx264/libx265. Gebruik "Ontbrekende installeren (winget)" in het Systeempaneel, dat automatisch de volledige GPL-build installeert.