MadVR - ArgyllCMS - AVS Forum

## AVS Forum> Display Devices> Display Calibration > MadVR - ArgyllCMS

Display Calibration

N3W813
11:11 AM Liked: 36
post #1 of 2850
05-03-2013 | Posts: 1,140
Joined: Feb 2003
This thread will be dedicated to the process of generating 3DLUT corrections using ArgyllCMS for use in MadVR video renderer.

Required Software
ArgyllCMS 32-bit
DispcalGUI
DirectShow video player that can use MadVR (ie. Zoom Player, MPC-HC, etc.)

Required Hardware
An ArgyllCMS supported colorimeter or spectrophotometer

A. Install ArgyllCMS, DispcalGUI, and MadVR
1. Extract ArcgyllCMS to a folder of your choice (ie. C:\ArgyllCMS) == [ArgyllCMS_install_folder]
2. Install DispcalGUI to a folder of your choice == [DispcalGUI_install_folder]

B. Create MadVR compatible 3DLUT from ArgyllCMS tools
1. Start MadVR Test Pattern Generator
2. Enable "use fullscreen"
3. Enable "disable VideoLuts"
4. Enable "disable 3dlut"

2. Start DispcalGUI

3. Set the following settings in DispcalGUI
2. Select 'madVR' for Display device
3. Select 'Rec. 1886' for Tone curve
4. Disable Black point compensation and Smooth B2A tables. Enable Low quality B2A tables.
5. Click on 'File' on the toolbar, select 'Edit testchart...'
6. Use the options in the testchart screenshot below for a basic 2000 patch set. (You can adjust the pattern set parameters based on your display response behavior)
7. Click 'Create testchart', click 'Save as...' and save the pattern set to a location, then click on 'Select' when prompted to use the created testchart.
8. Click 'Calibrate & profile' button. The duration of the process will depend on the speed of your meter.

4. After the process is complete, go to Tools in the menu bar and select 'Create 3D LUT...'

5. Set the following settings for Create 3D LUT tool
1. Select 'madVR (.3dlut)' for 3D LUT file format
2. For Source profile file, browse to the Rec709.icm file from the 'ref' sub-directory in the program path of ArgyllCMS
3. For Target profile file, browse to the .icm file created from the profile process
4. Enable 'Apply calibration (vcgt)'
5. Enable 'Apply BT.1886 gamma mapping' and select '2.4 Absolute'
6. Select 'Absolute colorimetic with white point scaling' for Rendering intent
7. Click on 'Create 3D LUT...' button
8. Provide the filename and location to save the 3DLUT

C. Apply the 3DLUT file in MadVR
1. Play any video file in a media player with MadVR set as the video renderer
3. Expand your display device under the devices node
5. Select 'calibrate this display by using an external 3DLUT file'
6. Check 'disable GPU gamma ramps'
7. For the BT.709 field, click the browse icon and select the 3DLUT.3dlut file generated

2014-05-06 - Updated workflow with new configuration options and screenshots for DispcalGUI 2.0.0.0.

2013-12-09 - Updated testchart screenshot with settings for Neutral axis and Dark region emphasis suggested by Graeme.

2013-12-08 - Updated workflow with ArgyllCMS tools update, DispcalGUI snapshot update, and madVR test build. Added new DispcalGUI testchart screenshot to incorporate new neutral and dark areas emphasis for targen.exe.

2013-11-10 - Updated workflow using DispcalGUI 1.5.3.1

2013-08-28 - MadVR TPG only supports 32-bit of ArgyllCMS.

2013-08-22 - Added videoLUT calibration (step 5) to increase quality of resulting 3DLUT.

2013-07-29 - Updated skip meter placement confirmation for dispread.exe in step 6. From -Yn to -Yp. Graeme changed the parameter is the latest beta binaries.

2013-07-18 - Updated dispread.exe command to use MadVR Test Pattern Generator. -E parameter is no longer needed provided the level settings in MadVR are set correctly for your output device. Increased OFPS patterns to 2000 to increase 3DLUT accuracy.

2013-07-01 - Graeme updated the latest beta binaries. There were scenarios with dispcal.exe using TV levels by default even without the use of the '-E' parameter.

2013-06-18 - Replaced workflow with commands for ArgyllCMS tools only. Removed the use of DispcalGUI.

2013-05-20 - Elevated black point still exists for some displays/configurations, therefore, Black Point Compensation option should be enabled in DispcalGUI. (step B10)

2013-05-14 - ArgyllCMS beta binaries updated. Graeme fixed an issue with DispcalGUI stalling when acquiring display refresh time with i1D3.

2013-05-11 - ArgyllCMS beta binaries updated. Graeme fixed issue with elevated black point, therefore, Black Point Compensation option is no longer needed in DispcalGUI. (step B10)

2013-05-10 - Updated collink.exe commandline to accommodate changes made by Graeme to gamma options. To update ArgyllCMS components, please download and extract again ArgyllCMS update for MadVR 3DLUT creation. (Changed steps C1, C4, C5)
N3W813
11:11 AM Liked: 36
post #2 of 2850
05-03-2013 | Posts: 1,140
Joined: Feb 2003
OLD Commanline-Based Workflow

1. Extract ArcgyllCMS to a folder of your choice (ie. C:\Argyll_V1.5.1) == [ArgyllCMS_install_folder]
2. Extract and overwrite the contents of the ArcgyllCMS update to [ArgyllCMS_install_folder]

B. Create MadVR compatible 3DLUT from ArgyllCMS tools
1. From [ArgyllCMS_install_folder]\bin, copy dispwin.exe, dispcal.exe, targen.exe, dispread.exe, colprof.exe, and collink.exe to a temp folder == [temp_folder]

2.Copy Rec709.icm from [ArgyllCMS_install_folder]\ref to [temp_folder]

3. Reset video card videoLUT to a linear curve
Code:
dispwin.exe  -v  -c

Warning: Spoiler! (Click to show)
-v
verbose
-c

4. Start MadVR Test Pattern Generator
Enable "use fullscreen"
Enable "disable VideoLuts"
Enable "disable 3dlut"

5. Calibrate the monitor's and generate videoLUT curves with a meter
Code:
dispcal.exe  -v  -dmadvr  -Yp  -qh  -m  -gs  -w 0.3127,0.3290  "dispcal"

Warning: Spoiler! (Click to show)
-v
verbose
-Yp
skip instrument prompt
-qh
quality 'high'
-m
-gs
set gamma to sRGB
-w
target white point coordinates
"file"
name of videoLUT curves file to generate

6. Create patterns file
Code:
targen.exe  -v  -d3  -G  -s40  -g128  -f2000  "MadVR"

Warning: Spoiler! (Click to show)
-v
verbose
-d3
video RBG patterns
-G
good optimzed points rather than fast
-s
# of single channel patterms
-g
# of neutral gray patterns
-f
# of Optimized Farthest Point Sampling (OFPS) patterns to generate  *increase # for better quality
"file"
name of .ti1 file to generate

7. Read the patterns file with a meter
Code:
dispread.exe  -v  -dmadvr  -Yp  -K dispcal.cal  "MadVR"

Warning: Spoiler! (Click to show)
-v
verbose
-Yp
skip meter placement confirmation
-K
incorporate calibration curves from step.5
"file"
name of .ti1 patches file to read from

8. Create ICM profile from the pattern read results
Code:
colprof.exe  -v  -qh  -bl  -aX  "MadVR"

Warning: Spoiler! (Click to show)
-v
verbose
-qh
quality 'high'
-bl
low quality B2A table  *high quality not required since collink will be used
-aX
XYZ cLUT algorithm type
"file"
name of .ti3 file to generate the .icm file

9. Generate the MadVR compatible 3DLUT file from ICM file
Code:
collink.exe  -v  -3m  -qh  -et  -Et  -Ib:2.2  -G  -a dispcal.cal  -iaw  Rec709.icm  MadVR.icm  3DLUT.icm

Warning: Spoiler! (Click to show)
-v
verbose
-3m
-qh
quality 'high'
-et
input 16-235  *this setting is required for proper MadVR 3DLUT generation, DO NOT REMOVE
-Et
output 16-235  *this setting is required for proper MadVR 3DLUT generation, DO NOT REMOVE
-Ib:x.x
apply BT.1886 curve effective gamma. x.x specifies gamma (default = 2.2)
-G
gamut Mapping Mode using inverse outprofile A2B
-a
incorporate calibration videoLUT curves into 3DLUT
-iaw
"file" "file" "file"
reference file, source ICM file, output ICM/3DLUT file

C. Apply the 3DLUT file in MadVR
1. Play any video file in a media player with MadVR set as the video renderer
3. Expand your display device under the devices node
5. Select 'calibrate this display by using an external 3DLUT file'
6. Check 'disable GPU gamma ramps'
7. Click the browse icon and select the 3DLUT.3dlut file generated

Parameter '-E' Usage Scenarios
Quote:

There are 3 possible HTPC level configurations, when using madVR:

(1) Display wants 0-255. GPU and madVR are consequently also both set to 0-255.

This is the most recommended setup because it doesn't (shouldn't) have any banding problems, and still has all video, desktop and games with correct black/white levels. In this case test patterns need to have black at 0,0,0, obviously.

(2) Display wants 16-235. GPU is set to 16-235. madVR has to be set to 0-255.

This is not recommended, because the GPU stretches the madVR output, probably in 8bit without dithering, so banding could be introduced. However, this is not a big problem for ArgyllCMS. Argyll still needs to create test patterns with black at 0,0,0. The GPU will then stretch the test patterns from 0-255 to 16-235, so the display will get 16,16,16, although Argyll rendered 0,0,0. So the levels are correct.

(3) Display wants 16-235. GPU is set to 0-255. madVR is set to 16-235.

This is the recommended setup for best image quality if your display can't do 0-255. This setup results in banding-free madVR image quality. However, levels for desktop and games will be incorrect, because desktop and games will render black at 0,0,0, while the display expects black at 16,16,16. This is a problem for ArgyllCMS, because Argyll will create test patterns with black at 0,0,0, and the display will also receive these at 0,0,0. So basically Argyll test patterns will have wrong levels, which will screw up the whole calibration.

It is my understanding that Graeme implemented the -E switch specifically for (3), because without the -E switch Argyll test patterns would send wrong levels to the display. Basically the -E switch tells Argyll to render test patterns with black at 16,16,16 and white at 235,235,235, which Argyll never had to do before. When using VMR/EVR, you usually switch your GPU to 0-255 or 16-235. In both cases Argyll can render test patterns with black at 0,0,0, and they will still be sent to the display with the correct levels. However, due to my recommendation to use (3) if your display doesn't support 0-255, Argyll suddenly needs to render test patterns differently. Hence Graeme implemented the -E switch.

So my understanding is that -E should be used only for (3) and in no other situation. If you use the -E switch for (1), Argyll will create test patterns with black at 16,16,16 which would be incorrect!

Notes
On some systems, "disable GPU gamma ramps" doesn't work (step D.6) in either window or full screen exclusive mode, and there are three possible ways of working around this. (src. Graeme Gill)
• Disable the VideoLUTs by running "dispwin -c" instead. (You can restore the installed profiles calibration using "dispwin -L").
• Don't use the collink "-a display.cal" parameter (step C.5) (ie. create a link/3dlut that doesn't incorporate the display calibration curves), and load the calibration curves into the VideoLUT using "dispwin display.cal"
• Don't use the collink "-a display.cal" parameter (step C.5) (ie. create a link/3dlut that doesn't incorporate the display calibration curves), and install the profile, ie. "dispwin -I display.icm"

N3W813
11:11 AM Liked: 36
post #3 of 2850
05-03-2013 | Posts: 1,140
Joined: Feb 2003
Results

From my Sharp Elite calibration/profile. It is almost perfect, still testing with different testcharts.

Charts from a calibrated Sharp Elite using only TV controls with emphasis of getting skin tones correct

Charts with ArcgyllCMS 3DLUT correction using BT1886 gamma and custom 3260 OFPS patch testchart

fairchild99
08:13 PM Liked: 149
post #4 of 2850
05-03-2013 | Posts: 892
Joined: Jul 2010
Looking forward to this, as I couldn't get it working on my end even with your and Graeme's help. I could make the .cal file but the profile always failed. Then I couldn't do what Graeme suggested with the .cal files to make the 3dlut using the command line.
N3W813
08:49 AM Liked: 36
post #5 of 2850
05-04-2013 | Posts: 1,140
Joined: Feb 2003
Quote:
Originally Posted by fairchild99

Looking forward to this, as I couldn't get it working on my end even with your and Graeme's help. I could make the .cal file but the profile always failed. Then I couldn't do what Graeme suggested with the .cal files to make the 3dlut using the command line.

If your profile is failing, then there is something else going on. Without a valid profile, you will not be able to generate a 3DLUT. If you are using DispcalGUI, post your dispcalGUI.log here and maybe someone will be able to help you.
fairchild99
12:25 PM Liked: 149
post #6 of 2850
05-04-2013 | Posts: 892
Joined: Jul 2010
Ok, will post up the last log when I tried to just do a profile, after the calibration had already been done.
Code:
2013-05-03 00:20:06,834 Setting up B to A table lookup
2013-05-03 00:20:06,884 Creating Gamut Mapping
2013-05-03 00:20:06,884 C:\Argyll\bin\colprof.exe: Error - Can't handle percept and sat table intents with different CAM spaces
2013-05-03 00:20:06,884 ...aborted.
2013-05-03 00:20:06,884 --------------------------------------------------------------------------------
2013-05-03 00:20:06,884 Profiling has not been finished.


I'll be sure to delete this long log once someone has attempted to help, as I don't want this cluttering up the first page.
N3W813
04:01 PM Liked: 36
post #7 of 2850
05-04-2013 | Posts: 1,140
Joined: Feb 2003
Quote:
Originally Posted by fairchild99

Ok, will post up the last log when I tried to just do a profile, after the calibration had already been done.

I guess this is where the main failure is:
Code:
2013-05-03 00:20:06,834 Setting up B to A table lookup
2013-05-03 00:20:06,884 Creating Gamut Mapping
2013-05-03 00:20:06,884 C:\Argyll\bin\colprof.exe: Error - Can't handle percept and sat table intents with different CAM spaces
2013-05-03 00:20:06,884 ...aborted.
2013-05-03 00:20:06,884 --------------------------------------------------------------------------------
2013-05-03 00:20:06,884 Profiling has not been finished.


I'll be sure to delete this long log once someone has attempted to help, as I don't want this cluttering up the first page.

Try using my guide above to perform a profile/calibration. Make sure you disable any settings that you may have set from other guides. (ie. settings in the Advanced gamut mapping options in DispcalGUI)
fahrenheit
08:28 PM Liked: 30
post #8 of 2850
05-04-2013 | Posts: 708
Joined: Mar 2007
Generated the lut and madVR said it was registered, but MPC-HC says 'madVR **Unavailable**' and when I try to apply it, it tells me it is not installed.
Running WIndows 7 64bit with an ATi Radeon HD 5670.

Thanks for the guide btw.

Edit: My fault! I installed the 64bit version of MPC-HC which doesn't support madVR. Installed the 32bit version and its up and running.
Too much ambient light in the room at the moment so I won't be able to measure it until later, but it certainly didn't look bad thats for sure. Playback was a bit choppy so I may be at the limits of what my PC can handle.
alamagar
04:12 AM Liked: 11
post #9 of 2850
05-05-2013 | Posts: 31
Joined: Dec 2008
I've been trying 3dLut profile calibration last 2 months with argylCMS and madVR based on this guide
http://yabb.jriver.com/interact/index.php?topic=78302.0
with good results and I see you propose subtle differences. These are:
Quote:
B. Perform a quick display profile/calibration using ArgyllCMS/DispcalGUI (For advanced options, see post #2)
• For 'Whitepoint', select Chromaticity coordinates and enter 0.312713 for X and 0.329016 for Y
• Set 'Calibration quality' to Medium
• Check 'Black point compensation'
• After the process finishes, do NOT install the profile
What are the benefits of using each one this options?

Quote:
Make sure you disable any settings that you may have set from other guides. (ie. settings in the Advanced gamut mapping options in DispcalGUI)
What is the reason for disable settings in "Advanced gamut mapping options"?

I usually calibrate white balance and gamma to 2.2 with HCFR and after that make a profile with DispcalGUI and use it to get the 3dLut file. Therefore I hit the "only profile" button. Am I getting the same results?

Quote:
Why don't use LinkICCGUI? It seems more automated.

Quote:
D. Apply the 3DLUT file in MadVR
Check 'disable GPU gamma ramps'
Who do we need to disable GPU gamma ramps?

On the other hand, I have two displays conected a TV and a Projector. Each needs a different 3dLut File. Is there a way to instruct madVR to automatically identify the display and choose the correct edLut File?

Thanks again. I know there are a lot of questions but I'm very interested in this topic.
zoyd
09:34 AM Liked: 432
post #10 of 2850
05-05-2013 | Posts: 5,038
Joined: Sep 2006
Quote:
Originally Posted by N3W813

Results from my Sharp Elite calibration/profile. It's not perfect but it is MUCH better.

If you want to optimally linearize the gamut I've found that the patch count using OFPS generation needs to be >=1500, 2500 should cover a troublesome display like the Sharp Elite. And by optimal I mean you'll end up with a very symmetric error distribution at or near your probe's precision. It probably won't be visually much different than what you did above.
N3W813
01:15 PM Liked: 36
post #11 of 2850
05-05-2013 | Posts: 1,140
Joined: Feb 2003
Quote:
Originally Posted by alamagar

I've been trying 3dLut profile calibration last 2 months with argylCMS and madVR based on this guide
http://yabb.jriver.com/interact/index.php?topic=78302.0
with good results and I see you propose subtle differences. These are:

What are the benefits of using each one this options?

The guide posted by hulkss using ArcgyllCMS and Ti3parser does NOT create a good quality 3DLUT. Delta luminance errors for measured points in the gamut are mostly above 3.
I will explain the options more in detail in post #2. I'm just starting out in color management and may take me some time to learn what some of these options do as well.
Quote:
What is the reason for disable settings in "Advanced gamut mapping options"?

I did not need adjust any settings in "Advanced gamut mapping options". I wanted to make sure people that have used hulkss's guide do not forget to turn those options off when using the workflow above.
Quote:
I usually calibrate white balance and gamma to 2.2 with HCFR and after that make a profile with DispcalGUI and use it to get the 3dLut file. Therefore I hit the "only profile" button. Am I getting the same results?
Yes, you should.
Quote:
Why don't use LinkICCGUI? It seems more automated.
Like I said, ti3parser does not produce a 3DLUT that is accurate.
Quote:
Who do we need to disable GPU gamma ramps?
Because in the collink.exe command, the calibration curves are already incorporated into the 3DLUT using the option "-a display.cal".
Quote:
On the other hand, I have two displays conected a TV and a Projector. Each needs a different 3dLut File. Is there a way to instruct madVR to automatically identify the display and choose the correct edLut File?
Quote:
Originally Posted by zoyd

If you want to optimally linearize the gamut I've found that the patch count using OFPS generation needs to be >=1500, 2500 should cover a troublesome display like the Sharp Elite. And by optimal I mean you'll end up with a very symmetric error distribution at or near your probe's precision. It probably won't be visually much different than what you did above.

Thanks for the tip. I did a profile with the massive testchart this morning and it did provide lower average dEs. But like you said, can't really tell visually. :P
N3W813
01:27 PM Liked: 36
post #12 of 2850
05-05-2013 | Posts: 1,140
Joined: Feb 2003
Quote:
Originally Posted by fahrenheit

Playback was a bit choppy so I may be at the limits of what my PC can handle.

You will need a video card that is powerful enough to handle processing the 3DLUT. You can try setting the chroma/image upscale/downscale options in MadVR to see which offers the best performance vs quality.

I also found out my video card is not sufficient enough to process 1080p60 video files with 3DLUT enabled and Jinc3 AR scaling options. Time to upgrade!!
fahrenheit
02:39 PM Liked: 30
post #13 of 2850
05-05-2013 | Posts: 708
Joined: Mar 2007
So I went to take measurements but found for some reason, MP-HC with madVR couldn't playback my test patterns (AVSHD in m2ts). It would result in green bars at the top and colour shift.
I'll have to try with the mp4 versions.
alamagar
04:14 PM Liked: 11
post #14 of 2850
05-05-2013 | Posts: 31
Joined: Dec 2008
Quote:
Originally Posted by N3W813

The guide posted by hulkss using ArcgyllCMS and Ti3parser does NOT create a good quality 3DLUT. Delta luminance errors for measured points in the gamut are mostly above 3.
I will explain the options more in detail in post #2. I'm just starting out in color management and may take me some time to learn what some of these options do as well.

I did not need adjust any settings in "Advanced gamut mapping options". I wanted to make sure people that have used hulkss's guide do not forget to turn those options off when using the workflow above.
Yes, you should.
Like I said, ti3parser does not produce a 3DLUT that is accurate.
Because in the collink.exe command, the calibration curves are already incorporated into the 3DLUT using the option "-a display.cal".
Thanks for the tip. I did a profile with the massive testchart this morning and it did provide lower average dEs. But like you said, can't really tell visually. :P

Thanks a lot for your answers. I'll give a try this week and share the results.

Bye.
fairchild99
06:30 PM Liked: 149
post #15 of 2850
05-05-2013 | Posts: 892
Joined: Jul 2010
On my second go with your guide and using argyllcms + madvr and this second time I decided to simply do a profile, as you had suggested to another user that the quality should be as good as doing both the calibration and profile. (i already do a calibration using HCFR and rather not do yet another long calibration session.)

The first attempt I had used a 2.4 calibrated gamma and the results looked way off. My grayscale de's had increased tremendously so I was not pleased with the results.

I went back to doing a 2.2 gamma calibration and will re-measure and see if the results are better this time with just a profile being done. This is what my settings look like in the displaycalgui window. Hopefully I have set the proper mode for my colormunki spectro (difference from Hi-res and adaptive hi-res shouldn't throw things off?):

Also, I went ahead and changed the command to be:

I took out the -a parameter and the .cal file (which I don't have now since I only performed a profile), this should be correct and provide an acceptable 3dlut I hope.
zoyd
06:48 PM Liked: 432
post #16 of 2850
05-05-2013 | Posts: 5,038
Joined: Sep 2006
Use the -I b parameter or Rec709_gamma22.icm otherwise you'll end up with a gamma that is too low.
fairchild99
08:01 PM Liked: 149
post #17 of 2850
05-05-2013 | Posts: 892
Joined: Jul 2010
Quote:
Originally Posted by zoyd

Use the -I b parameter or Rec709_gamma22.icm otherwise you'll end up with a gamma that is too low.

Yep, my second attempt came out with gamma around 1.8-1.9 so everything was way too bright. I was sticking to the rec709.icm since that one was the new one that Graeme had pointed to in the MadVR thread so I figured it was ok to go with that one as the most up to date one.

So the parameter to get the right gamma (aka gamma that my display is putting out or was calibrated to originally) is -I b?

So I could just put the command as such:

collink.exe -v -3m -qh -et -Et -G -ial -I b Rec709.icm display.icm madvr.icm

or do I need to change something else? Thanks!
zoyd
08:11 PM Liked: 432
post #18 of 2850
05-05-2013 | Posts: 5,038
Joined: Sep 2006
yes, try that to start, should give you a BT.1886. If that's too dark you can do -I b -I 2.3 (or 2.2)
kanedo
12:07 AM Liked: 19
post #19 of 2850
05-06-2013 | Posts: 97
Joined: Nov 2005
Is there a way to specify a windowed pattern size in dispcalgui for use with plasmas?
gwgill
07:19 AM Liked: 88
post #20 of 2850
05-06-2013 | Posts: 683
Joined: Jan 2013
Quote:
Originally Posted by N3W813

[*] Check 'disable GPU gamma ramps'

Note that on my system, "disable GPU gamma ramps" doesn't work in either window or full screen exclusive mode, and there are three possible ways of working around this.

1) Disable the VideoLUTs by running "dispwin -c" instead. (You can restore the installed profiles calibration using "dispwin -L").

2) Don't use the collink "-a display.cal" parameter (ie. create a link/3dlut that doesn't
incorporate the display calibration curves), and load the calibration curves into the VideoLUT
using "dispwin display.cal"

3) Don't use the collink "-a display.cal" parameter (ie. create a link/3dlut that doesn't
incorporate the display calibration curves), and install the profile, ie. "dispwin -I display.icm"

(Given the uncertainty of whether "disable GPU gamma ramps" works, I'm not sure I'd recommend a sequence that depends on it. On the other hand, it's not clear if VideoLUTs can be used in a video overlay mode.)
gwgill
07:32 AM Liked: 88
post #21 of 2850
05-06-2013 | Posts: 683
Joined: Jan 2013
Quote:
Originally Posted by kanedo

Is there a way to specify a windowed pattern size in dispcalgui for use with plasmas?
By default DispcalGUI allows you to resize & position the test patch window before commencing the measurements. You can also fill the rest of the display with black.
N3W813
11:11 AM Liked: 36
post #22 of 2850
05-06-2013 | Posts: 1,140
Joined: Feb 2003
Quote:
Originally Posted by fairchild99

Yep, my second attempt came out with gamma around 1.8-1.9 so everything was way too bright. I was sticking to the rec709.icm since that one was the new one that Graeme had pointed to in the MadVR thread so I figured it was ok to go with that one as the most up to date one.

So the parameter to get the right gamma (aka gamma that my display is putting out or was calibrated to originally) is -I b?

So I could just put the command as such:

collink.exe -v -3m -qh -et -Et -G -ial -I b Rec709.icm display.icm madvr.icm

or do I need to change something else? Thanks!

With the Rec709.icm in my testing, I also ended up with a BT.1886 curve that was washing out the blacks at the low end. That is the reason why I went with power gamma 2.2 in my workflow by using the Rec709_Gamma22.icm from [dispcalgui_install_folder]\ref instead. See the 'after' graph of my calibration in post #3.
N3W813
11:12 AM Liked: 36
post #23 of 2850
05-06-2013 | Posts: 1,140
Joined: Feb 2003
Quote:
Originally Posted by gwgill

Note that on my system, "disable GPU gamma ramps" doesn't work in either window or full screen exclusive mode, and there are three possible ways of working around this.
)

10k
03:34 PM Liked: 38
post #24 of 2850
05-06-2013 | Posts: 690
Joined: Sep 2005
N3W813, thanks for putting this together, good stuff! For showing the results you might also consider running "verify profile" in dispcalGUI for before and after, since it will show you the variance on the testchart used to do the profile and calibration in the first place.
gwgill
04:48 PM Liked: 88
post #25 of 2850
05-06-2013 | Posts: 683
Joined: Jan 2013
Quote:
Originally Posted by N3W813

With the Rec709.icm in my testing, I also ended up with a BT.1886 curve that was washing out the blacks at the low end. That is the reason why I went with power gamma 2.2 in my workflow by using the Rec709_Gamma22.icm from [dispcalgui_install_folder]\ref instead.

It's interesting that you think your blacks are "washed out". Modern video is assumed to have a source encoding of Rec709 transfer curve, so changing this to assume a pure 2.2 power curve is an interesting move.

The darkening of the lowest black tones is a natural result of the Rec709 straight line segment being followed by the BT.1886 pure power curve. According to this discussion [URL] http://www.avsforum.com/t/1409045/how-power-law-gamma-calibration-can-lead-to-crushed-blacks [/URL], Poynton etc., this is exactly what is expected - ie. that's the way it's intended to look, because that's what the video creator was looking at on their studio reference monitors.
N3W813
05:26 PM Liked: 36
post #26 of 2850
05-06-2013 | Posts: 1,140
Joined: Feb 2003
Quote:
Originally Posted by gwgill

The darkening of the lowest black tones is a natural result of the Rec709 straight line segment being followed by the BT.1886 pure power curve. According to this discussion [URL] http://www.avsforum.com/t/1409045/how-power-law-gamma-calibration-can-lead-to-crushed-blacks [/URL], Poynton etc., this is exactly what is expected - ie. that's the way it's intended to look, because that's what the video creator was looking at on their studio reference monitors.

It's not the 'darkening' of the blacks from 1%-10%, it was the over 'brightening' (increased light output) that I did not care for. I will create different 3DLUTs with various Ref709 profiles and gamma curves to do some comparisons in the future.

Before using ArgyllCMS generated 3DLUT, I have performed calibrations on my TV to power gamma 2.2, 2.3, 2.4, and BT.1886 using Calman calibration software with the TV's internal 10 point grayscale adjustments. After trying all the different curves out with various reference Blurays and everyday viewing, I still ended up preferring the power gamma 2.2 output.

I have read "how-power-law-gamma-calibration-can-lead-to-crushed-blacks" thread before but there is no conclusion as to which transfer function is the norm because we have no idea what the post-production houses are using when they encode the videos. It can vary from house to house unfortunately. I will reread the thread again and see if I can find a consensus. So far, from my personal testing, it seems to me that power gamma 2.2 works best in 'most' DVD/Bluray sources.

Edit:
I will be testing the following gamma curves next.
Code:
collink.exe -v -3m  -qh  -et  -Et  -Ib  -I2.4  -G  -a display.cal  -ial  Rec709.icm  display.icm  madvr.icm
collink.exe -v -3m  -qh  -et  -Et  -Ib  -I2.6  -G  -a display.cal  -ial  Rec709.icm  display.icm  madvr.icm


After further testing, it seems that I may have previously created 3DLUTs with incorrect options or some other mistakes. Using the different BT.1886 -I2.0 through 2.6 values, I now prefer using -I2.2 instead. Updated post#2 with BT.1886 gamma generation options.
N3W813
09:38 PM Liked: 36
post #27 of 2850
05-06-2013 | Posts: 1,140
Joined: Feb 2003
Quote:
Originally Posted by 10k

N3W813, thanks for putting this together, good stuff! For showing the results you might also consider running "verify profile" in dispcalGUI for before and after, since it will show you the variance on the testchart used to do the profile and calibration in the first place.

Thanks, I will check this out
gwgill
10:00 PM Liked: 88
post #28 of 2850
05-06-2013 | Posts: 683
Joined: Jan 2013
Quote:
Originally Posted by N3W813

After further testing, it seems that I may have previously created 3DLUTs with incorrect options or some other mistakes. Using the different BT.1886 -I2.0 through 2.6 values, I now prefer using -I2.2 instead. Updated post#2 with BT.1886 gamma generation options.
That's what I ended up with too.

I am contemplating changing the option and how it works though, along the lines of dispcal. Currently the BT.1886 gamma override is the actual power (what I've called "technical" gamma in dispcal), but the input offset nature of the black point matching of BT.1886 makes the effective gamma (ie. the brightening or darkening effect on mid tones) very sensitive to the display black point. So what I'm thinking of doing is regarding the gamma number as an effective gamma specification, so that the overall look won't depend on the display black point. I'd introduce another flag for those who want "pure" BT.1886, or want to be able to specifiy the actual power ("technical" gamma).
zoyd
06:58 AM Liked: 432
post #29 of 2850
05-07-2013 | Posts: 5,038
Joined: Sep 2006
Quote:
Originally Posted by gwgill

That's what I ended up with too.

I'm finding this also but I think there is an issue with the BT.1886 switch because it does not achieve the desired theoretical function when measured on my display.

The display is first calibrated to a flat 2.2, profiled and then linked using the Rec709.icm source and using the -I b switch. This results in a too-dark image, especially in the shadows. The target above was calculated with a measured black of 0.025 cd/m^2 and white of 134 cd/m^2 and I've checked the values in the .ti3 file used to create the profile as 0.025 cd/m^2, 140 cd/m^2. Can you check your BT.1886 code somehow and make sure the target calculation is correct? I'd really like to reproduce that target curve as it works very well on my display.

Stimulus Target Y [0.025 cd/m^2 black, 134 cd/m^2 white]

10 0.92
20 3.67
30 8.76
40 16.57
50 27.41
60 40.82
70 58.32
80 79.55
90 104.71
VerGreeneyes
11:04 AM Liked: 12
post #30 of 2850
05-07-2013 | Posts: 112
Joined: May 2013
This is interesting stuff I've yet to try the actual 3DLUT creation, but I had some questions.
Quote:
Originally Posted by N3W813