Log in

View Full Version : x264 - Black/White movie, what options to look for ?


Betsy25
23rd March 2009, 16:31
Hi,

Since I use the preset "Unrestricted 2pass Extra Quality" as a default preset, I assume this is specifically for color movies.

Are there any options that better need to be altered/enabled/switched off/etc... when encoding a B/W movie using x264 ?

Thanks in advance !

(Perhaps, a lit FAQ sticky could mention about these things ? :))

unskinnyboy
23rd March 2009, 17:04
http://forum.doom9.org/showthread.php?t=130708

Just use Greyscale() in your avs script, and you should be OK.

Betsy25
23rd March 2009, 17:14
http://forum.doom9.org/showthread.php?t=130708

Just use Greyscale() in your avs script, and you should be OK.
Thanks unskinnyboy,

So it's better to NOT use the -no-chrome-me even if the source is B&W ?

Betsy25
23rd March 2009, 17:16
http://forum.doom9.org/showthread.php?t=130708

Just use Greyscale() in your avs script, and you should be OK.
Thanks unskinnyboy,

Since the thead is 2 year old, I better ask once again, just to be sure.

So it's better to NOT use the -no-chrome-me even if the source is B&W ?

Any about Greyscale() , does it have to be placed directly after the source in the avs ?
:thanks:

unskinnyboy
23rd March 2009, 17:28
Thanks unskinnyboy,

Since the thead is 2 year old, I better ask once again, just to be sure.

So it's better to NOT use the -no-chrome-me even if the source is B&W ?

Any about Greyscale() , does it have to be placed directly after the source in the avs ?
:thanks:
If you make the input truly B&W by specifying Greyscale(), then it doesn't really matter if you use -no-chrome-me or not, as there won't be any chroma information to estimate anyway.

Add Greyscale() to the very end of your script.

Dark Shikari
23rd March 2009, 17:41
If you make the input truly B&W by specifying Greyscale(), then it doesn't really matter if you use -no-chrome-me or not, as there won't be any chroma information to estimate anyway.But it'll probably save a small amount of encoding time.

unskinnyboy
23rd March 2009, 17:54
But it'll probably save a small amount of encoding time.Yes, it will, but small potatoes in the overall big picture. I was just keeping it simple as I figured the OP's question was more from a quality perspective than anything else.

Betsy25
23rd March 2009, 18:06
Thanks again for the help everyone.

If you make the input truly B&W by specifying Greyscale(), then it doesn't really matter if you use -no-chrome-me or not, as there won't be any chroma information to estimate anyway.

Add Greyscale() to the very end of your script.
Perhaps another stupid Q of me, but the input is B&W, the movie is B&W ? Any need for that GreyScale() then ?

..and indeed, I prefer quality above encoding speed :)

unskinnyboy
23rd March 2009, 18:30
Perhaps another stupid Q of me, but the input is B&W, the movie is B&W ? Any need for that GreyScale() then ?Usually, even if the movie is supposedly B&W, due to errors in the mastering process, the film can end up having some minute color information in the form of some rainbow/moiré patterns (sometimes this is detectable for us only when the frame is enlarged multiple-fold, but seen through the eyes of an encoder, it's there). What we are attempting to do via Greyscale() is to remove the information in the UV (chroma) planes completely, leaving behind only the information in the Y (luma) plane.

So, it's always recommended to use Greyscale() for B&W movies, even if the movie to be encoded does look perfectly B&W to you.

Betsy25
23rd March 2009, 18:45
Usually, even if the movie is supposedly B&W, due to errors in the mastering process, the film can end up having some minute color information in the form of some rainbow/moiré patterns (sometimes this is detectable for us only when the frame is enlarged multiple-fold, but seen through the eyes of an encoder, it's there). What we are attempting to do via Greyscale() is to remove the information in the UV (chroma) planes completely, leaving behind only the information in the Y (luma) plane.

So, it's always recommended to use Greyscale() for B&W movies, even if the movie to be encoded does look perfectly B&W to you.

Thank you very much unskinnyboy, in staxrip, I added Greyscale() below all others :


Source = MPEG2Source("%source_file%")
Crop = Crop(%crop_left%,%crop_top%,-%crop_right%,-%crop_bottom%)
Resize = LanczosResize(%target_width%,%target_height%)
Sharpen = LimitedSharpenFaster()
GreyScale = Grayscale()

qbukhari
23rd March 2009, 19:17
Dear Dark Shikari,

Kindly check your message box I have requested for a help about Mediacoder, (Sorry to interrupt guys)


tks
Bukhari.

MrCommunistGen
19th December 2009, 02:22
I just did a search to find out about B&W encoding and came across this thread. In case anyone else is wondering, I did a few informal tests of using grayscale() vs not, and then the difference between using grayscale both with and without Chroma ME. Using the built in "Medium" preset in MeGUI 3.1.1059 (zathor) and x264 1376 (Jeebs) and program --pass 2 --bitrate 950 --stats ".stats" --thread-input --deblock -2:-1 --bframes 5 --b-pyramid normal --ref 7 --aq-mode 2 --aq-strength 0.8 --no-chroma-me --me umh --subme 10 --partitions all --trellis 2 --psy-rd 0.900:0.300 --no-dct-decimate --no-fast-pskip --psnr --ssim --output "output" "input" on the first 2000 frames of a B&W DVD rip, I found that using grayscale() offers small increases to both PSNR and SSIM. I also found that disabling Chroma ME while using grayscale() gives a slight boost to encoding (3-6%) speed while providing identical PSNR/SSIM/bitrate.

-mcg