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

Gawing HDR screen ang anumang screen. Sobrang simple na kahit ang lola ay kaya itong gamitin.

Isang desktop tone-mapping tool na may suporta sa FFmpeg at HandBrake, malawak na pagpipilian ng curve, at tunay na BT.2390 sa GPU. Kasama na ang 10-bit at 12-bit output, libre.

Window ng HDR to SDR Movie Converter app: Mga file, source analysis, progress at controls sa kaliwa, mga setting ng conversion sa kanan.
Bakit mahalaga ito

Parehong source — magkaibang resulta

Ang aktwal na itsura ng pelikula ay ganap na nakadepende sa paraan ng pagproseso — walang conversion, mabilis na tantiya ng media player, o tunay na proseso ng BT.2390.

Raw HDR video na pinatugtog sa display na walang suporta sa HDR — malabo, patag, mababang contrast na larawan.
Walang conversion

Raw HDR, walang conversion

Ang pagpapatugtog ng hindi ginalaw na HDR file sa display o projector na hindi nakakaintindi ng HDR — ipinapakita ang PQ/HLG curve na parang SDR ito, kaya lahat ay mukhang kulay-abo, patag, at malabo.

Ang parehong HDR video na auto-tone-mapped ng media player tulad ng VLC — nadurog na highlights, nagbago ang kulay.
Auto tone-map

Auto-convert ng media player

Ang mga player tulad ng VLC ay naglalapat ng sarili nilang mabilis na tone-mapping para maging manood-manood man lang ang playback — kadalasang isang matigas, fixed na curve na nagputol sa highlights o nagbago ng kulay, hindi ang sinasadyang proseso ng BT.2390 gamit ang curve na pinili mo.

Ang parehong HDR video na tama ang pagka-convert sa SDR gamit ang BT.2390 GPU tone-mapping ng app na ito — balanseng highlights at tumpak na kulay.
Tunay na BT.2390

Tamang BT.2390 tone-mapping

Ang totoong ITU-R BT.2390 EETF, na tumatakbo sa GPU gamit ang libplacebo — kontroladong pagbaba ng highlight at tumpak na kulay, na inilalabas bilang isang tunay na SDR file na handa para sa anumang standard na display.

Mga Backend

Tatlong paraan ng tone-mapping. Piliin ang tumutugma sa iyong hardware.

Parehong source video, tatlong tunay na magkakaibang pipeline. Walang itinatago sa likod ng "auto" na button — eksaktong tumatakbo ang backend at curve na pinili mo.

CPU · Standard

Standard FFmpeg

Ang klasikong tonemap filter. Mabilis, gumagana kahit saan tumatakbo ang FFmpeg, hindi kailangan ng GPU.

  • Mga curve na Hable, Reinhard, Mobius
  • Nagdadagdag ang Pro mode ng Linear, Gamma, Clip, at direktang "None" pass
GPU · Vulkan

libplacebo / BT.2390

Pinapatakbo ang totoong ITU-R BT.2390 EETF sa GPU gamit ang libplacebo — ang parehong reference curve kung saan binase ang karamihan ng propesyonal na HDR-to-SDR grading.

  • BT.2390 bilang default
  • Ina-unlock ng Pro mode ang BT.2446A, ST2094-10, ST2094-40 (HDR10+), at Auto
Opsyonal

HandBrakeCLI

Isang alternatibong encoding path gamit ang HandBrakeCLI para sa mga kaso kung saan mas maganda ang gumagana ang sarili nitong pipeline sa isang partikular na source.

  • Parehong resolution/encoder controls
  • Sariling progress parsing, ipinapakita nang live sa Activity
Mga Feature

Lahat ng kailangan ng isang tunay na conversion para tama ito.

Binuo sa paligid ng mga bahagi ng trabaho ng tone-mapping na talagang nagkakamali sa totoong footage: maling curve, maling encoder, o isang proseso na sumasakop sa buong makina habang tumatakbo.

Mga resolution preset

Source (walang scaling), 4K, 1440p, 1080p, 720p, o 480p. Ang scaling ay batay sa height, na awtomatikong kinakalkula ang width para hindi ma-stretch ang aspect ratio ng source.

Awtomatikong sinusuri

Pumili ng source at agad itong nababasa — transfer characteristics, bit depth, tagal, HDR10+/Dolby Vision metadata — kasama ang inirerekomendang curve para sa partikular na file na iyon. Awtomatikong napupunan ang SDR output path para sa iyo, at ang paghila ng video file kahit saan sa window ay gumagana tulad ng Browse button.

Live Preview

Isang totoong na-decode at na-tone-map na frame mula sa iyong source, na nag-a-update habang binabago mo ang mga setting, na may shadow/highlight clipping check para makita ang isang curve na sumisira ng detalye bago ang buong encoding. Tingnan ito sa buong laki o i-save ang frame direkta sa disk.

Live bitrate estimate

Awtomatikong nag-a-update habang nagbabago ang quality, resolution, o encoder, para makita ang isang kaka-gulat na CRF/resolution combo bago pindutin ang Start.

Curve tooltips

Mag-hover sa anumang tone-mapping curve para sa malinaw na paliwanag ng tunay na trade-offs nito — hindi marketing text.

Pagpili ng encoder

x264/x265 sa CPU, o hardware encoding gamit ang NVIDIA NVENC, AMD AMF, o Apple VideoToolbox, sa H.264 o H.265.

10-bit at 12-bit na output

Libre, walang lisensya, walang hiwalay na build. Gumagana ang 10-bit sa anumang H.265 encoder (CPU o hardware); available ang 12-bit gamit ang libx265 sa CPU — ipinapakita lang ng app ang mga encoder na talagang sumusuporta sa piniling bit depth.

Pro mode

Binubuksan ang buong CRF/CQ range (0–51), isang brightness offset control, at karagdagang tone-map curves — nananatiling nakatago hangga't hindi mo kailangan ang mga ito.

Hardware-accelerated decode

CUDA / DXVA2 / VideoToolbox decode para sa FFmpeg backend, kaya ang GPU ang bumabasa at gumagawa ng tone-mapping nang magkasabay.

Process priority at CPU cores

Efficiency, Balanced, o Performance, kasama ang live na limitasyon sa CPU core — parehong inilalapat sa Start at maaaring i-adjust habang tumatakbo ang conversion, para hindi ma-lock ng mahabang batch ang natitirang bahagi ng iyong makina.

Activity at System

Ang isang collapsible na live log ay nag-stream ng aktwal na FFmpeg/HandBrake output at progress; ang System panel ay nag-uulat kung ano ang na-detect sa iyong sistema — FFmpeg, Vulkan, HandBrakeCLI — bago ka mag-convert.

One-click setup sa Windows

Ang nawawalang FFmpeg o HandBrakeCLI ay na-i-install gamit ang winget mula sa loob ng app — mula sa System panel, o sa "Quick install" shortcut sa tabi nito — na may install output na naka-stream nang live sa Activity.

Icon ng HDR to SDR Movie Converter
I-download

Kunin ang app

Isang Windows build kung gusto mo lang itong patakbuhin, o ang source code kung nasa macOS/Linux ka o gusto mong basahin muna ang code.

Windows

Windows (.exe)

Single-file build, hindi kailangan ng Python. Kailangan pa rin ang FFmpeg nang hiwalay — o i-install ito sa loob ng app gamit ang winget.

Palaging ang pinakabagong release · Windows 10/11

Source

Source code

Kailangan ng Python 3.10+ at pip install -r requirements.txt. Tumatakbo sa Windows, macOS, at Linux.

MIT lisensyado · main branch

Dokumentasyon

Gabay sa pag-install at paggamit

Ang app ay iisang PySide6 script. Walang installer, walang background service — pinapatakbo mo ito, at direktang tinatawag nito ang FFmpeg (at opsyonal na HandBrakeCLI).

Mga kinakailangan

Ano ang dapat nasa makina bago ito i-launch.

ComponentKailangan para sa
Python 3.10+Pagpapatakbo ng app mismo
PySide6Ang Qt-based na UI
FFmpegStandard at GPU tone-mapping backends
GPU na may Vulkan support + driversPartikular ang libplacebo/BT.2390 backend
HandBrakeCLI (opsyonal)Ang HandBrake backend
psutil (opsyonal)Live na pause/resume, kontrol sa CPU core, at CPU/GPU resource stats

Pag-install at pagpapatakbo

Tatlong command, at makikita mo na ang window.

# 1. Kunin ang script at ang mga Python dependency nito
pip install PySide6 psutil

# 2. Siguraduhing nasa PATH mo ang FFmpeg
ffmpeg -version

# 3. I-launch
python hdr_to_sdr_gui_qt.py
Windows: kung hindi mahanap ang FFmpeg o HandBrakeCLI, buksan ang System panel at gamitin ang "Install missing (winget)" sa halip na i-install ang mga ito nang manwal.

Pangunahing workflow

Mula sa HDR source file hanggang sa SDR output.

  1. Piliin ang source file. Anumang HDR container na kayang basahin ng FFmpeg — awtomatikong tumatakbo ang analysis (transfer function, bit depth, HDR10+/Dolby Vision metadata, at isang inirerekomendang curve), at awtomatikong napupunan ang SDR output path para sa iyo. Ang paghila ng file papunta sa window ay gumagana tulad ng Browse button.
  2. Pumili ng backend at curve. Ang BT.2390 sa GPU ay ang makatuwirang default; lumipat sa Standard FFmpeg kung wala kang GPU na may Vulkan support. Mag-hover sa anumang curve para makita ang tunay na trade-offs nito.
  3. I-set ang resolution, encoder, at bit depth. Iwanan ang resolution sa "Source" para mapanatili ang orihinal na laki ng frame at aspect ratio, o pumili ng preset para mag-downscale sa parehong pass.
  4. I-adjust ang quality, o paganahin ang Pro mode para sa buong CRF/CQ range at brightness offset. Tingnan ang Live Preview — ipinapakita nito ang isang tunay na na-tone-map na frame at minamarkahan ang shadow/highlight clipping — kasama ang live bitrate estimate bago i-commit.
  5. I-convert, at panoorin ang progress at live na FFmpeg/HandBrake output sa Activity. Ang pause/resume, mga limitasyon sa CPU core, at process priority ay lahat maaaring i-adjust habang tumatakbo ito.

Pagpili ng curve

Lahat ng ito ay tunay, dokumentadong mga opsyon sa tone-mapping ng FFmpeg/libplacebo — walang gawa-gawa dito.

CurveBackendKailan ito gagamitin
BT.2390GPUDefault na pagpipilian — ang reference EETF na tinatarget ng karamihan ng HDR-to-SDR grading
HableCPUFilmic rolloff, hindi kailangan ng GPU
Reinhard / MobiusCPUMas malambot na highlight rolloff na alternatibo kay Hable
BT.2446AGPU · ProBroadcast-oriented na alternatibo sa BT.2390
ST2094-10 / ST2094-40GPU · ProDynamic tone-mapping; gumagamit ang ST2094-40 ng HDR10+ metadata kung mayroon
Linear / Gamma / Clip / NoneCPU · ProDiagnostic o manual-grading passes, hindi para sa pangkalahatang paggamit

Paglutas ng problema

Ang System panel ang unang dapat tingnan — inuulat nito nang eksakto kung ano ang na-detect bago mo i-report ito bilang bug.

  • Naka-gray out ang opsyon na BT.2390 (GPU) — walang na-detect na device na may Vulkan support; gumamit na lang ng Standard FFmpeg curve sa halip.
  • Nawawala ang HandBrakeCLI backend — opsyonal ito at lalabas lang kapag nahanap ang HandBrakeCLI sa PATH mo.
  • Parang sinasakop ng conversion ang buong makina — ibaba ang process priority sa Efficiency.