So, x264 is still the most popular (free) H.264 encoder out there. But it is also still considered ridiculously cryptic as well. There are tons of switches and options in the encoder that allow you to create tiny files that capture an impressive amount of quality.

I have looked over the ffmpeg wiki, the VLC wiki pages for x264 and the very academically written PDF, but there's no realistically easy quick reference guide for x264 that I've seen that lets people understand, for instance, why when you unparse the encoder options for the x264 -tune option set to "none" is

x264 Unparse: level=4.0:ref=1:8x8dct=0:weightp=1:subme=2:mixed-refs=0:trellis=0:vbv-bufsize=25000:vbv-maxrate=20000:rc-lookahead=10

but the unparsed x264 -tune option "film" is

x264 Unparse: level=4.0:ref=1:deblock=-1,-1:8x8dct=0:weightp=1:subme=2:mixed-refs=0:trellis=0:psy-rd=1.00,0.15:vbv-bufsize=25000:vbv-maxrate=20000:rc-lookahead=10

And I know that the secret (as it were) to getting great quality is using constant rate factor (CRF), I'm still interested in knowing how best to tweak these esoteric options if it makes sense.

Here are some example situations:

  • A live-action video, fast cuts throughout, but shot at 24 fps.
  • An CG animated video, longer cuts, rendered at 30 fps

Using the same generic settings in x264 would provide two different outcomes, obviously. But what options outside of -tune would you turn to for being able to effectively set x264 on the task for the best possible outcome?

  • 1
    The idea of the 'tune' and 'preset' parameters is to save the user from having to know and tweak the individual parameters. If you wish to customize it further, I'd suggest reading up the entries for each individual parameter and experimenting. You can also browse threads at VideoHelp and Doom9 for discussions related to x264..
    – Gyan
    Sep 27, 2015 at 5:29


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.