Baselworld is only a few weeks away. Getting the latest news is easy, Click Here for info on how to join the Watchuseek.com newsletter list. Follow our team for updates featuring event coverage, new product unveilings, watch industry news & more!

set linking intent. Start with -iaw, -r, or -ila for best results. See collink.exe documentation for more details.

"file" "file" "file"

reference file, source ICM file, output ICM/3DLUT file

C. Apply the 3DLUT file in MadVR

Play any video file in a media player with MadVR set as the video renderer

Right-click the MadVR tray icon and select 'Edit madVR Settings...'

Expand your display device under the devices node

Select 'calibration' menu

Select 'calibrate this display by using an external 3DLUT file'

Check 'disable GPU gamma ramps'

Click the browse icon and select the 3DLUT.3dlut file generated

Notes/Advanced Options

Parameter '-E' Usage Scenarios

Quote:

Originally Posted by madshi

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!

NotesOn 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)

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"

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.

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.

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)

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.

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

For 'Whitepoint', select Chromaticity coordinates and enter 0.312713 for X and 0.329016 for Y

Set 'Calibration quality' to Medium

Uncheck 'Interactive display adjustment'

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:

C. Create a MadVR 3DLUT file using Collink.exe

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.

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.

Hi N3W813, very pleased you started this thread.
I've been trying 3dLut profile calibration last 2 months with argylCMS and madVR based on this guidehttp://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?

Not sure if that's possible. Best to ask Madshi over at the Doom9 MadVR forum thread.

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

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!!

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.

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".
Not sure if that's possible. Best to ask Madshi over at the Doom9 MadVR forum thread.
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.

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?):

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?

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"

(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.)

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?

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, 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.

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.

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.

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, 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.

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).

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.

This is interesting stuff I've yet to try the actual 3DLUT creation, but I had some questions.

Quote:

Originally Posted by N3W813

7. Uncheck 'Interactive display adjustment'

Why do this? The interactive adjustment just lets you set your monitor's white point and brightness so that they're closer to the desired one (assuming your monitor has the necessary controls).

Second, I don't just want madVR to use my hard won calibration and profile, so I definitely want to have the calibration enabled outside madVR and the profile installed (e.g. for use in Firefox). Does this mean I should follow suggestion 3 from the Notes section of post 2? Or will the installed profile still get applied in madVR (I would expect it to be overridden by the 3DLUT)? Do I lose any quality by doing this?

Finally, isn't setting the chromaticity coordinates for the whitepoint to 0.312713 and 0.329016 the same as selecting a color temperature of 6500 K with a Daylight reference? I would expect the ideal white point to correspond with sRGB, which Rec. 709 uses, and that assumes D65 IIRC.