github awawa-dev/HyperHDR v22.0.0.0
HyperHDR 22.0.0

7 hours ago

Highlights & Key Features

  • Infinite Color Engine: Breaks the standard RGB 24-bit barrier using high-precision floating-point arithmetic. By shifting transformations to linear sRGB space, we provide physically accurate light reproduction and native deep-color support for devices like Philips Hue and LIFX. This advanced processing also guarantees remarkably smooth color transitions and gradients, effectively eliminating color banding and maximizing accuracy for a natural ambient experience.
    Read more about ICE

  • Advanced Smoothing: Introduces a new generation of smoothing algorithms, including the innovative Hybrid Inertia mode. Designed for a more natural and fluid response, these algorithms make ambient lighting transitions exceptionally smooth and visually pleasing.

  • Adaptive Dithering & RGBW Enhancements: Powered by the fully realized Infinite Color Engine, we've implemented adaptive temporal dithering specifically for RGBW drivers (such as SK6812). This delivers silky-smooth animations and color transitions while avoiding flickering during static scenes. Alongside dithering, this update also introduces finer control over the dedicated white channel.
    Read more about new RGBW for ICE

  • Introducing Hyperk: Our new wireless solution is a brand-new, dedicated project that fills the final gap in our LED driver lineup. It's a robust wireless controller compatible with a massive range of platforms, including ESP8266, ESP32 (S2, S3, C2, C3, C5, C6), Raspberry Pi Pico W (RP2040, RP2350). A minimalist solution with a basic WLED-compatible API, ensuring seamless integration with environments like HyperHDR or Home Assistant. The latest update brings HyperSerial, multi-segment and power relay control support.
    Discover Hyperk here 🏠︎ Homepage

  • Massive Performance Leap: Video decoding for YUV, NV12, and P010 codecs has been heavily optimized, delivering impressive speed improvements of up to 46%. Additionally, Linux users benefit from an enhanced Pipewire implementation featuring hardware GPU scaling to drastically minimize CPU overhead.

  • Hardware & Ecosystem Expansion: Brings highly anticipated native PWM support for the Raspberry Pi 5, expanding options for modern builds. We have also transitioned our entire infrastructure to the modern Qt 6.8+ framework, resulting in noticeably smaller installers and seamless version consistency across all supported platforms. The build system now supports generating distribution-specific packages that rely on system dependencies instead of bundling external libraries. Additionally, configuration storage conforms to platform-native standards across all operating systems, with full Filesystem Hierarchy Standard compliance on Linux.

  • Signed Windows Installers: Thanks to the generous support of the SignPath Foundation, our Windows installers are now officially digitally signed. This guarantees that our binaries are safe and untampered with.

  • Modern C++20 Foundation: Marks a strategic transition to the C++20 standard. By leveraging the latest language capabilities, this update significantly boosts core engine performance, enhances overall system robustness, and ensures highly efficient long-term maintainability.

Changelog:

New features

  • Infinite Color Engine - Breaking RGB 24-bit Limits (#1261)
    • Floating-Point Precision: All color computations use high-precision floating-point arithmetic, eliminating cumulative rounding errors for more accurate results
    • Linear sRGB Accuracy: Core color transformations are processed in linear sRGB space, ensuring physically correct and consistent light reproduction
    • Deep-Color Support: Compatible devices, including Philips Hue lamps, LIFX and HD108 LEDs, can take advantage of rendering beyond standard 24-bit RGB color depth.
    • Advanced color smoothing algorithms: inertia-based physics, exponential, and perceptually-uniform YUV/RGB interpolators for more fluid and natural color transitions
    • Start migrating to modern C++20
    • Add Hybrid RGB Smoothing Interpolator (#1379)
    • Add Infinite Color Engine support to file LED driver (#1311)
    • Infinite Color Engine: add LIFX support for beyond 24-bit rendering (#1299)
    • Infinite Color Engine: fix for YUV & hybrid interpolators (#1302)
    • Fix RGBCMYK calibration (#1369)
    • Fix: Initial smoothing surge after period of static video input (#1410)
    • Fix: Minimum brightness preservation in YUV and Hybrid-Inertia smoothing modes (#1410)
    • New anti-flickering filter in the smoothing configuration (#1410)
      • Implements an anti-flickering filter that minimizes quantization jitter on 8-bit-per-channel drivers (24-bit RGB). Deep color capable drivers (like Philips Hue using entertainment mode) are bypassed as they don't suffer from LSB oscillation.
  • RGBW with Temporal Dithering - powered by Infinite Color Engine (#1483)
    • Temporal Dithering: Improved Precision and Adaptive Stabilization (#1490)
    • Add RGBW dithering for legacy RPi PWM & SPI sk6812 driver (#1498)
  • Significant speedup for YUV/NV12/P010 and related codecs (#1374)
    • Performance increased up to 46%
    • Compared performance of RPi 5 vs N100 in HyperHDR video decoding benchmark
    • Switched to modern C++20 format style logging
  • Improved, faster Pipewire + option to disable EGL (#1397)
    • GPU Scaling (EGL/DMA mode) - scales the desktop on the GPU; only the small final texture is sent to the CPU
    • Optional HW acceleration - option to disable EGL in the Pipewire configuration
    • Auto-resume - automatically restarts the grabber if dimensions change or the stream fails
    • EGL texture caching - improves performance by reusing textures
    • MemFD caching - reuses file descriptor memory mappings
  • Full FTDI and libFTDI dynamic runtime support. Thanks @nurikk-sa for help (#1155)
    • libFTDI support on Linux/macOS
    • Support of manufacturer "ftd2xx.dll" driver on Windows
  • Add PWM support for Raspberry Pi 5 GPIO/PIO (#1317)
  • Migrate ALL installers to Qt 6.8+. Breaking: docker build subsystem (#1203)
  • Philips Hue driver: add option for linear or nonlinear RGB color output (#1401)
  • Windows DX grabber: multi-monitor capturing status check & restart
  • DirectX grabber: support for portrait mode (#1200)
  • Switch to Filesystem Hierarchy Standard (FHS) compliant installation on Linux (#1477)
  • Migrate to standard OS config location if ~/.hyperhdr folder is missing (#1472)
  • Integrate SignPath for automated Windows code signing (#1479)
  • Add Philips WiZ support (driver + web wizard) Thanks @user83749 (#1469)
  • Implement DDP / Hyperk drivers (#1467)
  • Prepare support for RP2350 in HyperSerialPico integration (#1521)

Maintenance

  • Update language files. Thanks @AstaRom (#1396, #1300, #1288, #1131, #1402, #1403, #1445)
  • Add Windows-2025, macOS-15-intel, Debian Trixie and migrate others (#1296)
  • Update CMake configuration to add support for additional system libraries. Thanks @hatch01 (#1158)
  • Add USE_SYSTEM_SDBUS_CPP_LIBS option (#1140)
  • Update LunaSVG to v3.1.0 (#1139)
  • Amlogic grabber restore & refactor. Thanks @santievil (#1119)
  • Add Ubuntu 26.04 LTS and Fedora 44 (#1491)
  • More accurate simplified Chinese translation. Thanks @DaBinQwQ (#1520)
  • Upgrades old style format logging (with %) to c++20 format in some places (#1410)

Fixes

  • Fix smoothing algorithm drift in long-running sessions (#1561)
  • Fix RGB splitting across E1.31 universes (#1585)
  • Smoothing: restore continuous output control + stricter end detection (#1337)
  • Fix rendering w/o continuous output (#1377)
  • Improved state management of the software grabber during sleep and monitor‑suspend events (#1410)
  • Set disableOnLocked option enabled by default, because software grabbers for ex. Pipewire wont function properly without it (#1410)
  • Hide HyperHDR from the macOS Dock (#1345)
  • Add replacement for libglib2.0-0 (armhf, Y2038 bug) (#1341)
  • Add aspect ratio detection for Amlogic grabber. Thanks @santievil (#1476)
  • Fix ENABLE_PIPEWIRE_EGL=OFF build (#1138)
  • Restores custom user RGB order at the start (#1410)
  • Restores compatibility with Qt5.15 (#1410)
  • Don't rely on plutovg CMake script to detect C++11 threads support (#1253)
  • Fix for OpenSSL on macOS (needed by HTTPS/TLS) (#1290)
  • Add QElapsedTimer include to DriverNetLifx.cpp Thanks @arfoll (#1330)
  • Updated Home Assistant module to enable SSL support. Thanks @josh-blake (#1249)
  • Fix Dutch translations. Thanks @dijkstrar (#1122)
  • Improved handshake stability connecting to Philips Hue bridge using OpenSSL 3.2+ (#1410)
  • Remove min/max limits to allow using only a very small part of the screen capture as input area. Thanks @markusressel (#1175)
  • Translation resources
  • Add missing Qt meta-type registrations (#1456)
  • Allow capturing non-primary macOS displays (#1530)
  • Fix remote tab JSON parsing error caused by missing black color in API JSON scheme (#1471)
  • Fix build without PCH enabled. Thanks @HiassofT for help (#1497)
  • Use IANA-compliant HTTP reason phrases. Thanks @joeshull (#1510)

Don't miss a new HyperHDR release

NewReleases is sending notifications on new releases.