Is there still no software that preserves software calibrated / ICC monitor profiles in Windows when launching games??? - AVS Forum
Forum Jump: 
 
Thread Tools
post #1 of 26 Old 11-02-2013, 03:58 PM - Thread Starter
 
MonarchX's Avatar
 
Join Date: Jul 2012
Posts: 669
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 29
In summary - Windows resets saved software calibration / ICC monitor profiles when games are launched (most of the time). There is yet to be a tool that would force saved ICC monitor profiles to be used by any game for nVidia video card owners. AMD allowed PowerStrip to force such profiles using "direct write to hardware" method, which nVidia does not allow on their hardware. There are several programs, such as Monitor Calibration Wizard, Color Clutch, Borderless Window Mode, etc., but none are effective, most do not work, others can heavily reduce frame rate (Borderless Window Mode).

You can read more about it here - https://forums.geforce.com/default/topic/501853/nvidia-forever-ignoring-custom-color-profile-support-in-full-screen-games-collaboration-thread-/

I am SO surprised that nobody could come up with a tool that really does work for all cards and all games. Someone told me that Spyder3 software successfully forces ICC profiles for all games. Is that true? I know that i1 Profiler that came with my i1 Display Pro colorimeter does NOT force ICC profiles when games are launched. Why can't CalMAN come up with a tool that could do it? They could make good money for selling software that can force ICC profiles!

I know this problem persists in Windows XP, Vista, and 7. Could someone confirm that it still exists in Windows 8 and/or 8.1?
MonarchX is offline  
Sponsored Links
Advertisement
 
post #2 of 26 Old 11-03-2013, 01:45 AM
Advanced Member
 
Light Illusion's Avatar
 
Join Date: Aug 2010
Posts: 522
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 2 Post(s)
Liked: 211
SpaceMatch DCM will work, but uses LUTs rather than ICC profiles for very obvious reasons...
It uses the VCGT capability of any/all graphics cards, and can be set and not affected by any ICC stuff.
It can read any active ICC, and then save the data as a LUT for direct use without needing any ICC active capability..

See: http://www.lightillusion.com/spacematch.html

Cheers,

Steve

Steve Shaw
LIGHT ILLUSION

Light Illusion is offline  
post #3 of 26 Old 11-03-2013, 08:09 AM - Thread Starter
 
MonarchX's Avatar
 
Join Date: Jul 2012
Posts: 669
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 29
Thanks!

Awesome, but not affordable even for graphics enthusiasts... It is something that would be used by a professional game developing studio.

At least there is hope that such a program is possible. A cheaper, crippled and highly limited version that would only convert existing ICC profile into a force-able LUT would be awesome. Any person with a colorimeter like i1 Display Pro and Spyder3 would be potential buyers.
MonarchX is offline  
post #4 of 26 Old 11-03-2013, 06:54 PM
AVS Special Member
 
zoyd's Avatar
 
Join Date: Sep 2006
Location: Planet Dog
Posts: 4,434
Mentioned: 6 Post(s)
Tagged: 0 Thread(s)
Quoted: 81 Post(s)
Liked: 303
The command line utility dispwin from the ArgyllCMS package can read profile vcgt tags from either active or stored profiles and load them into the video card hardware LUTs for you. Or you can use the gui front-end dispCalGui. Runs on mac, pc, or linux (for free)
zoyd is online now  
post #5 of 26 Old 11-04-2013, 01:05 AM
Member
 
AV-Freak's Avatar
 
Join Date: May 2011
Posts: 140
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Just use a monitor with an internal 3D or matrix LUT.
AV-Freak is offline  
post #6 of 26 Old 11-04-2013, 09:26 AM
AVS Special Member
 
sotti's Avatar
 
Join Date: Aug 2004
Location: Seattle, WA
Posts: 6,585
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 12 Post(s)
Liked: 164
First off games don't use ICC, the game it self has to be written to take advantage of ICC on windows. So you'll likely never see that.

As for the graphics card LUT, the only reason a game would change the LUT would be because the game designers wanted to change the LUT. The call to update the LUT in windows is an open interface, there is nothing any software can do and no callback from the OS when this happens. So often times the in game brightness or gamma slider will reset the systems gamma table, and their is no way any other software can be notified this happens.

So it is not possible with the windows API to do this, you'd have to write a custom video card driver (Also simply not possible). We can push the LUT based on a timer, which is what datacolor does, but their isn't a true solution to other applications updating your calibration data.

Joel Barsotti
SpectraCal
CalMAN Lead Developer
sotti is offline  
post #7 of 26 Old 11-05-2013, 08:31 AM - Thread Starter
 
MonarchX's Avatar
 
Join Date: Jul 2012
Posts: 669
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 29
PowerStrip can do it for AMD cards. It writes directly to hardware, which Nvidia does not allow. Games don't just change gamma, but also white balance and etc...
MonarchX is offline  
post #8 of 26 Old 11-05-2013, 08:33 AM - Thread Starter
 
MonarchX's Avatar
 
Join Date: Jul 2012
Posts: 669
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 29
Quote:
Originally Posted by zoyd View Post

The command line utility dispwin from the ArgyllCMS package can read profile vcgt tags from either active or stored profiles and load them into the video card hardware LUTs for you. Or you can use the gui front-end dispCalGui. Runs on mac, pc, or linux (for free)

Even for nvidia cards??? Nvidia strictly prohibits writing directly to hardware...
MonarchX is offline  
post #9 of 26 Old 11-05-2013, 08:52 AM
AVS Special Member
 
sotti's Avatar
 
Join Date: Aug 2004
Location: Seattle, WA
Posts: 6,585
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 12 Post(s)
Liked: 164
Quote:
Originally Posted by MonarchX View Post

Even for nvidia cards??? Nvidia strictly prohibits writing directly to hardware...

It's an operating system API call.

Joel Barsotti
SpectraCal
CalMAN Lead Developer
sotti is offline  
post #10 of 26 Old 11-05-2013, 08:55 AM
AVS Special Member
 
sotti's Avatar
 
Join Date: Aug 2004
Location: Seattle, WA
Posts: 6,585
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 12 Post(s)
Liked: 164
Quote:
Originally Posted by MonarchX View Post

PowerStrip can do it for AMD cards. It writes directly to hardware, which Nvidia does not allow. Games don't just change gamma, but also white balance and etc...

It's a 1D LUT, anyone can overwrite, 1D LUTs can change gamma or white point or both. Game designers use it for gamma, color calibration apps use it for calibration.

via directX:
http://msdn.microsoft.com/en-us/library/windows/desktop/bb174434(v=vs.85).aspx

via windows api:
http://msdn.microsoft.com/en-us/library/windows/desktop/dd372194(v=vs.85).aspx

Any application can call those at any time. There are no calls to lock, and no way to register for a callback when that happens. The reason this is an issue is not because developers don't care, it's because microsoft hasn't provided us a means of enforcement.

Joel Barsotti
SpectraCal
CalMAN Lead Developer
sotti is offline  
post #11 of 26 Old 11-08-2013, 07:50 AM - Thread Starter
 
MonarchX's Avatar
 
Join Date: Jul 2012
Posts: 669
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 29
Quote:
Originally Posted by sotti View Post

It's a 1D LUT, anyone can overwrite, 1D LUTs can change gamma or white point or both. Game designers use it for gamma, color calibration apps use it for calibration.

via directX:
http://msdn.microsoft.com/en-us/library/windows/desktop/bb174434(v=vs.85).aspx

via windows api:
http://msdn.microsoft.com/en-us/library/windows/desktop/dd372194(v=vs.85).aspx

Any application can call those at any time. There are no calls to lock, and no way to register for a callback when that happens. The reason this is an issue is not because developers don't care, it's because microsoft hasn't provided us a means of enforcement.

Now I am confused even more. First you say that is it not possible and it would require writing a whole new driver. Then people posted several apps that supposedly make it possible and I know for a fact that PowerStrip makes it possible for AMD video cards, and then you say that it is a 1D LUT and any program can overwrite it. So, how can it be not possible if any program can overwrite it? That makes no sense to me.

I am extremely perplexed...
MonarchX is offline  
post #12 of 26 Old 11-08-2013, 08:10 AM
AVS Special Member
 
sotti's Avatar
 
Join Date: Aug 2004
Location: Seattle, WA
Posts: 6,585
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 12 Post(s)
Liked: 164
Quote:
Originally Posted by MonarchX View Post

Now I am confused even more. First you say that is it not possible and it would require writing a whole new driver. Then people posted several apps that supposedly make it possible and I know for a fact that PowerStrip makes it possible for AMD video cards, and then you say that it is a 1D LUT and any program can overwrite it. So, how can it be not possible if any program can overwrite it? That makes no sense to me.

I am extremely perplexed...

You misinterpreted their responses. They were showing you that any app can write the LUT. You had said nvidia locks people out of writing directly to hardware. The software mentioned above, most likely uses the same API calls since they've been around since windows 2000, it may also have had an earlier implementation that work on windows 9x.

Joel Barsotti
SpectraCal
CalMAN Lead Developer
sotti is offline  
post #13 of 26 Old 11-08-2013, 08:11 AM
AVS Special Member
 
sotti's Avatar
 
Join Date: Aug 2004
Location: Seattle, WA
Posts: 6,585
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 12 Post(s)
Liked: 164
Quote:
Originally Posted by lanbaidiluo View Post

good,that it is a 1D LUT and any program can overwrite it. So, how can it be not possible if any program can overwrite it? That makes no sense to me.
pNEg
Any app can overwrite it.

Joel Barsotti
SpectraCal
CalMAN Lead Developer
sotti is offline  
post #14 of 26 Old 11-08-2013, 10:59 AM - Thread Starter
 
MonarchX's Avatar
 
Join Date: Jul 2012
Posts: 669
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 29
Quote:
Originally Posted by sotti View Post

You misinterpreted their responses. They were showing you that any app can write the LUT. You had said nvidia locks people out of writing directly to hardware. The software mentioned above, most likely uses the same API calls since they've been around since windows 2000, it may also have had an earlier implementation that work on windows 9x.

So with those apps, ICC profiles can be set/forced in games without reverting back to default Windows ICC, right???????
MonarchX is offline  
post #15 of 26 Old 11-08-2013, 11:20 AM
AVS Special Member
 
Rolls-Royce's Avatar
 
Join Date: Apr 2003
Location: Victorville, CA
Posts: 1,991
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 10 Post(s)
Liked: 61
Quote:
Originally Posted by MonarchX View Post

So with those apps, ICC profiles can be set/forced in games without reverting back to default Windows ICC, right???????

The game itself is the "app" that preferably would do it...

...Royce...

"I never drink...wine."
Bela Lugosi, DRACULA, 1931
Rolls-Royce is offline  
post #16 of 26 Old 11-08-2013, 12:17 PM
AVS Special Member
 
sotti's Avatar
 
Join Date: Aug 2004
Location: Seattle, WA
Posts: 6,585
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 12 Post(s)
Liked: 164
Quote:
Originally Posted by MonarchX View Post

So with those apps, ICC profiles can be set/forced in games without reverting back to default Windows ICC, right???????
which app what?

Any app/game/utility/windows executable can change the 1D LUT at anytime.
Nothing, not a single app/game/utility can prevent other apps from changing the 1D LUT.

Joel Barsotti
SpectraCal
CalMAN Lead Developer
sotti is offline  
post #17 of 26 Old 11-08-2013, 12:52 PM - Thread Starter
 
MonarchX's Avatar
 
Join Date: Jul 2012
Posts: 669
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 29
When I say APPS - I mean small utilities, programs, etc. NOT GAMES. So, are there any APPS that could ENFORCE ICC profiles in GAMES? PowerStrip does it 100%, so don't tell me that that can't prevent games from reseting ICC profiles because PowerStrip DOES enforce them. You need to force it AFTER the game has already started and you may need to do once in a while if a game tries to reset it, but in the end, PowerStrip will force the ICC profile in any game. It works only for AMD. I need one for nVidia!

"The command line utility dispwin from the ArgyllCMS package can read profile vcgt tags from either active or stored profiles and load them into the video card hardware LUTs for you. Or you can use the gui front-end dispCalGui."


Would the above quoted app work?
MonarchX is offline  
post #18 of 26 Old 11-08-2013, 02:26 PM
AVS Special Member
 
sotti's Avatar
 
Join Date: Aug 2004
Location: Seattle, WA
Posts: 6,585
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 12 Post(s)
Liked: 164
Quote:
Originally Posted by MonarchX View Post

"The command line utility dispwin from the ArgyllCMS package can read profile vcgt tags from either active or stored profiles and load them into the video card hardware LUTs for you. Or you can use the gui front-end dispCalGui."
No, it won't

The games you are having problems with are overwriting your LUT. No one can stop that.

Joel Barsotti
SpectraCal
CalMAN Lead Developer
sotti is offline  
post #19 of 26 Old 11-08-2013, 03:37 PM - Thread Starter
 
MonarchX's Avatar
 
Join Date: Jul 2012
Posts: 669
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 29
Quote:
Originally Posted by sotti View Post

No, it won't

The games you are having problems with are overwriting your LUT. No one can stop that.

But PowerStrip does!!! Are you denying that too?
MonarchX is offline  
post #20 of 26 Old 11-09-2013, 10:58 AM
Advanced Member
 
spacediver's Avatar
 
Join Date: May 2013
Location: Toronto
Posts: 773
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 39 Post(s)
Liked: 65
Quote:
Originally Posted by sotti View Post

You misinterpreted their responses. They were showing you that any app can write the LUT. You had said nvidia locks people out of writing directly to hardware. The software mentioned above, most likely uses the same API calls since they've been around since windows 2000, it may also have had an earlier implementation that work on windows 9x.

If this is true, then how come the powerstrip solution only works on AMD and not nvidia cards?
spacediver is online now  
post #21 of 26 Old 11-09-2013, 11:03 AM - Thread Starter
 
MonarchX's Avatar
 
Join Date: Jul 2012
Posts: 669
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 29
Quote:
Originally Posted by spacediver View Post

If this is true, then how come the powerstrip solution only works on AMD and not nvidia cards?

I provided a link in the original post to a forum where it is discussed and then I discussed it 3 times in this thread already... So, again... AMD allows software to write directly to hardware, which is what PowerStrip does when it forces selected ICC profiles. nVidia does not allow any software to write directly to hardware, including PowerStrip.
MonarchX is offline  
post #22 of 26 Old 11-09-2013, 12:05 PM
Advanced Member
 
spacediver's Avatar
 
Join Date: May 2013
Location: Toronto
Posts: 773
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 39 Post(s)
Liked: 65
yep I read through that thread when you originally posted the link. I'm confused by Sotti's response, as he seems to be implying that powerstrip overwrites the LUTs in the same way that games do, and therefore that powerstrip should be able to intervene regardless of what video card you use.

But this is clearly not the case (unless I'm misunderstanding something here)
spacediver is online now  
post #23 of 26 Old 11-09-2013, 05:38 PM
AVS Special Member
 
sotti's Avatar
 
Join Date: Aug 2004
Location: Seattle, WA
Posts: 6,585
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 12 Post(s)
Liked: 164
Quote:
Originally Posted by MonarchX View Post

So, again... AMD allows software to write directly to hardware, which is what PowerStrip does when it forces selected ICC profiles. nVidia does not allow any software to write directly to hardware, including PowerStrip.

It's not an ICC profile. It's a 1D LUT. There is a big difference between the two.

Joel Barsotti
SpectraCal
CalMAN Lead Developer
sotti is offline  
post #24 of 26 Old 12-29-2013, 08:48 PM
Advanced Member
 
Yukon Trooper's Avatar
 
Join Date: Dec 2006
Location: Yukon, Canada
Posts: 954
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 26
Quote:
Originally Posted by zoyd View Post

The command line utility dispwin from the ArgyllCMS package can read profile vcgt tags from either active or stored profiles and load them into the video card hardware LUTs for you. Or you can use the gui front-end dispCalGui. Runs on mac, pc, or linux (for free)
Could you explain this a bit further? For example, will this override the LUT calls made by games?

Thanks for all the great info in this thread.

Yukon Trooper is offline  
post #25 of 26 Old 12-29-2013, 09:18 PM
Advanced Member
 
spacediver's Avatar
 
Join Date: May 2013
Location: Toronto
Posts: 773
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 39 Post(s)
Liked: 65
If a game re-establishes its own LUT call, then I believe it will override it. Some games have an option to allow overriding. One solution is to run the game, go back and check if the LUT has changed, and if it has, reload the LUT.
spacediver is online now  
post #26 of 26 Old 12-30-2013, 04:31 PM - Thread Starter
 
MonarchX's Avatar
 
Join Date: Jul 2012
Posts: 669
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 29
Windowed Borderless Gaming program works like a charm and works with almost every game. Some say that running a game in such a mode will prevent it from utilizing all the PC resources to their fullest, but I ran BioShock Infinite, Sleeping Dogs, and BF4 benchmarks in Fullscreen and Borderless Modes and found that there was no difference in avg, min, and max FPS between the modes.
MonarchX is offline  
Reply Display Calibration

User Tag List

Thread Tools
Show Printable Version Show Printable Version
Email this Page Email this Page


Forum Jump: 

Posting Rules  
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off