Una herramienta de escritorio para tone-mapping con soporte de FFmpeg y HandBrake, una amplia variedad de curvas, y BT.2390 real en la GPU. Salida de 10 y 12 bits incluida, gratis.
Cómo se ve realmente la película depende por completo de cómo se procese — sin ninguna conversión, con la estimación rápida propia de un reproductor multimedia, o con un verdadero paso de BT.2390.
Reproducir un archivo HDR intacto en una pantalla o proyector que no entiende HDR — la curva PQ/HLG se muestra como si fuera SDR, así que todo se ve gris, plano y deslavado.
Reproductores como VLC aplican su propio tone-mapping rápido para que la reproducción sea al menos mirable — normalmente una curva fija y tosca que recorta luces o desplaza el color, no un paso deliberado de BT.2390 con una curva que hayas elegido.
La verdadera EETF ITU-R BT.2390, ejecutada en la GPU vía libplacebo — caída controlada de luces y color preciso, con salida como un archivo SDR real listo para cualquier pantalla estándar.
El mismo video de origen, tres pipelines genuinamente distintos. Nada se esconde detrás de un botón "auto" — el motor y la curva que elijas son exactamente los que se ejecutan.
El filtro clásico tonemap. Rápido, funciona en cualquier lugar donde funcione FFmpeg, no requiere GPU.
Ejecuta la verdadera EETF ITU-R BT.2390 en la GPU vía libplacebo, la misma curva de referencia sobre la que se construyen la mayoría de las conversiones profesionales de HDR a SDR.
Una ruta de codificación alternativa mediante HandBrakeCLI para casos en que su propio pipeline se comporta mejor con una fuente en particular.
Construido en torno a las cosas que realmente salen mal en un trabajo de tone-mapping con material real: la curva equivocada, el codificador equivocado, o un proceso que acapara toda la máquina mientras se ejecuta.
Source (sin escalado), 4K, 1440p, 1080p, 720p, o 480p. El escalado se guía por la altura, con el ancho calculado automáticamente para que la relación de aspecto de la fuente nunca se estire.
Elige una fuente y se lee de inmediato — características de transferencia, profundidad de bits, duración, metadatos HDR10+/Dolby Vision — con una curva sugerida para ese archivo en concreto. La ruta de salida SDR se rellena automáticamente, y arrastrar un archivo de video a la ventana funciona igual que Examinar.
Un fotograma real, decodificado y con tone-mapping aplicado, de tu fuente, que se actualiza al cambiar ajustes, con una verificación de recorte de sombras/luces para que una curva que arruina detalle se note antes de la codificación completa. Míralo a tamaño completo o guarda el fotograma directamente en disco.
Se actualiza automáticamente al cambiar calidad, resolución, o codificador, para que una combinación sorprendente de CRF/resolución sea visible antes de pulsar Iniciar.
Pasa el cursor sobre cualquier curva de tone-mapping para ver una explicación clara de sus verdaderos compromisos — no texto de marketing.
x264/x265 en CPU, o codificación por hardware vía NVIDIA NVENC, AMD AMF, o Apple VideoToolbox, en H.264 o H.265.
Gratis, sin licencia, sin build separado. El 10 bits funciona con cualquier codificador H.265 (CPU o hardware); el 12 bits está disponible vía libx265 en CPU — la app solo muestra codificadores que realmente admiten la profundidad de bits elegida.
Abre el rango completo de CRF/CQ (0–51), un control de desplazamiento de brillo, y las curvas de tone-mapping adicionales — fuera de vista hasta que las necesites.
Decodificación CUDA / DXVA2 / VideoToolbox para el motor FFmpeg, de modo que la GPU se encarga tanto de la lectura como del tone-mapping.
Eficiencia, Equilibrado, o Rendimiento, más un límite de núcleos de CPU en vivo — ambos aplicados al iniciar y ajustables mientras una conversión está en curso, para que un lote largo no bloquee el resto de tu máquina.
Un registro en vivo colapsable transmite la salida real de FFmpeg/HandBrake y el progreso; un panel de Sistema informa qué se detectó en tu equipo — FFmpeg, Vulkan, HandBrakeCLI — antes de convertir.
El FFmpeg o HandBrakeCLI faltante se instala vía winget desde dentro de la app — desde el panel de Sistema, o el acceso directo "Instalación rápida" justo al lado — con la salida de instalación transmitida en Actividad.
Un build de Windows si solo quieres ejecutarla, o el código fuente si usas macOS/Linux o quieres leer el código primero.
Build de un solo archivo, no requiere Python. FFmpeg sigue siendo necesario por separado — o instálalo desde la app vía winget.
Siempre la versión más reciente · Windows 10/11
Requiere Python 3.10+ y pip install -r requirements.txt. Funciona en Windows, macOS, y Linux.
Licencia MIT · rama main
La app es un único script en PySide6. Sin instalador, sin servicio en segundo plano — la ejecutas, y ella invoca directamente a FFmpeg (y opcionalmente a HandBrakeCLI).
Lo que debe estar en el equipo antes de ejecutarla.
| Componente | Necesario para |
|---|---|
| Python 3.10+ | Ejecutar la app en sí |
| PySide6 | La interfaz basada en Qt |
| FFmpeg | Los motores de tone-mapping estándar y por GPU |
| GPU compatible con Vulkan + drivers | Específicamente el motor libplacebo/BT.2390 |
| HandBrakeCLI (opcional) | El motor de HandBrake |
| psutil (opcional) | Pausa/reanudación en vivo, control de núcleos de CPU, y estadísticas de recursos de CPU/GPU |
Tres comandos, y ya estarás viendo la ventana.
# 1. Obtén el script y sus dependencias de Python pip install PySide6 psutil # 2. Asegúrate de que FFmpeg esté en tu PATH ffmpeg -version # 3. Ejecutar python hdr_to_sdr_gui_qt.py
Del archivo fuente HDR a la salida SDR.
Todas estas son opciones de tone-mapping de FFmpeg/libplacebo reales y documentadas — nada aquí está inventado.
| Curva | Motor | Cuándo usarla |
|---|---|---|
| BT.2390 | GPU | Elección por defecto — la EETF de referencia a la que apuntan la mayoría de las conversiones de HDR a SDR |
| Hable | CPU | Caída fílmica, no necesita GPU |
| Reinhard / Mobius | CPU | Alternativas con caída de luces más suave respecto a Hable |
| BT.2446A | GPU · Pro | Alternativa orientada a broadcast frente a BT.2390 |
| ST2094-10 / ST2094-40 | GPU · Pro | Tone-mapping dinámico; ST2094-40 usa metadatos HDR10+ cuando están presentes |
| Linear / Gamma / Clip / None | CPU · Pro | Pasos de diagnóstico o de corrección manual, no para uso general |
El panel de Sistema es la primera parada — informa exactamente qué se detectó antes de reportar esto como un error.