AVS Forum banner

1 - 20 of 90 Posts

·
Registered
Joined
·
542 Posts
Discussion Starter #1
Because HTPC lacks a real video equalizer (like in Lumagen or Holo3D) I decided to develop one. Since modern video cards use a lookup table with 10 bits (from possible 16 bits) which avoids banding the VideoEqualizer features a configurable number of control points to change this LUT.

The standard controls are still buggy, but I think they are not so important than the parametric part. Interpolation is done with cubic splines. It is just an early beta version so handling has to be improved.

I calibrated my G90 with the VideoEqualizer using 17 control points and measuring via HCFR and an Eye One Display 2. It worked very well.


VMR9/EVR and Desktop are affected by the LUT. It does not work on overlay!


I hope some of you will use this program and report errors or suggestions for improvement to me.







UPDATE:

- GammaLoader: command line utility for loading saved lookup tables.

- VideoEqualizer is now resizable and should fit into 720p displays.


UPDATE:

- Control points are now located at a multiple of 10 IRE (or 5 IRE, 2.5 IRE, 1.25 IRE).


UPDATE v2.01:

- Support for multiple monitors

- GUI improved


UPDATE v2.02:

- Color graphs are now selectable


UPDATE v2.03:

- Values can now be entered manually by right clicking at a control point. This works only if a single color is selected.


UPDATE 2.04:

- Manual value input fixed

- Interpolation greatly improved

- Resize bug fixed


UPDATE 2.05:

- Smaller main window to fit onto 720p displays.


UPDATE 2.06:

- A previous saved LUT can be loaded via command line. This makes GammaLoader obsolete. Syntax: VideoEqualizer.exe ""

The monitor ID is zero based. If this parameter is empty the default is 0.

 

VideoEqualizer.zip 194.6513671875k . file
 

Attachments

·
Registered
Joined
·
2,076 Posts
Hey good work!


Are we able to change individual points?

Does it work with the latest nVidia cards?



I have a G70 fed from a nVidia 8600GTS card. I am hoping this will improve the Gamma.


Also, you may want to post this info in the CRT forums,,,,people there will be excited about it.
 

·
Registered
Joined
·
542 Posts
Discussion Starter #4
Thanks!



@rajdude
Quote:
Are we able to change individual points?

You can switch between a fix number of control points. Right now I don't plan to implement individual points. Maybe in future, but I think it works very well with 17 or 33 points.

Quote:
Does it work with the latest nVidia cards?

Since I use windows functions (SetDeviceGammaRamp()) in my program it should work with every video card which supports gamma lookup table.
 

·
Registered
Joined
·
8 Posts
Using ATI 3650, Catalyst 8.5

It seems to be working but with an error message for each change I try to apply.


e.g.

Gamma -> Setting Gamma Failed

Contrast -> Setting Contrast Failed

Point -> Setting point failed


On the whole table, when I apply a reset, I get

"Setting LUT failed"


Too bad, since it could be very useful!

Keep it up please



One question is possible to move points with the keyboard? I get the error message and not a chance to try it out before getting the message
 

·
Registered
Joined
·
542 Posts
Discussion Starter #6

Quote:
Originally Posted by DomDom /forum/post/14144630


Using ATI 3650, Catalyst 8.5

It seems to be working but with an error message for each change I try to apply.

This is strange. The error comes from Microsoft's function for setting up the LUT. Usually it happens if you try to make extreme changes to the gamma curve. But since it also happens on your computer when you press the reset button, it must have another reason. Did you try another Catalyst version?
 

·
Registered
Joined
·
8 Posts
I will be definately trying Catalyst 8.6 then I will get back to you. If Catalyst is the reason, there must be other people concerned by these error messages?
 

·
Registered
Joined
·
34 Posts
This is really nice! Works great on both machines I tried, an 8800GTS and 8500GT, both running Vista 64.


Would it be possible to automatically load a LUT-file from the command line without going through the GUI? And another small thing... on my 720p projector, I can't fit the whole application on-screen given the fixed size, making it slightly awkward to work with.


All in all, great work, and I hope you keep us updated on this project.
 

·
Registered
Joined
·
50 Posts
Thanks. I have searched for many hours after a way to access the LUT in more than 8 bit form.


Would it be possible for it to read the 8 bit LUT that is already there and usually left by a probe. Then smooth it for 10 bit output?

Or load it as a curve so you could easily match it yourself.
 

·
Registered
Joined
·
542 Posts
Discussion Starter #10

Quote:
Originally Posted by CoveX /forum/post/14147803


Would it be possible to automatically load a LUT-file from the command line without going through the GUI?

I already wrote a small command line utility. I added it to the first post. Just add your saved LUT as parameter and it will be loaded. Maybe I integrate this function into the VideoEqualizer later.

Quote:
And another small thing... on my 720p projector, I can't fit the whole application on-screen given the fixed size, making it slightly awkward to work with.

Ah yes, not everyone uses 1920x1080 already!


When I have time I will make the window resizable.
 

·
Registered
Joined
·
1,912 Posts
Thanks for this Nils-


I was a V1.0 user and fan. I would be nice to see this more integrated with HCFR and to see HCFR generate and use ICC/LUT profiles but this goes towards that.


Dave
 

·
Registered
Joined
·
7,322 Posts

Quote:
Originally Posted by FoLLgoTT /forum/post/14149672


Ah yes, not everyone uses 1920x1080 already!


When I have time I will make the window resizable.

Hey now! Some of us still have ED panels that we use.


Anyway, how does this work with the EyeOne? Is it set up to automatically profile like the EyeOne software (only for video)? Or do you just make changes manually and then use the EyeOne to test values?


Does it work on plasmas as well as LCDs?


What are you using as the baseline for what it is supposed to be? SMPTE levels? Can this program display SMPTE swatches and then confirm that they are being displayed correctly via the EyeOne?


-Suntan
 

·
Registered
Joined
·
542 Posts
Discussion Starter #14
@Suntan
Quote:
Anyway, how does this work with the EyeOne? Is it set up to automatically profile like the EyeOne software (only for video)? Or do you just make changes manually and then use the EyeOne to test values?

No, it is a manual equalizer only. There is no automation implemented. You have to measure and correct LUT yourself in an iterative process.

The program works on the full 0-255. The levels used when playing videos depend on the video decoder, selected renderer and output color space.


@DomDom
Quote:
Why is the version in the zip tagged as 1.0?? shouldnt it be 2.0?

Thanks, this is a bug. I will correct it.
 

·
Registered
Joined
·
7,322 Posts

Quote:
Originally Posted by FoLLgoTT /forum/post/14155667


@Suntan


No, it is a manual equalizer only. There is no automation implemented. You have to measure and correct LUT yourself in an iterative process.

The program works on the full 0-255. The levels used when playing videos depend on the video decoder, selected renderer and output color space.

So how do you know your output is correct? Specifically, that the total output from the encoding as the director intended it when it was laid down on the disc to the output your eye sees when it is played back. Or is this just for people to make visual adjustments to something that they perceive as better? Not knocking it, just wondering where it fits in.


What does it do with colorspace? No media player that I know of is colorspace aware.


And could you explain more how my EyeOne would fit in? Is the program interfacing with it directly, or are you using it with a different program?


-Suntan
 

·
Registered
Joined
·
7,044 Posts

Quote:
Originally Posted by Suntan /forum/post/14156801


So how do you know your output is correct? Specifically, that the total output from the encoding as the director intended it when it was laid down on the disc to the output your eye sees when it is played back. Or is this just for people to make visual adjustments to something that they perceive as better? Not knocking it, just wondering where it fits in.


What does it do with colorspace? No media player that I know of is colorspace aware.


And could you explain more how my EyeOne would fit in? Is the program interfacing with it directly, or are you using it with a different program?


-Suntan

The eye one is a colorimeter.

Where it fits in, is precisely the question you were asking. You use it to determine that Grey (white) is precisely located at 3.14, 3.31 on the xyY coordinate system. Then you also measure the luminance so that the brightness follows a 2.2 gamma curver (gamma can be higher or lower, but with this you can make it track exactly).


This app can really only set your white point and then how your gamma ramps up. But this is a HUGE component of colorfidelity so having it available is great.


You need something quite a bit beefier if you want to make sure pure green is itu.709 green (HDTV standard) or sRGB green (computer standard) or itu.601 (SDTV standard).
 

·
Registered
Joined
·
542 Posts
Discussion Starter #17
@Suntan

The color space is defined by the primaries of your display. Usually they are fix and you can only change a too big gamut to a smaller one by lowering the saturation of the specific primary (sadly not all projectors are able to do this).

For example my CRT projector is color filtered on green and red to fit the spectrum of the output to the standard observer. So all primary and secondary colors spanning the ITU Rec.709 triangle inside the CIE diagram are nearly perfect.

With The Eye One and HCFR you can measure and set black point, white point, color temperature and of course gamma if your display allows it. When gamma is not 2.5 everywhere over the IRE scalar and you can not correct it with the given controls of your display you can correct it with the VideoEqualizer before the video signal leaves your HTPC. To do this you have to iterate over measuring and correcting. This is where the Eye One or any other sensor fits in.


VideoEqualizer's purpose is to change gamma only. You also can change color temperature by parallelly translating the color graphs, but since you lose precision in the digital domain it should be avoided. The gamut (primaries) can not be changed by manipulating the LUT of the video card.
 

·
Registered
Joined
·
7,322 Posts

Quote:
Originally Posted by FoLLgoTT /forum/post/14157243


@Suntan

The color space is defined by the primaries of your display.

Ok, you are just talking about the monitor colorspace. In your previous post you stated:

Quote:
Originally Posted by FoLLgoTT /forum/post/14157243


The levels used when playing videos depend on the video decoder, selected renderer and output color space.

Which led me to believe you were talking about some media program that was color managed, as everything else in that sentence was specifically talking about software used for playback.

Quote:
Originally Posted by FoLLgoTT /forum/post/14157243


With The Eye One and HCFR

Yes I know what the EyeOne is used for. I was specifically asking if your program controls it directly or you have to use some other program. I assume my answer is that you have to use this HCFR program in addition to VideoEqualizer.

Quote:
Originally Posted by FoLLgoTT /forum/post/14157243


VideoEqualizer's purpose is to change gamma only.

Right, that answers the rest.



Sorry for asking so many questions, but quite honestly, most of the time when people start talking about calibrating monitors and then talk about trial and error and measure and correct yourself in an iterative process it usually means they have nothing better than pick the setting that makes the red, green and blue boxes look solid and not striped.


Now can anyone tell me if this HCFR can properly read the feedback from a plasma panel so you can use the puck to calibrate one? You would think it could, but it is still a question that is openly debated in the digital photo world when wanting a fully color managed system with a large screen display.


-Suntan
 

·
Registered
Joined
·
542 Posts
Discussion Starter #19

Quote:
Originally Posted by Suntan /forum/post/14157513


Which led me to believe you were talking about some media program that was color managed, as everything else in that sentence was specifically talking about software used for playback.

I meant the interface color space between video decoder and renderer (RGB, YUY2, YV12, NV12 etc.). Some renderers use different levels depending on driver version and used color space.

Quote:
Now can anyone tell me if this HCFR can properly read the feedback from a plasma panel so you can use the puck to calibrate one?

Of course you can measure all relevant parameters of a plasma using HCFR and an Eye One. If you can set it up properly depends on the display device, because not everyone has the correct gamut and all controls needed for calibrating color temperature and gamma for each color. With VideoEqualizer you can correct at least gamma.
 

·
Registered
Joined
·
7,322 Posts

Quote:
Originally Posted by FoLLgoTT /forum/post/14157874


Of course you can measure all relevant parameters of a plasma using HCFR and an Eye One.

I guess I was more asking about full monitor profiling, as plasmas have not traditionally been supported by the likes of GretagMacbeth (or whatever they are calling themselves now-adays) in their profiling software. Back in the day, when LCDs were a novelty and all color work was done on CRTs, profiling software would not work with LCDs until updates were made. Now the question is much the same with plasmas, as there is relatively little demand for color profiled plasmas in the traditional color managed circles.


Anyway, I will have to read up on this HCFR and maybe look at having a go of it when I get some time.


Thanks.


-Suntan
 
1 - 20 of 90 Posts
Top