HDR to SDR Movie Converter लोगो HDR to SDR Movie Converter
FFmpeg · libplacebo/Vulkan · HandBrakeCLI

किसी भी स्क्रीन को HDR स्क्रीन में बदल दें। इतना आसान कि दादी भी कर सकें।

FFmpeg और HandBrake सपोर्ट, कई तरह के curves, और GPU पर असली BT.2390 वाला एक डेस्कटॉप टोन-मैपिंग टूल। 10-बिट और 12-बिट आउटपुट मुफ़्त शामिल है।

HDR to SDR Movie Converter ऐप विंडो: बाईं ओर फ़ाइलें, सोर्स एनालिसिस, प्रोग्रेस और कंट्रोल्स, दाईं ओर कन्वर्ज़न सेटिंग्स।
यह क्यों मायने रखता है

एक ही सोर्स — अलग नतीजे

फ़िल्म असल में कैसी दिखती है यह पूरी तरह इस बात पर निर्भर करता है कि यह कैसे किया गया है — कोई कन्वर्ज़न न होना, किसी मीडिया प्लेयर का खुद का जल्दबाज़ी में लगाया अंदाज़ा, या एक असली BT.2390 प्रक्रिया।

बिना HDR सपोर्ट वाली डिस्प्ले पर चलाया गया कच्चा HDR वीडियो — फीका, चपटा, कम कॉन्ट्रास्ट वाला चित्र।
कोई कन्वर्ज़न नहीं

कच्चा HDR, कोई कन्वर्ज़न नहीं

किसी ऐसी डिस्प्ले या प्रोजेक्टर पर एक बिना छेड़ी HDR फ़ाइल चलाना जो HDR को समझता ही नहीं — PQ/HLG curve को ऐसे दिखाया जाता है जैसे वह SDR हो, इसलिए सब कुछ धूसर, चपटा और फीका दिखता है।

वही HDR वीडियो VLC जैसे मीडिया प्लेयर द्वारा ऑटो-टोन-मैप किया गया — हाइलाइट्स दब गए, रंग बदल गया।
ऑटो टोन-मैप

मीडिया प्लेयर द्वारा ऑटो-कन्वर्ट किया गया

VLC जैसे प्लेयर अपना जल्दबाज़ी वाला टोन-मैप लगाते हैं ताकि प्लेबैक कम से कम देखने लायक रहे — आमतौर पर एक सीधी, फिक्स्ड curve जो हाइलाइट्स को क्लिप कर देती है या रंग बदल देती है, न कि आपकी चुनी हुई curve के साथ एक सोच-समझकर किया गया BT.2390 प्रोसेस।

वही HDR वीडियो इस ऐप की BT.2390 GPU टोन-मैपिंग से सही तरीके से SDR में बदला गया — संतुलित हाइलाइट्स और सटीक रंग।
असली BT.2390

सही BT.2390 टोन-मैपिंग

libplacebo के ज़रिए GPU पर चलने वाला असली ITU-R BT.2390 EETF — नियंत्रित हाइलाइट rolloff और सटीक रंग, आउटपुट एक असली SDR फ़ाइल के रूप में जो किसी भी स्टैंडर्ड डिस्प्ले के लिए तैयार है।

बैकएंड

टोन-मैप करने के तीन तरीके। जो आपके हार्डवेयर से मेल खाए उसे चुनें।

एक ही सोर्स वीडियो, तीन सच में अलग-अलग पाइपलाइन। कुछ भी "ऑटो" बटन के पीछे छुपाया नहीं गया है — आपने जो बैकएंड और curve चुनी है, बिल्कुल वही चलती है।

CPU · स्टैंडर्ड

स्टैंडर्ड FFmpeg

क्लासिक tonemap फ़िल्टर। तेज़, जहाँ भी FFmpeg काम करता है वहाँ काम करता है, GPU की ज़रूरत नहीं।

  • Hable, Reinhard, Mobius curves
  • Pro मोड Linear, Gamma, Clip, और एक सीधा "None" पास जोड़ता है
GPU · Vulkan

libplacebo / BT.2390

libplacebo के ज़रिए GPU पर असली ITU-R BT.2390 EETF चलाता है, वही रेफ़रेंस curve जिसके आस-पास ज़्यादातर HDR-से-SDR ग्रेड बनाए जाते हैं।

  • डिफ़ॉल्ट रूप से BT.2390
  • Pro मोड BT.2446A, ST2094-10, ST2094-40 (HDR10+), और Auto को अनलॉक करता है
वैकल्पिक

HandBrakeCLI

HandBrakeCLI के ज़रिए एक वैकल्पिक एन्कोड रास्ता, उन मामलों के लिए जहाँ किसी खास सोर्स पर उसकी अपनी पाइपलाइन बेहतर काम करती है।

  • वही resolution/encoder कंट्रोल्स
  • अपनी खुद की प्रोग्रेस पार्सिंग, Activity में लाइव दिखाई जाती है
फ़ीचर्स

एक सही कन्वर्ज़न के लिए ज़रूरी हर चीज़ — बिल्कुल सही तरीके से।

असली फ़ुटेज पर टोन-मैपिंग के काम में सच में जो गलत हो सकता है उसी के इर्द-गिर्द बनाया गया: गलत curve, गलत encoder, या ऐसा प्रोसेस जो चलते समय पूरी मशीन को अपने कब्ज़े में ले ले।

Resolution प्रीसेट्स

Source (कोई स्केलिंग नहीं), 4K, 1440p, 1080p, 720p, या 480p। स्केलिंग ऊँचाई के हिसाब से होती है, चौड़ाई अपने आप कैलकुलेट होती है ताकि सोर्स का aspect ratio कभी न बिगड़े।

अपने आप एनालाइज़ करता है

एक सोर्स चुनें और वह तुरंत पढ़ ली जाती है — transfer characteristics, bit depth, अवधि, HDR10+/Dolby Vision मेटाडेटा — उस खास फ़ाइल के लिए सुझाई गई curve के साथ। SDR आउटपुट path अपने आप भर जाता है, और विंडो पर कहीं भी वीडियो फ़ाइल ड्रैग करना Browse जैसा ही काम करता है।

Live Preview

आपके सोर्स से एक असली डिकोड और टोन-मैप किया गया फ़्रेम, जो सेटिंग्स बदलते ही अपडेट होता है, साथ में shadow/highlight clipping चेक ताकि detail बिगाड़ने वाली curve पूरी एन्कोडिंग से पहले ही पकड़ में आ जाए। इसे पूरे आकार में देखें या फ़्रेम को सीधे डिस्क पर सेव करें।

Live bitrate अनुमान

quality, resolution, या encoder बदलते ही अपने आप अपडेट होता है, ताकि कोई अनपेक्षित CRF/resolution combination Start दबाने से पहले ही दिख जाए।

Curve tooltips

किसी भी टोन-मैपिंग curve पर hover करें और उसके असली trade-offs की सीधी-सादी भाषा में जानकारी पाएं — मार्केटिंग की बातें नहीं।

Encoder चुनाव

CPU पर x264/x265, या NVIDIA NVENC, AMD AMF, या Apple VideoToolbox के ज़रिए हार्डवेयर एन्कोडिंग, H.264 या H.265 में।

10-बिट और 12-बिट आउटपुट

मुफ़्त, बिना लाइसेंस, बिना अलग बिल्ड के। 10-बिट किसी भी H.265 encoder (CPU या हार्डवेयर) के साथ काम करता है; 12-बिट CPU पर libx265 के ज़रिए उपलब्ध है — ऐप सिर्फ़ वही encoders दिखाता है जो आपकी चुनी हुई bit depth को सच में सपोर्ट करते हैं।

Pro मोड

पूरी CRF/CQ रेंज (0–51), एक brightness offset कंट्रोल, और अतिरिक्त टोन-मैप curves खोलता है — जब तक ज़रूरत न हो, यह सामने नहीं आता।

हार्डवेयर-एक्सेलरेटेड डिकोड

FFmpeg बैकएंड के लिए CUDA / DXVA2 / VideoToolbox डिकोड, ताकि GPU पढ़ने और टोन-मैपिंग दोनों का काम करे।

प्रोसेस प्राथमिकता और CPU कोर

Efficiency, Balanced, या Performance, साथ ही एक live CPU-core सीमा — दोनों Start पर लागू होते हैं और कन्वर्ज़न चलते समय एडजस्ट किए जा सकते हैं, ताकि लंबा batch आपकी बाकी मशीन को न रोके।

Activity और System

एक collapsible live log असली FFmpeg/HandBrake आउटपुट और प्रोग्रेस दिखाता है; एक System पैनल कन्वर्ट करने से पहले बताता है कि आपके सिस्टम पर क्या पाया गया — FFmpeg, Vulkan, HandBrakeCLI।

Windows पर एक-क्लिक सेटअप

गायब FFmpeg या HandBrakeCLI ऐप के अंदर से ही winget के ज़रिए इंस्टॉल हो जाता है — System पैनल से, या उसके बगल में मौजूद "Quick install" शॉर्टकट से — इंस्टॉल आउटपुट Activity में लाइव दिखता है।

HDR to SDR Movie Converter आइकन
डाउनलोड

ऐप पाएं

अगर आप सिर्फ़ चलाना चाहते हैं तो Windows बिल्ड, या अगर आप macOS/Linux पर हैं या पहले कोड पढ़ना चाहते हैं तो सोर्स।

Windows

Windows (.exe)

सिंगल-फ़ाइल बिल्ड, Python की ज़रूरत नहीं। FFmpeg फिर भी अलग से चाहिए — या इसे ऐप के अंदर winget के ज़रिए इंस्टॉल करें।

हमेशा सबसे नया रिलीज़ · Windows 10/11

सोर्स

सोर्स कोड

Python 3.10+ और pip install -r requirements.txt चाहिए। Windows, macOS, और Linux पर चलता है।

MIT लाइसेंस · main branch

दस्तावेज़

इंस्टॉल और उपयोग गाइड

यह ऐप एक ही PySide6 स्क्रिप्ट है। कोई इंस्टॉलर नहीं, कोई बैकग्राउंड सर्विस नहीं — आप इसे चलाते हैं, और यह सीधे FFmpeg (और वैकल्पिक रूप से HandBrakeCLI) को कॉल करता है।

ज़रूरतें

लॉन्च करने से पहले मशीन पर क्या होना चाहिए।

घटककिसलिए ज़रूरी
Python 3.10+ऐप को खुद चलाने के लिए
PySide6Qt-आधारित UI
FFmpegस्टैंडर्ड और GPU टोन-मैपिंग बैकएंड
Vulkan-सक्षम GPU + ड्राइवरख़ासतौर पर libplacebo/BT.2390 बैकएंड
HandBrakeCLI (वैकल्पिक)HandBrake बैकएंड
psutil (वैकल्पिक)लाइव pause/resume, CPU-core कंट्रोल, और CPU/GPU resource आँकड़े

इंस्टॉल और चलाना

तीन कमांड, और आप विंडो देख रहे होंगे।

# 1. स्क्रिप्ट और उसकी Python dependencies पाएं
pip install PySide6 psutil

# 2. सुनिश्चित करें कि FFmpeg आपके PATH में है
ffmpeg -version

# 3. लॉन्च करें
python hdr_to_sdr_gui_qt.py
Windows: अगर FFmpeg या HandBrakeCLI नहीं मिलते, तो उन्हें हाथ से इंस्टॉल करने के बजाय System पैनल खोलें और "Install missing (winget)" इस्तेमाल करें।

बुनियादी वर्कफ़्लो

HDR सोर्स फ़ाइल से SDR आउटपुट तक।

  1. सोर्स फ़ाइल चुनें। कोई भी HDR container जिसे FFmpeg पढ़ सके — एनालिसिस अपने आप चलता है (transfer function, bit depth, HDR10+/Dolby Vision मेटाडेटा, और एक सुझाई गई curve), और SDR आउटपुट path अपने आप भर जाता है। फ़ाइल को विंडो पर ड्रैग करना Browse जैसा ही काम करता है।
  2. एक बैकएंड और curve चुनें। GPU पर BT.2390 एक समझदार डिफ़ॉल्ट है; अगर आपके पास Vulkan-सक्षम GPU नहीं है तो Standard FFmpeg पर स्विच करें। किसी भी curve पर hover करके उसके असली trade-offs देखें।
  3. resolution, encoder, और bit depth सेट करें। मूल फ़्रेम साइज़ और aspect ratio बनाए रखने के लिए resolution को "Source" पर छोड़ दें, या उसी पास में downscale करने के लिए एक प्रीसेट चुनें।
  4. quality एडजस्ट करें, या Pro मोड चालू करें पूरी CRF/CQ रेंज और brightness offset के लिए। कन्फ़र्म करने से पहले Live Preview चेक करें — यह एक असली टोन-मैप किया फ़्रेम दिखाता है और shadow/highlight clipping बताता है — साथ ही live bitrate अनुमान भी।
  5. कन्वर्ट करें, और Activity में प्रोग्रेस और live FFmpeg/HandBrake आउटपुट देखें। Pause/resume, CPU-core सीमाएं, और प्रोसेस प्राथमिकता सभी चलते समय एडजस्ट की जा सकती हैं।

एक curve चुनना

ये सभी असली, दस्तावेज़ीकृत FFmpeg/libplacebo टोन-मैपिंग विकल्प हैं — यहाँ कुछ भी गढ़ा नहीं गया है।

Curveबैकएंडकब इस्तेमाल करें
BT.2390GPUडिफ़ॉल्ट चुनाव — रेफ़रेंस EETF जिसे ज़्यादातर HDR-से-SDR ग्रेड टारगेट करते हैं
HableCPUFilmic rolloff, GPU ज़रूरी नहीं
Reinhard / MobiusCPUHable के मुक़ाबले नरम highlight rolloff विकल्प
BT.2446AGPU · ProBT.2390 का broadcast-केंद्रित विकल्प
ST2094-10 / ST2094-40GPU · ProDynamic टोन-मैपिंग; ST2094-40 मौजूद होने पर HDR10+ मेटाडेटा इस्तेमाल करता है
Linear / Gamma / Clip / NoneCPU · ProDiagnostic या manual-grading पास, सामान्य इस्तेमाल के लिए नहीं

समस्या निवारण

System पैनल पहला पड़ाव है — इसे bug के तौर पर रिपोर्ट करने से पहले यह बताता है कि असल में क्या पहचाना गया।

  • BT.2390 (GPU) विकल्प ग्रे हो गया है — कोई Vulkan-सक्षम डिवाइस नहीं मिला; इसके बजाय एक Standard FFmpeg curve इस्तेमाल करें।
  • HandBrakeCLI बैकएंड गायब है — यह वैकल्पिक है और तभी दिखता है जब आपके PATH में HandBrakeCLI मिल जाए।
  • ऐसा लगता है कि कन्वर्ज़न पूरी मशीन को अपने कब्ज़े में ले रहा है — Process priority को Efficiency पर सेट करें।