lauralex / dwm_lut Goto Github PK
View Code? Open in Web Editor NEWThis project forked from ledoge/dwm_lut
Apply 3D LUTs to the Windows desktop for system-wide color correction/calibration
License: GNU General Public License v3.0
This project forked from ledoge/dwm_lut
Apply 3D LUTs to the Windows desktop for system-wide color correction/calibration
License: GNU General Public License v3.0
Ability to add hotkey to apply/disable filters? Alt-Tabbing crashes a few of my friends game but we love what we can do with the filters from this. Nothing crazy needed, just one hotkey for each.
Thanks
When I choose the filter and apply it, this message appears
I downloaded the latest version and followed the instructions.
I ran the program as Admin, but I got an error on loading a LUT file to the SRT.
"Failed to load or initialize the DLL. This is probably because the LUT file is malformed or that DWM got updated."
Running Windows 11, NVidia GeForce RTX 4080, MSI Optix G27 Series Monitors
I've tried to apply SDR LUT to laptop display, but when I activate the plugin the application just shuts down. It doesn't' write logs, so hard to say what is happening and why. But it may be important to note, that only Internal Display shows as connected to Intel UHD Graphics, others are connected to Nvidia GPU.
The issue persist only if external displays are connected (without connected external displays it works).
PS: I can apply HDR LUT, but the display doesn't support HDR, so it doesn't matter, because I can't see any image change in this case.
Relevant section:
dwm_lut/DwmLutGUI/DwmLutGUI/Injector.cs
Lines 74 to 80 in c7f36dc
I was just surprised that my xyz.CUBE file was invalid. It was uppercase everywhere I found lut files.
Trying to run the program on this version but it fails to load DLL
Its what the title says for some reason it is detected as a trojan, is it?
Dear lauralex,
As you're successor in dwm_lut modification, I hope you can help me and compile an .msi package. There's difference between executable and application run for limited users. Moreover, task scheduler doesn't run dwm_lut with network admin rights, it produces error instead. I've tried different ways together with admins, but when .exe run is denied, automatic start of dwm_lut executable is impossible (it works as hand-run with admin credentials). I suppose, this happens cause of dwm_lut calls user's dwm process, but task scheduler provides admin's dwm in this case.
Could you help me?
I'm new on GitHub, so I'm sorry for possible wrong "request as issue" posting. You may know me as time-to-time DisplayCAL forum member. Great wishes, Alex
i tried building release and debug, i havent changed anything from source but i still get failed to load or initalize DLL. it works fine when i use the dll provided in the release
Not sure if this is even fixable. But if the game is in Fullscreen mode with "Fullscreen optimisations" disabled, the LUT has no effect on the game.
2023-06-17
2
/ 71
Win32 EXE
Release/DwmLutGUI.exe
SHA-256
4ac8778ddb796a771072f22cce6bba6fe36bcd7f10b66379ccc6c40fe7ff0a2b
Date Bundled
2023-05-12 17:43:22
File Size
48.50 KB
2023-06-16
2
/ 70
Win32 DLL
Release/dwm_lut.dll
SHA-256
10fc06b3142475231b1d19eb22791886e8da5ca40034a8bcbdcc69941ee43360
Date Bundled
2023-05-12 17:21:42
File Size
47.00 KB
Hello,
Due to the fact calibration devices have measurement inaccuracies with primaries, I would like to know if it's feasible.
It would avoid me to buy a specific monitor that has this feature. I already own a monitor that can change hues and saturations but I will upgrade one day. And I don't want to have to do any compromises.
I think it can be useful for everyone that need to go beyond their devices. And it can be also great for multiple monitor setups. There can be big differences between a monitor and the other ones in term of individual HSL.
I hope it will not be too tedious to do if it can be done.
I'm looking forward to your reply
My laptop, even when running off of a power brick, cuts most program frame rates in half when this program applies a LUT. I am running a dedicated graphics card through an Intel graphics adapter. Is there a fix for this? This is not the behavior that I experience on my computer normally, even on battery, and it doesn't happen at all on my desktop computer.
Some large LCD panel will suffer from different white point and brightness at different screen position. I wonder if there's a way that utilize the tool in DisplayCAL of white uniformity check to correct this effect?
I think a full screen "mask" will work, but I don't know if there will be any perfromance issue.
I've generated a 3D LUT through DisplayCAL, but whenever I try to apply the HDR LUT, the program will pause and then close. This also happens if I click the -
icon above the HDR column.
Event Viewer has the following error in .NET Runtime;
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.NullReferenceException
at DwmLutGUI.MonitorData.set_HdrLutPath(System.String)
at DwmLutGUI.MainViewModel.set_HdrLutPath(System.String)
at DwmLutGUI.MainWindow.HdrLutBrowse_Click(System.Object, System.Windows.RoutedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(System.Object, System.Windows.RoutedEventArgs, Boolean)
at System.Windows.UIElement.RaiseEventImpl(System.Windows.DependencyObject, System.Windows.RoutedEventArgs)
at System.Windows.Controls.Primitives.ButtonBase.OnClick()
at System.Windows.Controls.Button.OnClick()
at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(System.Windows.Input.MouseButtonEventArgs)
at System.Windows.RoutedEventArgs.InvokeHandler(System.Delegate, System.Object)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(System.Object, System.Windows.RoutedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(System.Object, System.Windows.RoutedEventArgs, Boolean)
at System.Windows.UIElement.ReRaiseEventAs(System.Windows.DependencyObject, System.Windows.RoutedEventArgs, System.Windows.RoutedEvent)
at System.Windows.UIElement.OnMouseUpThunk(System.Object, System.Windows.Input.MouseButtonEventArgs)
at System.Windows.RoutedEventArgs.InvokeHandler(System.Delegate, System.Object)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(System.Object, System.Windows.RoutedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(System.Object, System.Windows.RoutedEventArgs, Boolean)
at System.Windows.UIElement.RaiseEventImpl(System.Windows.DependencyObject, System.Windows.RoutedEventArgs)
at System.Windows.UIElement.RaiseTrustedEvent(System.Windows.RoutedEventArgs)
at System.Windows.Input.InputManager.ProcessStagingArea()
at System.Windows.Input.InputManager.ProcessInput(System.Windows.Input.InputEventArgs)
at System.Windows.Input.InputProviderSite.ReportInput(System.Windows.Input.InputReport)
at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr, System.Windows.Input.InputMode, Int32, System.Windows.Input.RawMouseActions, Int32, Int32, Int32)
at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr, MS.Internal.Interop.WindowMessage, IntPtr, IntPtr, Boolean ByRef)
at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr)
at MS.Win32.UnsafeNativeMethods.DispatchMessage(System.Windows.Interop.MSG ByRef)
at System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame)
at System.Windows.Application.RunDispatcher(System.Object)
at System.Windows.Application.RunInternal(System.Windows.Window)
at DwmLutGUI.App.Main()```
OS: Windows 11 23H2
Hi, just "upgraded" to Windows 11. Version 22H2 after all updates. "Failed to load or initialize DLL"
Thanks so much for the good run on Windows 10!
windows defender identifies this program as a virus, yo
after building the gui.exe and launching it, it was deleted by windows defender
this issues is a duplicate of
ledoge#11
When changing ports used for monitors after having already used DWM_LUT, it fails to start. The only way to fix it is by removing all config files.
Not sure if this is a specific issue with Windows 11 23H2, but I only started using this app since 23H2.
On my Lenovo Legion 9i, if I set the LUT for SDR in SDR mode. Works great. When switching to HDR mode the GUI will say "(changed)" and then exiting out of HDR mode it will remove all the settings where the LUT is located.
my windows is windows 11 PRO 24H2 build 26100.1, any idea why is this happening?
When SDR LUTs are applied to 10bpc displays, colour banding occurs in applications that support 10-bit output such as Adobe suite & BlackMagic Davinci Resolve. I'm wondering if this is a bug, a current limitation with dwm_lut, or a limitation of Windows DWM.
For some information, the displays are driven by an nvidia GPU through DisplayPorts. When LUTs are disabled, the banding issue goes away and the displays with LUTs assigned present smooth gradients again.
If dwm lut is enable, g sync stops working.
So I am on Win 11 OS Build 22621.3085, and for some reason i started getting this error "failed to load or initialize dll. this probably means that a lut file is malformed or that dwm got updated.", any fixes for that?
Hi, thanks for this fantastic tool!
Is it possible to remove the debug messages when applying LUT on Windows 11?
For both when applying using the apply button as well as the command line -apply>
It used to work on my PC nothing changed i dont think and ive tried deleting updates using both releases and every release each dev made. It will start then show the little icon in the bottom right (i cant interact with it) then it will disappear. No error on crash and im windows 10.
This program does not seem to work with laptop monitors. I have tried to restart and redownload multiple times. I am trying to use the Escape from Tarkov filters and they do not apply at all. I am using a 2021 Lenovo Legion 5 pro.
Same issue described here:
#22
Doesn't start on win10 22h2.
In MW3 after every match the colour goes back to normal, I have to minimize to desktop maximum mw3 again for the colour profiles to work again in MW3.
There are times after reboot that all settings are gone, not to mention the keyboard shortcut to change LUT's is always reverted to Numpad1. Please allow selecting a custom shortcut multi keys and persist it. Also make sure settings are persisted/loaded correctly even after reboot.
DWMGUI does not work without Debug Privileges, which are often disabled to prevent Mimikatz dumps and similar. Can it forced to work without debug access? ReShade and madVR do not need it to apply LUT's.
i really like this tool but with it enabled i lose about 20fps on warzone 2...
when i try to apply DWMLUTGUI on a laptop that runs on 23H2 (developer), it shows an error that LUT can't be applied due to incorrect LUT/DWM got updated.
This DWM lut does not just reduce performance! I have done several tests and it gives 99% usage spikes on my 4090 and my 3080 TI.. and it causes weird stuttering every few seconds in ALL games with or without G sync.. and if i turn of the DWM lut i get a smooth experience without the spikes i get every few seconds.. wish it was better :( i would even pay some if it could work good with games without these issues.. have a friend who has Calman software and he has no performance hits with games..
Having the ability to multiply the image output with a user-specified image would make it possible to correct for Dirty Screen Effect (DSE) and improve screen uniformity.
I don't know if this is possible, but doing it through DWM would probably be the only way.
it doesnt work because it cant config the .cube file,how to resolve it
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.