Log in

View Full Version : Improve quality and reduce file size for AVC encoding with Handbrake


Sven Bent
14th January 2014, 05:08
Im just seeking some quick advice on what to do next to increase quality in my encoding without increasing file size

Im using handbrake with with these setting on dvd material


ref=5:bframes=8:b-adapt=2:direct=auto:me=umh:subme=10:analyse=all:trellis=2 (http://s22.postimg.org/3md6gxkox/Untitled.png) <- Click for more info


ref frames and max b-frames are set so u know it can play it on my xbox and my phone without issues


im guessing increasing subme will give a bit batter quality or i could increse otion estimations but that seems to slow down the code tremendously.
is increasing motion range worth it on DVD material ?

hello_hello
16th January 2014, 03:17
I don't think there's a "covers every encode" answer. Slower settings can reduce the file size (for a given CRF value) but sometimes they can increase it.
I stick with the x264 speed presets and tunings myself. They're a "pre-configured" configuration of x264's advanced settings. Unfortunately Handbrake doesn't do it, but some encoder GUI's automatically change the appropriate x264 advanced settings in the encoder configuration when you change the x264 speed preset or tuning. MeGUI is a GUI which "behaves". If you make a note of x264's advanced settings and change the speed preset, then look at the advanced settings again, you'll see some of them have changed to reflect their new defaults.

The "medium" speed preset uses b-adapt 1, me=hex, subme=7, ref=3. The slow speed preset uses b-adapt 2, me=umh, subme=8, ref=5..... and so on. I pretty much always encode using one of those speed presets myself. If you set the Profile and Level your device supports (ie High Profile 4.1) then the encoder should ensure ref frames stay within that level, regardless of the speed preset used.

When encoding for a phone I'd probably reduce the resolution quite a bit. I seriously doubt it'd make much difference when viewing video on a 4" screen, but maybe that'd necessitate encoding everything twice.