Логотип HDR to SDR Movie Converter HDR to SDR Movie Converter
FFmpeg · libplacebo/Vulkan · HandBrakeCLI

Перетворіть будь-який екран на HDR-екран. Настільки просто, що впорається бабуся.

Програма для тон-мапінгу з підтримкою FFmpeg та HandBrake, широким вибором кривих і справжнім BT.2390 на GPU. Вивід 10-bit і 12-bit включено безкоштовно.

Вікно застосунку HDR to SDR Movie Converter: файли, аналіз джерела, прогрес і керування зліва, налаштування конвертації справа.
Чому це важливо

Те саме джерело — різний результат

Те, як фільм насправді виглядає, повністю залежить від способу обробки — без жодної конвертації, через швидку здогадку медіаплеєра або через справжній прохід BT.2390.

Необроблене HDR-відео, відтворене на екрані без підтримки HDR — блякле, пласке зображення з низьким контрастом.
Без конвертації

Початковий HDR без конвертації

Відтворення неторканого HDR-файлу на екрані чи проєкторі, який не розуміє HDR — крива PQ/HLG показується так, ніби це SDR, тому все виглядає сірим, пласким і блідим.

Те саме HDR-відео з автоматичним тон-мапінгом медіаплеєра на кшталт VLC — втрачені світлі ділянки, зміщений колір.
Авто тон-мапінг

Автоконвертація медіаплеєром

Такі плеєри, як VLC, застосовують власний швидкий тон-мапінг, щоб відео було хоч якось придатне для перегляду — зазвичай це груба фіксована крива, яка обрізає світлі ділянки або спотворює колір, а не свідомий прохід BT.2390 з обраною вами кривою.

Те саме HDR-відео, коректно конвертоване у SDR за допомогою тон-мапінгу BT.2390 на GPU цього застосунку — збалансовані світлі ділянки та точний колір.
Справжній BT.2390

Правильний тон-мапінг BT.2390

Справжня функція ITU-R BT.2390 EETF, яка виконується на GPU через libplacebo — контрольований спад світлих ділянок і точний колір, вивід у вигляді справжнього SDR-файлу, готового для будь-якого стандартного екрана.

Бекенди

Три способи тон-мапінгу. Оберіть той, що підходить вашому обладнанню.

Те саме вихідне відео, три по-справжньому різні конвеєри обробки. Нічого не приховано за кнопкою «авто» — запускається саме той бекенд і крива, які ви обрали.

CPU · Стандартний

Стандартний FFmpeg

Класичний фільтр tonemap. Швидкий, працює всюди, де є FFmpeg, GPU не потрібен.

  • Криві Hable, Reinhard, Mobius
  • Pro-режим додає Linear, Gamma, Clip і прямий прохід "None"
GPU · Vulkan

libplacebo / BT.2390

Запускає справжню функцію ITU-R BT.2390 EETF на GPU через libplacebo — ту саму еталонну криву, навколо якої побудована більшість професійних градацій HDR-у-SDR.

  • BT.2390 за замовчуванням
  • Pro-режим відкриває BT.2446A, ST2094-10, ST2094-40 (HDR10+) та Auto
Опційно

HandBrakeCLI

Альтернативний шлях кодування через HandBrakeCLI для випадків, коли його власний конвеєр працює краще на конкретному джерелі.

  • Ті самі налаштування роздільної здатності/кодека
  • Власний парсинг прогресу, відображається в реальному часі у вкладці «Активність»
Можливості

Усе необхідне для правильної конвертації.

Побудовано навколо тих моментів тон-мапінгу, які насправді йдуть не так на реальному відео: не та крива, не той кодек, або процес, що забирає собі всю машину під час роботи.

Пресети роздільної здатності

Source (без масштабування), 4K, 1440p, 1080p, 720p або 480p. Масштабування йде за висотою, ширина обчислюється автоматично, тому пропорції джерела ніколи не розтягуються.

Аналіз виконується автоматично

Оберіть джерело — і воно одразу зчитується: характеристики передавання, глибина кольору, тривалість, метадані HDR10+/Dolby Vision — із запропонованою кривою саме для цього файлу. Шлях для SDR-файлу заповнюється автоматично, а перетягування відеофайлу на вікно працює так само, як кнопка «Огляд».

Live Preview

Справжній декодований і тон-мапований кадр із вашого джерела, що оновлюється при зміні налаштувань, із перевіркою обрізання тіней/світлих ділянок — щоб помітити втрату деталей ще до повного кодування. Можна переглянути в повному розмірі або зберегти кадр на диск.

Оцінка бітрейту в реальному часі

Оновлюється автоматично при зміні якості, роздільної здатності чи кодека, тож несподівана комбінація CRF/роздільної здатності видно ще до натискання «Старт».

Підказки щодо кривих

Наведіть курсор на будь-яку криву тон-мапінгу, щоб побачити просте пояснення реальних компромісів — без маркетингових формулювань.

Вибір кодека

x264/x265 на CPU або апаратне кодування через NVIDIA NVENC, AMD AMF чи Apple VideoToolbox, у форматах H.264 або H.265.

Вивід 10-bit і 12-bit

Безкоштовно, без ліцензії, без окремої збірки. 10-bit працює з будь-яким кодеком H.265 (CPU чи апаратним); 12-bit доступний через libx265 на CPU — застосунок показує лише ті кодеки, які реально підтримують обрану глибину кольору.

Pro-режим

Відкриває повний діапазон CRF/CQ (0–51), регулювання зміщення яскравості та додаткові криві тон-мапінгу — все це приховано, поки не знадобиться.

Апаратно прискорене декодування

Декодування через CUDA / DXVA2 / VideoToolbox для бекенду FFmpeg, тож GPU займається і читанням, і тон-мапінгом.

Пріоритет процесу та ядра CPU

Efficiency, Balanced або Performance, плюс ліміт ядер CPU в реальному часі — застосовується при старті й регулюється прямо під час конвертації, тож довга обробка не блокує решту роботи комп'ютера.

Активність і Система

Згортаний лог у реальному часі показує справжній вивід FFmpeg/HandBrake та прогрес; панель «Система» повідомляє, що виявлено на вашому комп'ютері — FFmpeg, Vulkan, HandBrakeCLI — ще до початку конвертації.

Встановлення в один клік на Windows

Відсутній FFmpeg чи HandBrakeCLI встановлюється через winget прямо з застосунку — з панелі «Система» або через ярлик «Швидке встановлення» поруч із нею, з виводом встановлення прямо у вкладці «Активність».

Іконка 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

Документація

Посібник із встановлення та використання

Застосунок — це один скрипт на PySide6. Немає інсталятора, немає фонової служби — ви запускаєте його, а він напряму викликає FFmpeg (і опційно HandBrakeCLI).

Вимоги

Що має бути встановлено на комп'ютері перед запуском.

КомпонентПотрібен для
Python 3.10+Запуску самого застосунку
PySide6Інтерфейсу на базі Qt
FFmpegСтандартного та GPU-бекенду тон-мапінгу
GPU з підтримкою Vulkan + драйвериСаме бекенду libplacebo/BT.2390
HandBrakeCLI (опційно)Бекенду HandBrake
psutil (опційно)Пауза/відновлення в реальному часі, керування ядрами CPU та статистика ресурсів CPU/GPU

Встановлення і запуск

Три команди — і ви вже дивитеся на вікно застосунку.

# 1. Отримайте скрипт та його Python-залежності
pip install PySide6 psutil

# 2. Переконайтеся, що FFmpeg є в PATH
ffmpeg -version

# 3. Запуск
python hdr_to_sdr_gui_qt.py
Windows: якщо FFmpeg чи HandBrakeCLI не знайдено, відкрийте панель «Система» та скористайтеся «Встановити відсутнє (winget)» замість ручного встановлення.

Базовий робочий процес

Від вихідного HDR-файлу до виводу в SDR.

  1. Оберіть вихідний файл. Будь-який HDR-контейнер, який може прочитати FFmpeg — аналіз запускається автоматично (функція передавання, глибина кольору, метадані HDR10+/Dolby Vision і запропонована крива), а шлях для SDR-файлу заповнюється автоматично. Перетягування файлу на вікно працює так само, як кнопка «Огляд».
  2. Оберіть бекенд і криву. BT.2390 на GPU — розумний вибір за замовчуванням; перейдіть на стандартний FFmpeg, якщо у вас немає GPU з підтримкою Vulkan. Наведіть курсор на будь-яку криву, щоб побачити її реальні компроміси.
  3. Задайте роздільну здатність, кодек і глибину кольору. Залиште роздільну здатність на «Source», щоб зберегти початковий розмір кадру та пропорції, або оберіть пресет для зменшення роздільної здатності в тому самому проході.
  4. Налаштуйте якість або увімкніть Pro-режим для повного діапазону CRF/CQ та регулювання яскравості. Перевірте Live Preview — там показано реальний тон-мапований кадр і позначено обрізання тіней/світлих ділянок — а також оцінку бітрейту в реальному часі перед запуском.
  5. Конвертуйте і слідкуйте за прогресом і живим виводом FFmpeg/HandBrake у вкладці «Активність». Паузу/відновлення, ліміти ядер CPU та пріоритет процесу можна змінювати прямо під час роботи.

Вибір кривої

Усі ці варіанти — реальні, задокументовані опції тон-мапінгу FFmpeg/libplacebo, нічого тут не вигадано.

КриваБекендКоли використовувати
BT.2390GPUВибір за замовчуванням — еталонна EETF, на яку орієнтується більшість градацій HDR-у-SDR
HableCPUКіношний спад, GPU не потрібен
Reinhard / MobiusCPUМ'якший спад світлих ділянок — альтернатива Hable
BT.2446AGPU · ProМовна альтернатива BT.2390
ST2094-10 / ST2094-40GPU · ProДинамічний тон-мапінг; ST2094-40 використовує метадані HDR10+, якщо вони є
Linear / Gamma / Clip / NoneCPU · ProДіагностичні або ручні проходи для градації, не для повсякденного використання

Вирішення проблем

Панель «Система» — перше, куди варто зазирнути: вона точно показує, що було виявлено, перш ніж повідомляти про це як про баг.

  • Опція BT.2390 (GPU) неактивна — не виявлено пристрій з підтримкою Vulkan; використовуйте натомість криву стандартного FFmpeg.
  • Бекенд HandBrakeCLI відсутній — він опційний і з'являється лише після того, як HandBrakeCLI знайдено у вашому PATH.
  • Здається, що конвертація забирає собі весь комп'ютер — знизьте пріоритет процесу до Efficiency.