Releases: Maassoft/ColorControl
New release: 9.8.2.1
Hotfix release for scaling issues
Scaling issues are now resolved. Make sure the option "Use GDI Scaling" is checked.
In the log the following line should now be visible just after starting ColorControl:
Result of setting SetHighDpiMode: True
New release: 9.8.2.0
General
- updated to .NET 8 which may improve the performance and security
- the setting "SDR brightness boost" for HDR color profiles has been renamed "Brightness boost" and is now available for all SDR Transfer functions. It provides a generic way to increase brightness.
- the preset menu items in the notification icon menu are now sorted alphabetically (#330)
NVIDIA controller
- added "9 - RTX" section to the "NVIDIA Profile Inspector" where you can enable/disable RTX Dynamic Vibrance and RTX HDR on a per game basis. Note that for RTX HDR, the Contrast and Saturation values are based on "100" being the default value (not 0 like in the NVIDIA App).
- improved dither panel where you can now save the dither settings to the registry and can restart the driver. This provides a workaround for high bandwidth displays (which use DSC) where the normal dither settings have an effect on only half the screen.
LG controller
- added "Volume" setting under Expert->Sound. This can also be added to the Game Bar. (#323)
- added "Noise Reduction" and "MPEG Noise Reduction" settings and made "AI Brightness" available for 2019 series and later (#325)
- added "Game Bar showing time" option under Settings. The Game Bar will also not be hidden anymore as long as the mouse is over the window (#323)
LG controller/Samsung controller
- fixed issue where trigger conditions where not properly considered and triggers could go off regardless of those conditions
New release: 9.8.1.0
General
Updated the generation of color profiles:
- added generation of SDR color profiles. Deactivate HDR first before creating a SDR profile. Activating such a profile may instruct Windows to do a Color Space Conversion from the display's native primaries to sRGB (alternative to Novideo sRGB). Do not use this in conjunction with Novideo sRGB or the colors might be desaturated because of double Color Space Conversion.
- the UI now disables certain fields if they are not applicable
- added a Load button to load either the selected "existing profile" or you can manually choose a .icc/.icm file. NOTE: reading the "Target Gamut" and "Advanced HDR Settings" (SDR properties) will only work for new profiles that are created by ColorControl
- added a Delete button to delete the selected existing profile
- added option to set MinTML and MaxTML (Tone Map Luminance) upon activation of a color profile. This option has also been added to the Advanced Settings on the Options tab. If activated, applying a color profile from a NVIDIA preset will automatically correct the MinTML and MaxTML based on the luminance values of the profile. (#308)
NVIDIA controller
- added "Output Mode" under HDR settings of a preset. This enables you to either choose HDR10 (default) or HDR10+ output modes. While this allows you to enable HDR10+ on the desktop or non HDR10+ games, this will not magically add dynamic metadata. It will change the picture mode of your HDR10+ capable TV/monitor though, so it might add a way to handily switch between picture modes. NVIDIA driver version 525+ is required (and of course HDR10+ capable devices).
- an error when retrieving HDMI info frame data is now ignored. May occur when display(s) are not properly initialized yet (#292)
LG controller
- added actions to directly enable/disable Temporal Peak Luminance Control (TPC) or Global Sticky/Stress Reduction (GSR) without going into the Service Menu. This is available for all 2020+ OLED series. Credits go to https://github.com/chros73/bscpylgtv!
- errors are now ignored when using the turnScreenOff/turnScreenOn actions (application error 500 is thrown by LG's web service if screen is already turned off or on) (#309)
LG controller/Samsung controller
Added the following trigger types to presets: Startup, Shutdown, Resume, Standby, Screensaver start/stop. This allows presets to be automatically executed upon those events. The Resume and Startup events are executed after the connection has been made. (#299)
Notes:
- these events can be used to apply color profiles because they are only applied once the display is active. You can add a NvPreset to the steps of the LG/Samsung preset to achieve this. Add the SDR or HDR condition to apply the proper profile for the active mode. This might be a workaround for issue #314.
- do not execute lengthy steps in the Shutdown or Standby events. Obviously shutting down or suspending the system will take longer then and Windows doesn't like it when a program stalls the shutdown/standby process.
Hotfix release: 9.8.0.1
This hotfix release fixes these issues:
- Missing 'lcms2.dll' error when generating color profile (#305, #306). The debug version has been replaced with a release version.
- Error when opening Create Color Profile dialog when no Nvapi is present. The EDID is now only read from registry and if not available, the color primaries will revert to sRGB color space.
New release: 9.8.0.0
General
Added functionality to create a customizable HDR Color Profile for displays. This can be done via the new "Color Profiles..." button on the Options tab page.
Activate HDR first before clicking this button.
In short words: this allows you to set up a custom gamma (with corrections for SDR), minimum and maximum luminance and other color gamuts (to enable Color Space Conversion).
General Profile Settings
Here you can configure the properties of the display and the target Color Gamut. The primaries (color coordinates) are sourced from either the EDID or Windows.
These are only needed when you want to perform Color Space Conversion (CSC). CSC is disabled by default if the Color Gamut is set to "Native".
Min/max luminance values are always fetched via a Windows API.
Advanced HDR Settings
In this section you can configure the gamma ramp that is used for displaying SDR in HDR space (also affects normal HDR content). This allows you to create color profiles like those that are available here: https://github.com/dylanraga/win11hdr-srgb-to-gamma2.2-icm
You can choose your own "SDR Transfer Function" and gamma value (like under MacOS). With the SDR minimum and maximum brightness it is possible to restrict the range (in nits) of changes to the gamma curve.
The default function is "Pure Power" which enables a customizable gamma curve for SDR in HDR space. BT.1886 will only use gamma 2.4, minimum brightness 0.03 and maximum brightness 120. "Piecewise" simply uses the standard curve (Windows default).
With SDR brightness boost you can add or subtract a speficic percentage to the calculated values over the entire gamma ramp. Sane values are 5-20% and may make SDR brighter (even when the Windows SDR content brightness is already at 100%). Higher values can cause clipping (this will also affect normal HDR content).
Advanced Profile Settings
You can configure the MinCLL and MaxCLL values for the MHC2 tag here (more info: https://learn.microsoft.com/en-us/windows/win32/wcs/display-calibration-mhc#new-mhc2-tag-for-icc-profiles)
Generate Options
This group contains the "Generate" button which generates the profile and has some options to control what to do after it has been generated.
Default the "Save option" is set to "Install and set as default" which means that the profile will be immediately installed and set as the default color profile for the selected display.
This allows you to instantaneously see the effects of the new color profile.
Notes:
- although most values have limiters, it might be possible to enter values that render the screen unreadable (full black or white screen). If that happens use a shortcut to switch to SDR and remove the color profile manually via the Color Management app
NVIDIA controller
- added "Digital Vibrance" and "Hue" controls to the new sub menu "Color Enhancements". Brightness, contrast and gamma are not supported (there does not seem to be a public or even private NVAPI for these) (#300)
LG controller
- activated the "Enable Full Service Menu" menu item for the 2022 and 2023 A2 and A3 OLED models (#304)
New release: 9.7.2.0
General
- removed test code that could cause an exception when clicking the main window outside the tab control (#287)
- implemented lazy loading of the WebView2 control on the Info tab which prevents multiple msedgewebview2.exe processes from starting with ColorControl (#294)
NVIDIA controller
- improved activation of "Apply on startup" preset by properly waiting for selected display to become active (max 20 seconds wait time)
- (partly) fixed NVAPI_ERROR that could occur directly after startup of Windows
LG controller
- activated the "Enable Full Service Menu" menu item for the 2022 OLED models (was already activated for 2023 OLED models) (#285)
New release: 9.7.1.0
General
- fixed "Automatically start after login" not creating/removing the scheduled task (#279)
NVIDIA controller
Added preliminary support for color profiles under Other->Color Profile. Currently this will allow you to bind a color profile to a preset and upon activation this will become the default color profile of the display.
This is especially useful when using color profiles that alter the gamma curve in HDR, but must be switched off in SDR. An example of this can be this project: https://github.com/dylanraga/win11hdr-srgb-to-gamma2.2-icm
With such a color profile, you can improve the washed out appearance of SDR while HDR is active.
Remarks:
- for now, color profiles must be installed manually through the Color Management app
- to revert the effects of a specific color profile you can switch to a color profile that is generated by the Windows HDR Calibration app. You can apply these even in SDR and then it will simply reset any gamma/color changes.
- Windows 10/11 Build 20348 is the minimum supported version
- the "Color accuracy mode" in the NVIDIA Control Panel must not be overridden to reference mode
LG controller
- activated the "Enable Full Service Menu" menu item for the B3 model (was already activated for C3 and G3 models) (#282)
New release: 9.7.0.0
NVIDIA controller
- moved the "Test dithering" and "NVIDIA info" panels from the Options-tab page to the Settings-button on the NVIDIA controller tab-page
- Novideo: fixed issue that when enabling HDR through ColorControl, clamping stayed active and colors were muted because declamping resulted in an error. If you enable HDR now through ColorControl, it will first properly disable clamping before activating HDR.
- improved display of current dithering settings when default (auto) dithering is active
- added setting Other->Scaling which allows you to set the scaling to GPU or Display as well as no scaling, aspect ratio or full-screen
Game launcher
- Added setting "Apply presets when launching games externally". When this option is enabled, ColorControl will monitor processes and automatically apply the preset whenever a known game is launched (#225)
Note that you must also enable this option per game-preset to let it have effect. - Added the following items to the Options-button of a game preset (you can also use right-click to open the context menu):
- NVIDIA Profile Inspector: opens the profile inspector and automatically selects the corresponding game profile (or asks to create one if it does not exist)
- Auto apply settings...: lets you configure the mechanism to automatically apply the preset whenever you start the game by other means than ColorControl itself. Contains these settings:
- Allow this preset to be automatically executed when the process starts: used in conjunction with the general setting, both must be enabled to allow the preset to be applied automatically.
- Optional action to perform directly after the process starts: here you can define what action to execute directly upon game-launch to help apply the preset correctly. The option 'Suspend' is to temporarily suspend the process which may help when switching HDR or other settings.
LG Controller
- added setting "Adaptive Sound Control"
- added setting "Virtual Surround" (#257)
General
- added changelog to the Info-tab page (#259)
- changed a lot of code under the hood for improved handling of administrator required tasks
New release: 9.6.4.0
NVIDIA controller
- fixed error getting display scan out configuration (#258)
- replaced "Add Modes" button with "Add..." button with which you can add just a single configurable preset
- added "HDMI Settings" category under presets, which contains the following settings:
- Content type: the content type of the source like Games or Graphics (setting moved from Other)
- Colorimetry: selects the SDR color space standard like SMPTE170M or ITURBT709. UseExtendedColorimetry can also be set to select specific color space (see following setting).
- Extended Colorimetry: color spaces like xvYCC601, xvYCC709 or BT2020. Which one works depends on current dynamic range and display.
LG Controller
- added setting "Super Resolution"
New release: 9.6.3.0
General
- fixed issue with activating/deactivating modules (#247)
- added "Raw Input" setting under advanced options. When this is activated, shortcuts/hot keys are no longer blocked when certain games block the WinKey, Control or Alt key. In some cases the WinKey is still blocked and when a foreground process runs with higher privileges as ColorControl (i.e. Administrator) then Raw Input does not work and old hot key functionality is used.
Samsung Controller
- added Expert-button with some actions
- added "Show advanced actions under the Expert-button (Service Menu)" to settings. If this is activated, the "Service Menu" can be opened via the Expert-button. Because opening the service menu and activating certain parts (Advanced) involves multiple steps, a wizard will guide you through the steps.
WARNING: entering the Service Menu is not recommended. This app and its creator are in no way accountable for any damages it may cause to your tv.
