Quote:
I took a blankclip: blankclip(color=$0000f0,pixel_type="yuy2") coloryuv(analyze=true) # gives the values: YUV = 39, 234, 111 Then I made the following script as source (conversion to RGB24 done by AviSynth itself): blankclip(color=$0000f0,pixel_type="yuy2") ConvertToRGB24 I made two mpeg1 clips with TMPGEnc: bc_def.mpg without the option "output YUV as Basic YCbCr and not CCIR601" checked (which is the default). Importing (as YUY2) and analyzing in AviSynth gives: DirectShowSource("e:\temp\test\bc_def.mpg",fps=25) coloryuv(analyze=true) # YUV = 40, 233, 111 conclusion: clip is untouched. The second clip is with the option "output YUV as Basic YCbCr and not CCIR601" checked. Importing (as YUY2) and analyzing in AviSynth gives: DirectShowSource("e:\temp\test\bc_ycbcr.mpg",fps=2 5) coloryuv(analyze=true) # YUV = 27, 248, 108 conclusion: the values are changed. Some math: The inversion of y = x/255*( 235-8 )+8 gave the incorrect values! So I used: y = x/255*(235-16) + 16 [(0,255)->(16,235)] The inverse is given by x = 255/(235-16)*y - 16*255/(235-16) [(16,235)->(0,255)] y = 39 (luma of blankclip) results indeed in y = 26.8 = 27. conclusion: the scaling (16,235)->(0,255) is performed when the option "output YUV as Basic YCbCr and not CCIR601" is checked. btw, I see that I misread Jorel: Quote:
|
Quote:
Quote:
Quote:
Quote:
|
Hi all !
Great results Willbert ! I suspected that "output YUV as Basic YCbCr and not CCIR601" option checked is performing scale conversion but didn't find way to prove that . After this one we have to find what is wrong (in some movies ) with colors when black turns to be dark blue or green . This problem is mentioned many times in KVCD forum but NOONE could solve this problem . Even if we check "output YUV as Basic YCbCr and not CCIR601" option colors become more natural but still there is some visual difference . I suppose that they are using some kind of filter for color scale conversion that doesn't affect DVD MPEG2 stream but after encoding with TMPG color lose right values . That will be great If we could find how exectly prevent this unwanted effect . bman |
@Dialhot,
I did some more tests: # source: # blankclip(color=$000010, pixel_type="yuy2") # YUV = 18, 135, 127 # ConvertToRGB24 I opened this script in TMPGEnc and checked "output YUV as Basic YCbCr and not CCIR601", resulting in bc2_ycbcr.mpg. It has YUV values: 2, 136, 127 (I did it this way, because I don't know how to make this in AviSynth): # DirectShowSource("e:\temp\test\bc2_ycbcr.mpg",fps= 25) # coloryuv(analyze=true) # YUV = 2, 136, 127 # ConvertToRGB24 For some strange reason TMPGEnc crashes with the script above, so I loaded bc2_ycbcr.mpg directly in TMPGEnc. Now I unchecked "output YUV as Basic YCbCr and not CCIR601" and encoded to bc2_ccir601.mpg. I made the following script: DirectShowSource("e:\temp\test\bc2_ccir601.mpg",fp s=25) coloryuv(analyze=true) # YUV = 16, 128, 128 My conclusion is that all YUV values with Y<16 is clamped to (Y,U,V)=(16,128,128) when leaving "output YUV as Basic YCbCr and not CCIR601" unchecked. I guess all values with Y>235 are clamped to (Y,U,V)=(235,128,128), but I didn't check this. Conclusion: Jorel is correct! |
Quote:
|
Quote:
So as I told a long time ago, bye bye limiter in the scripts, is useless :!: Thank you Wilbert for having done all these tests. |
Quote:
Quote:
|
Of course. I don't do any encodign with other tool.
|
Quote:
|
Don't know, I never used CCE. Accordingly to the CCE-faq at doom, it has a luminance level option. Maybe someone can do the same two tests (as I did above) to see what this option does?
|
Yes, CCE has this luminance level 16 to 235 or 0 to 255. I think by default it is at 0 to 255. Now I need to read again on what the two differences do :)
|
Site design, images and content © 2002-2024 The Digital FAQ, www.digitalFAQ.com
Forum Software by vBulletin · Copyright © 2024 Jelsoft Enterprises Ltd.