I have the pleasure of submitting another version for testing: HyperHDR 21 beta1. I hope you will find the new features & improvements interesting and useful.
-
The architecture has been rebuilt once again, this time focusing on further eliminating heavy dependencies from the past. In addition to lower resource consumption, you will definitely notice how much the installers have been slimmed down (they still contain all the necessary dependent components) and the HyperHDR application itself.
-
The DirectX grabber has been expanded with a multi-monitor option. You no longer have to use external applications to capture a second or third monitor. Do you still use them? So please make sure they provide full acceleration support by the graphics card as HyperHDR does including using pixel & vertex shaders to scale the textures before sending them from the graphics card memory to the computer so as not to block communication resources which can cause for example: performance drops in games. It is also the cheapest and most effective alternative to HDMI grabbers and splitters on Windows x64 platforms such as multimedia miniPCs with N100. All you need for such setups is USB LED driver like Pico with HyperSerialPico.
More about DirectX 11 grabber can be found here: https://github.com/awawa-dev/HyperHDR/wiki/DirectX-11-software-grabber -
Another new feature that I think will be useful for many people is automatic tone mapping. In case you can't control it from outside via the application's API this is the solution for you. Once enabled HyperHDR will analyze the video image and enable it automatically for dark and faded raw HDR signal and disable it when it detects bright SDR image with normal colors.
More about automatic tone mapping can be found here: https://github.com/awawa-dev/HyperHDR/wiki/Automatic-tone-mapping -
In the past, the process of calibrating the grabber's LUT to obtain the best possible colors was quite problematic: to do it, it usually required a PC set. HyperHDR v21 introduces a small revolution here because now all you have to do is play the calibration MP4 file in your favorite player and HyperHDR will take care of the rest. Thanks to this, we calibrate not only the grabber and TV, but also your default video player. HyperHDR was also the first to introduce support for the NV12 codec for flatbuffers, which opened completely new perspectives for the calibration of external systems because standard RGB flatbuffer stream was usually already processed at the source.
You can find more about the new LUT calibration using MP4 files here: https://github.com/awawa-dev/HyperHDR/wiki/lut-calibration
If you own Elgato HD60X make sure you read it ⚠️ ⇒ #1010 -
I am also pleased to announce for the first time support for the 10-bit P010 codec, which is already appearing in increasingly cheaper grabbers such as the UGreen 25173 (which can only gain in attractiveness after what happened with ELgato HD60X, more: #1010). While it does not contribute much to SDR signals, it changes the situation a lot when it comes to HDR by expanding the default narrow bandwidth range above the standard 8-bits, minimizing the quantization effect. Another advantage is that it is usually a raw signal not damaged by the grabber trying to process the HDR signal as SDR. The format is supported by default by Windows, and when it comes to Linux, I created a patch for the UVC module so that it also works on this system.
The HyperHDR SD image already has a patch for P010. Note that it is based on the newer Bookworm so configuring wifi via wpa_supplicant will no longer work: for this you need to use the Raspberry PI imager installer (raspberrypi/bookworm-feedback#72). For Raspberry Pi 3b and Zero 2W users, I would like to remind you about a bug in the Raspberry Pi kernel that can cause incorrect display of colors on Bookworm (#848).
More about support for the P010 format can be found here: https://github.com/awawa-dev/HyperHDR/wiki/p010-video-format
Full changelog:
- Automatic tone mapping (#998)
- Add Ubuntu 24.10 and Fedora 41 (#1001)
- Add support for "unicam image" RPi HDMI capture card and UYVY format (#889)
- Breaking change: remove LUT from installer and create it dynamically (#994)
- Fix macOS 15 dark theme menu icons (#988)
- Add P010 HDR10 video format support (#968)
- DirectX multi-monitor support (#966)
- macOS 15 sequoia: migrate to ScreenCaptureKit (#984)
- Add Skydimo support (#985)
- New LUT calibration based on mp4 test videos (part I) (#896)
- feat: updated rpi_ws281x submodule, thanks @andreasvikke (#974)
- DX grabber: stick to user specified device selection (#961)
- Fix LED colors adjustments by configuration name (#956)
- Add autoresume feature for the macOS software grabber (#879)
- Add NV12 image format support for flatbuffers (#920)
- Update language file's Thanks @AstaRom (#883, #923, #998)
- Update flatbuffers to v24.3.25 (#875)
- Add cache_cleaner for Github Action (#910)
- New build.sh script for the HyperHDR build process (#904)
- Remove Alsa libs from CMake recipe
- Remove more unnecessary libraries from installers
- Remove libasound from installers
- Fix restoring calibration settings (#874)
- Reorganize HyperHDR libs (#887)
- Fix macOS image alignment (#838)
- Remove hyperhdr-remote app. Reason: #856
- Refactoring of the FlatBuffers client and server (#880)
- Remove mbedtls. Use OpenSSL (#877)
- Removal of QT SQL. Migrate to the SQLite library. (#872)
- New smoothing option for sound effects, fix ArchLinux installer, refactoring of the smoothing module and music effects (#871)
- Removal of QT D-Bus, switch to sdbus-cpp (#864)
- Dependency reductions: removal of heavy QT Gui lib (#861)
- Fix DirectX capturing after new Systray changes
- New independed systray. Dependency reductions thanks to removal of QWidget (#852)
- Fix: lut calibration for grabberless builds (#840)