Log in

View Full Version : SAA7134 Colour


Incast
25th October 2004, 12:29
I'm looking for some opinions regarding the SAA7134's colour settings. I'm using defaults but looking at a comparison between an analogue capture and a DVB-T stream my caps appear brighter.

DVB-T Capture (No recompression)
http://www.btinternet.com/~jconlin/2.JPG

SAA7134 Capture (MPEG2 9.6mbit/s)
http://www.btinternet.com/~jconlin/1.JPG

To clearly see the difference you have to put them on top of each other and compare by switching between.

I'm extremely limited in terms of comparison as i don't have much DVB-T video. Also my analogue reception is poor and I'm unsure if my aerial is boosting the colours.

I'm trying to work out if this is my TV reception or my capture card. Do other SAA7134 users who run the default settings experience this? (Brightness: 128, Contrast: 68, Saturation: 64, Sharpness: 0)

For note my card is the Asus version, but I believe this area is similar to the rest as those defaults are not just on the Asus card.

Inc
25th October 2004, 12:51
Do other SAA7134 users who run the default settings experience this? (Brightness: 128, Contrast: 68, Saturation: 64,

Thats the point as u defenitely should do a histogram preview before to see WHICH luma range is incoming to your 7134card.

In Virtual VCR you can choose a histogram in the filters section or in Vdub "Preview with histogram".

You should config your settings above in a way that you keep your luma within the YUV Luma range.

In my case I decreased a bit the parameters above, so every channel will be within the luma range specs. Maybe some channels will result in less contrast/brightness but IMHO its better to stretch a bit a range later in avisynth which comes in too short as compared to a capture which is full of clippings in white and black areas as in that case the details in such areas are "away".

Arachnotron
25th October 2004, 20:16
There is a bit of an issue in using the histo option in virtualVCR.

It only works when you set the resolution back to 352x288 (PAL) and the color space to RGB24 while tuning the histo.

Here an oddity of the 7134 pops up.

A capture chip always works in YUV. If you select RGB24, it will still capture YUY2 and convert to RGB24 afterwards.

The SAA7134 capping yuy2 in default settings puts black on Y=16 and white on Y=235. If the original analog signal contains signallevels outside spec, they don't get clamped so you can het values below 16 or above 235 in your caps. Many sources do have some overshoots by the way.
The normal RGB values should be 0,0,0 for black and 255,255,255 for white. The saa7134 internal conversion however puts black on 16,16,16 and white on 235,235,235!

So, in the VVCR histo, you should have a 16 pixel gap on the left and a 20 pixels gap on the right of the histo for correct luma range with the SAA7134. If you adjust untill the histo touches the outher edges, your luma range is incorrect. The histo is very small, so it is difficult to see.

Two other things:

As you can see from the above, colorspace conversions between RGB and YUV can mess up your luma levels. This happens a lot since computerdisplays operate in RGB, and some MPEG2 encoders and videoeditors do too. So:
1. Are you absolutely sure the problem is with the capture, and not with the conversion you did to mpeg2?
2. Are you sure the DVB is the correct one? There is a lot of crap on the airways, and some of it has a digital format. :)

From my observations, the SAA7134 in default settings is always spot-on with it's luma range. Problems mostly mean either the source was out of spec or some incorrect yuv>RGB conversion happend somewhere down the line

Incast
28th October 2004, 18:46
Originally posted by Arachnotron
1. Are you absolutely sure the problem is with the capture, and not with the conversion you did to mpeg2?
2. Are you sure the DVB is the correct one? There is a lot of crap on the airways, and some of it has a digital format. :)

From my observations, the SAA7134 in default settings is always spot-on with it's luma range. Problems mostly mean either the source was out of spec or some incorrect yuv>RGB conversion happend somewhere down the line

1. Yes, absolutely certain.

2. That, I'm not so sure about the channel in question is not renowned for excellence when it comes to picture quality...

Looking at other captures mainly from VHS I think i would agree with you and I'll stick with the defaults. Especially as I'm dealing with a relatively poor aerial signal. Also histograms etc are a bit beyond me!

Thanks for your thoughtful posts to both of you.

numlock
30th January 2005, 00:39
Originally posted by Arachnotron
There is a bit of an issue in using the histo option in virtualVCR.

The SAA7134 capping yuy2 in default settings puts black on Y=16 and white on Y=235.

Arachnotron:
Do you know if this is the same for CX23881 chips ? Meaning black on Y=16 and white on Y=235

TIA

Arachnotron
30th January 2005, 16:41
I would say yes, but I am 100% not sure. The chip can do both, depending on how the range register is set:using the control codes as video timing.
0 = Normal Y:[16,253], C:[2,253]
1 = Full Range Y:[0,255], C:[2,253]
I would be very surprised if there is a driver out there that does not do 16-235, but you never know. Normally, bith CX238x and BT878 cards should produce black at 16.
Whether you will see superwhite/black in your caps is another matter. The saa7134/driver combo I use does show superblack, my Hauppauge winTV CX23881 card did not AFAIKR (coring). I deleted the caps, and it was a while back so I am not absolutely sure about that.

Inc
30th January 2005, 18:11
I do use a 7134 Capture Card using the Cinergy 1.4 Driver and with that driver a range of 0-255 is provided when capping in YUY2.

I used the histogram in VVCR and Vdub to pre-check before capping, YUY2 is used to go from the Card to the codec. If I use the defaults settings in the driver Capture Filter, then a Range of 0-255 is used (depends on the Broadcast station). No matter if HuffYUV,mjpeg,uncompressed YUY2 or YV12 is used when capturing: The full range is "offered".

Test on YUY2 or YV12 codec/uncompressed Capture:

Avisource("mycapture.avi")
#ConverttoYV12() # in case of other than YUY2 captures, but luma range will be untouched as YUY2toYV12 conversion is done.
Histogram("levels")

(Btw.: In my case and Version PIC mjpeg doesnt expand the luma to 0-255 when importing as YUY2 in avisynth, HuffYUV etc. neither)

Arachnotron
30th January 2005, 19:09
@incredible
I do use a 7134 Capture Card using the Cinergy 1.4 Driver and with that driver a range of 0-255 is provided when capping in YUY2.I'm not talking about the range here, I am talking about where pure black is.

Pure black should be at 16. With my card it is. However, it does not do coring, so if there is anything in the original analogue signal below blacklevel this will result in a value below 16. This is sometimes referred to as superblack. In normal captures, I almost always find values below 16.

IIRC, my CX23881 did have coring enabled. This means anything below blacklevel gets a value of 16. Many cards do this.

To do encoding correct, you have to know what your card does. If you look at the histo, and you find luma below 16, there can be two reasons for this (asides from weird analogue signals):
1. - black is at y=16, but there was superblack in the picture too
2. - your card puts black at zero

If the case is 1, you should not change the luma range, since you are in effect moving black to grey and you will mess up the luma range. If you want, you could 'round up' anything below 16 to 16.

In case 2, you would need to change the range OR use the appropriate switch for this in the encoder. (However, some encoders ignore this switch if the source offered is non-RGB)

I may be wrong in this, but I get the impression devices putting black at Y=0 are rare, and the difference is more in whether or not coring is switched on.

Inc
30th January 2005, 20:10
Originally posted by Arachnotron
@incredible
I'm not talking about the range here, I am talking about where pure black is.
YEP I do understand ;)

Heres a Histogram output out of a YUY2(Card)-YUY2(HuffYUV YUY2)-Avisynth(Avisource) Capture:

http://img162.exs.cx/img162/3581/7134yuy28hj.jpg

The Histogram is the same as showed in VVCR no other affecting components are active in the Dshow chain when VVCR does its capt.Job.


Pure black should be at 16. With my card it is. However, it does not do coring, so if there is anything in the original analogue signal below blacklevel this will result in a value below 16. This is sometimes referred to as superblack. In normal captures, I almost always find values below 16.
I think above the main "black" Treatment of the Luma is below 16 ;)

IIRC, my CX23881 did have coring enabled. This means anything below blacklevel gets a value of 16. Many cards do this.
Cropped or scaled? Cause in Avisynth's Levels coring in my tests gave a gropped luma range of 16-255 out of 0-255.

To do encoding correct, you have to know what your card does. If you look at the histo, and you find luma below 16, there can be two reasons for this (asides from weird analogue signals):
1. - black is at y=16, but there was superblack in the picture too
2. - your card puts black at zero

If the case is 1, you should not change the luma range, since you are in effect moving black to grey and you will mess up the luma range. If you want, you could 'round up' anything below 16 to 16.

In case 2, you would need to change the range OR use the appropriate switch for this in the encoder. (However, some encoders ignore this switch if the source offered is non-RGB)

I may be wrong in this, but I get the impression devices putting black at Y=0 are rare, and the difference is more in whether or not coring is switched on.

Hmmm.. maybe some drivers do compress the 0-255 to 16-235 (maybe in case of coring) or other wise, thats really a subject which should be checked. :)

BTW: Its a TYPHOON PCI Capture Card incl. SAA7134 Chip and as said a Cinergy 1.4 driver.

Arachnotron
30th January 2005, 20:29
ok, I'll do some checking too. Last time I checked black ended up at 16. This was using a test DVD that also included superblack.

By the way, what is your source? DVD? Could you also check with the letterboxing chopped off?
Cropped or scaled? Cause in Avisynth's Levels coring in my tests gave a gropped luma range of 16-255 out of 0-255.Cropped. The shape of the histo does not change, apart from everything below 16 moving up to a spike at 16.

Arachnotron
30th January 2005, 22:06
ok, here are my pics. :)

First a bit of background: I have used a DVD pluge from the "Digital video essentials" as a testsource. This sequence has a stack of 4 grey blocks in the center on a 100% black background. On the each side of the stack there are three dark grey vertical rectangles. Two of these are slightly above black, one is below (superblack). The purpose of this pick is to exactly tune your TV set to black. Ideally the superblack bar should be invisible against the black background, while the two dark grey bards should be barely visible.

The top block of the stack is 100% white.

The first pic shows a histo of a yuy2 capture. Clearly a yellow line can be seen from the black background. To the left of it, below 16, is the line belonging to the superblack box. The white is slightly below 235.

If you cranck up the brightness, you might just see the two dark grey boxes, but the superblack is gone. I made the screenshot using vdub, which means that everything below y=16 is set to RGB=0 since vdub works in RGB. Hence, the superblack cannot be seen in the screenshot. You have to take my word for it it was there. :)
http://bbsrv.imp.leidenuniv.nl/images/pluge.jpg

The second pic shows you what happens when you can raw RGB with the SAA7134. It puts Y=0 at RGB=0,0,0. When you open that in AVS, RGB=0 is converted to Y=16, which has the effect of 'bunching up' the original Y=0-255 range into Y=16-235. The result can clearly be seen, even superblack now ends up above 16 while black shifts to grey. Notice that now all three vertical bars are visible.
http://bbsrv.imp.leidenuniv.nl/images/plugergb.jpg

Interesting aside: these were my original caps. I tried to repeat it today, but could not get the superblack bar any more. It turned out that I have just upgraded the firmware in my DVD player. Before it had a blacklevel option which would allow me to either clamp black or allow superblack in the output. This option is now gone, and there is no signal below blacklevel any more from my DVD player. If I cap the same pic now, I get an identical histogram except for a missing line below Y=16 because the superblack bar got clamped by my DVD player.

numlock
31st January 2005, 08:36
OK, I just did a test and I have a problem.

I created a black clip with the black at 16 and burned a DVD.
Then I captured it with 7134 Capture Card using default settings in YUY2 color space.

According to Arachnotron it should be the same as the original clip with black at 16

However the resulting clip has black at 0.

I'm posting the frames of the original clip and the one that I captured. If you open it with Photoshop you'll see that black is at 0.

Can somebody help me here ?

original black at 16:

http://www.wtlzone.com/pictures/black1.jpg

captured black at 0:

http://www.wtlzone.com/pictures/black2.jpg

Arachnotron
31st January 2005, 14:41
How did you create the clip and how did you encode to mpeg2?

If you say "black at 16" is that in RGB or YUV?

And how did you check where black ended up? If you use something like the color picker in vdub, be aware that a conversion to RGB has already happened, so a capture with Y=16 will result in black with RGB=0,0,0

Blacklevels are tricky things in digital video :)

Wilbert
31st January 2005, 14:48
If you say "black at 16" is that in RGB or YUV?
YUV of course (created with BlankClip I assume).

@numlock,

You should check the luminance of your cap with

AviSource(cap.avi)
ColorYUV(analyze=true)

Arachnotron
31st January 2005, 14:57
You should check the luminance of your cap with

AviSource(cap.avi)
ColorYUV(analyze=true) If you do that, don't forget to crop off a few pixels and lines from the edge of your capture first. Otherwise some of the pic will include info that came from outside the acive picture area (horizontal blanking and such), which might influence the minimum readings.

Arachnotron
31st January 2005, 18:01
ok, into the breach once more :)

To make sure every step is identical I described the whole process.

First, generate a clip containing pure white, black and 50% gray:
# graybars.avs
# black bars have Y=16
# white bar has Y=235
# 50% gray bar has Y=125
black = BlankClip(length=500,width=720,height=72,pixel_type="yv12",fps=25,color=color_black)
white = BlankClip(length=500,width=720,height=72,pixel_type="yv12",fps=25,color=color_white)
gray10 = BlankClip(length=500,width=720,height=72,pixel_type="yv12",fps=25,color=color_gray10)
gray30 = BlankClip(length=500,width=720,height=72,pixel_type="yv12",fps=25,color=color_gray30)
gray50 = BlankClip(length=500,width=720,height=72,pixel_type="yv12",fps=25,color=color_gray50)
gray70 = BlankClip(length=500,width=720,height=72,pixel_type="yv12",fps=25,color=color_gray70)
gray90 = BlankClip(length=500,width=720,height=72,pixel_type="yv12",fps=25,color=color_gray90)
stackvertical(black,white, gray10,gray30,gray50,gray70,gray90,black)
ConvertToYV12()
Next, encode PAL progessive DVD mpg file from of it using the mainconcept mpeg2 encoder. To ensure the encoding did not shift the blacklevel, I first check the luma ranges in the resulting mpg file:
mpegsource("graybars.mpg")
#use mpeg2source if your output is dv2
ConvertToYV12()
histogram()
http://bbsrv.imp.leidenuniv.nl/images/graybarsmpg.jpg
The result is interesting: the white level was shifted a tiny bit downwards by the encoder, putting white at 233. Black is still at 16, so this clip is ok for the test at hand. Apparently the encoder makes some rounding errors? (assuming mpegsource is ok :D )

Next, capturing the S-video out from my Pioneer DV-535 DVD player. I capture using VVCR, uncompressed, YUY2, no sound. The device settings are the defaults:
Brightness: 128
Contrast: 68
Hue: 0
Saturation: 64
Sharpness: 0[/CODE]
Analyze the results:avisource("graybars.avi")
ConvertToYV12()
Histogram()
http://bbsrv.imp.leidenuniv.nl/images/graybarcap.jpg

So, once again I find black at 16.

@Wilbert: if I use coloryuv(analyze=true) the lowest value for Y is 1!! The histogram however shows that this value originate from the last two videolines at the bottom. Apparently my DVD player outputs blanking lines for these last two lines, which throws off the coloryuv analysis.

[edit] as wilbert pointed out, black has shifted a bit and is now at Y=14-15. Which is not bad considering we are capturing analog. :)

Wilbert
31st January 2005, 18:14
So, once again I find black at 16.
I guess it's 13-14 or so. What does the loose minimum say?

Apparently my DVD player outputs blanking lines for these last two lines, which throws off the coloryuv analysis.
I can't see it, but i believe you (shouldn't be to hard to check with a totally white clip).

Arachnotron
31st January 2005, 18:24
minimum: 1
loose minimum: 14
loose maximum: 232

You are right it is not exactly 16. But it is definately not 0! Since this is analog, a 1-2 deviation is acceptable I think. :)

The main point here is that at least for my set-up, black ends up where it should, so there is no reason to change the luma range. Unless a source is really messed up of course.

[edit] @numlock: I did not catch this the first time, but if you are looking at it in photoshop, you are probably looking at a screendump, which means you converted to RGB in the process. Y=16 equals RGB=0,0,0

@Wilbert

Cranck up your monitor to maximum brightness (the brown in the histo function is almost impossible to see on my normal settings, maybe a different color would be nice for a next avs version :))and you will see a tiny yellow dot at the bottom of the left brown band at Y=1.

Inc
31st January 2005, 18:58
Arachnotron,

thanks for the detailed tests :)

I wont use my DVDplayer Standalone as he defenitely messes up the luma range. I figured that out when trying to set up the brightness in the THX optimizer on my orig. Indina Jones DVDs.
The shadow behind the THX (pure Black) is "killed", means cropped.

So there are some DVDdevices which do affect the luma range in individual ways ;)

But I think your most importand point is that normaly broadcasts are kept that black is about at 16 and maybe some little luma informations are also in the superblack range.
BUT Im using an external S-VHS VCR as tuner which goes via s-video into my 7134 Card. Maybe there the mess does begin? That the internal technical compounts of the VCR so stretch the luma?! Hmmmm.... as said I just did set in the test above everything at default, means default Contrast and Brightness. Input from the card always YUY2 and different codecs as YUY2 and YV12 ... nothing other is affecting the dshow filterchain when doing the capture. Hmmmmm ..... maybe youre right that my device or its driver does stretch the luma .... ough :confused:

I'll do some more tests ...

Arachnotron
31st January 2005, 19:15
@incredible

I wont use my DVDplayer Standalone as he defenitely messes up the luma range. I figured that out when trying to set up the brightness in the THX optimizer on my orig. Indina Jones DVDs.
The shadow behind the THX (pure Black) is "killed", means cropped.Ouch! After the latest firmware update, both my DVD players now crop (clamp?), but fortunately both at Y=16 so I can still use them for black, just not superblack any more. Anything below y=16 is rounded up to y=16.:(

But you might use the gray levels for checking. If y=16 is moved to y=0, you would expect gray 10% to move downwards too. Using the graybars I posted, you should be able to see if your setup only crops the histogram, or of it is compressed/stretched out.

But I think your most importand point is that normaly broadcasts are kept that black is about at 16 and maybe some little luma informations are also in the superblack range.
BUT Im using an external S-VHS VCR as tuner which goes via s-video into my 7134 Card. Maybe there the mess does begin? That the internal technical compounts of the VCR so stretch the luma?!Does your VCR have a TBC? Or any other form of digital filtering?

I'll trow some other analogue sources at my card to see what happens. I never tried the tuner of my VCR. Good excuse to finally extend the cable TV to my working room :).

But it would not surprise me at all if some analog devices have the blacklevel set wrongly. The SAA7134 only looks at the voltage level relative to the level of the horizontal sync pulse. It should not be difficult for a device to mess that up. :)

Inc
31st January 2005, 22:55
Originally posted by Arachnotron
@incredible
Ouch! After the latest firmware update, both my DVD players now crop (clamp?), but fortunately both at Y=16 so I can still use them for black, just not superblack any more. Anything below y=16 is rounded up to y=16.:( That everywhere that much applaused CyberhomeCH505 Player even does it worse. If I choose RGB to Scart (on my Panasonic 32" 16:9) the Picture is brilliant but here the Player seems to 1st crop to 16-235 and afterwards stretching to 0-255 again as then via that RGB Signal the TV gots an even more luma cropped delivered. Means: Clouds very often to mee seem a bit clipped etc. For a normal user thats not noticable that much but if a DVD gets into the player where also significant luma is present at 0-16 and 235-255 thats then very noticable.
But I know that these tests have to be done via s-video connection, but Ill choose my other Mediencom DVD Standalone to make the tests to see if my card works properly or not. But anyhow .... I do see that the Players output isnt always a garant for a luma "reference" output ;)
But you might use the gray levels for checking. If y=16 is moved to y=0, you would expect gray 10% to move downwards too. Using the graybars I posted, you should be able to see if your setup only crops the histogram, or of it is compressed/stretched out.
Ill do that this week as I have to "move" my device from my Living room ;)

Does your VCR have a TBC? Or any other form of digital filtering?
Nope nothing of these, Its a simple s-vhs with a good output and I can capture VHS very well without significant amounts of framedrops.
I'll trow some other analogue sources at my card to see what happens. I never tried the tuner of my VCR. Good excuse to finally extend the cable TV to my working room :).

I think I also should switch to the cards int.Tuner and it would be very nice if a Testpattern could be found on TV here in Cologne Area, but as all channels got a 24h Broadcasting, that would be very dificult. I do remember when at the early day all three available channels in the 70ies and early 80ies broadcasted Testpatterns ;)

But it would not surprise me at all if some analog devices have the blacklevel set wrongly. The SAA7134 only looks at the voltage level relative to the level of the horizontal sync pulse. It should not be difficult for a device to mess that up. :) [/B]
Well If I do set the Brigness to 122 and the contrast to 62 I receive a perfect 16-235 (at 90% of my captures) Luma range finally in Avisynth. And my encodings do look very fine and right on my TV.


EDIT: I checked the signal via the Cards Tuner: Same Luma treatment at full 0-255.

BTW my Driver in the system Driver Panel is signed as a "Philips 2.3.0.21" (out of the Cinergy 1.4 Driver Package)

Arachnotron
1st February 2005, 21:50
BTW my Driver in the system Driver Panel is signed as a "Philips 2.3.0.21" (out of the Cinergy 1.4 Driver Package)Mine is 2.3.1.0, it came from the download at the flyTV 2000 page.

numlock
2nd February 2005, 09:46
Arachnotron:

Yes you are correct. I just did the test using the scripts you provided and ther resulat came out the same for PAL.

However there is a problem with NTSC. This is what I discovered:

I have a DVD player that can output both 7.5 IRE and 0 IRE. The card should autodetect this and set
the system to NTSC_M or NTSC_M_J. This is not the case. It always sets it to NTSC_M even if the sigmal is 0 IRE.

Here are the results:

I used the following script:

# graybars_NTSC.avs
# black bars have Y=16
# white bar has Y=235
# 50% gray bar has Y=125
black = BlankClip(length=500,width=720,height=60,pixel_type="yv12",fps=29.97,color=color_black)
white = BlankClip(length=500,width=720,height=60,pixel_type="yv12",fps=29.97,color=color_white)
gray10 = BlankClip(length=500,width=720,height=60,pixel_type="yv12",fps=29.97,color=color_gray10)
gray30 = BlankClip(length=500,width=720,height=60,pixel_type="yv12",fps=29.97,color=color_gray30)
gray50 = BlankClip(length=500,width=720,height=60,pixel_type="yv12",fps=29.97,color=color_gray50)
gray70 = BlankClip(length=500,width=720,height=60,pixel_type="yv12",fps=29.97,color=color_gray70)
gray90 = BlankClip(length=500,width=720,height=60,pixel_type="yv12",fps=29.97,color=color_gray90)
stackvertical(black,white, gray10,gray30,gray50,gray70,gray90,black)
ConvertToYV12()

encoded NTSC DVD progressive


this is the result if the player is set to 0 IRE - (the card treats it incorrectly as 7.5 IRE)


http://www.wtlzone.com/images/ntsc_0_IRE.jpg


this is the result if the player is set to 7.5 IRE - (the card treats it correctly as 7.5 IRE)


http://www.wtlzone.com/images/ntsc_75_IRE.jpg

BTW I got similar results with CX23881 card. The advantage there is that you can manually switch between
NTSC_M and NTSC_M_J.
Philips autodetects it so you cannot change it

conclusion: If your VCR outputs 0 IRE then you have a problem.
Problem is how do you find out if the VCR is set to 0 IRE or 7.5 IRE ?
I'm thinking maybe copy this test patern on a tape and gp through the same testing process ?

Arachnotron
2nd February 2005, 10:55
I'm not sure how a card should distinguish between NTSC_M and NTSC_M_J.
After all, a 0 IRE signal is perfectly legal for NTSC_M too, it is just that it is not associated with pure black any more.

So the question is: what is the difference between NTSC_M with extended range and NTSC_MJ. There should be more to it than just the blacklevel. After all, how would the SAA7134 detect the difference? Maybe it is the field blanking interval. According to ITU-BT470 it is 1.17 ms for NTSC-J and 1.22-1.34 for NTSC_M

Another nice thing from this:

NTSC_M legal blacklevel: 7.5 +/- 2.5, so 5-10 is legal
NTSC_MJ legal blacklevel: 0 +10, so 0-10 is legal. 0 is preferred, but 7.5 is still in spec!

Another nice one is this: what happens when you use a PAL VCR for NTSC tapes to produce PAL-60. Does the range get extended too? But if so, what happens with Japanese NTSC_J tapes when converted to PAL-60.....

numlock
2nd February 2005, 19:54
The other question. Now that we can determine black and white levels are correct but my picture seems to be a little bit brighter.
Do I do by adjusting gamma ? What function is the best fo this ? Levels ?

ALso how about adjusting other colors. saturation, etc ..

What's the best method ?
Are there any test patterns that could be used to set it correctly ?