[MPlayer-users] mencoder: effective use of qp, crf params for x264?

Guillaume POIRIER poirierg at gmail.com
Mon Jan 29 17:08:59 CET 2007


Hi,

On 1/29/07, matthew.garman at gmail.com <matthew.garman at gmail.com> wrote:
>
> I've got quite a collection of movies and TV episodes on DVD.  I'm
> currently in the process of ripping these to my computer to create a
> personal "video on demand" system.  (Side note: I own all the DVDs.)
>
> I'm currently in the process of trying to find my personal "best"
> level of quality vs. space in my encodings.  I've read this document
> multiple times:
>
>     http://www.mplayerhq.hu/DOCS/HTML/en/menc-feat-x264.html
>
> Since then, I've done some more reading, and come across some
> interesting information on doom9's forums, e.g.:
>
>     http://forum.doom9.org/archive/index.php/t-109493.html
>
> Such posts suggest that two-pass encoding may not be necessary with
> x264 (when using the crf param).  Likewise, the use of the qp
> parameter to -x264encopts is suggested.  The mplayerhq.hu link above
> doesn't even mention these parameters; the manpage is too terse for
> me to get a good appreciation of how these params should be used and
> how they interact with the other parameters.


You can think of crf as an option to select the average quality you
want, qp as a constant quality mode, and "two pass" as variable
quality mode.
The difference between all of them is as follows:

crf ensures that the average quality is like the one given in
parameter, so if certain areas of the scene would look better with a
low quantizer, and others wouln't look too worse with higher quants,
it will vary quants over a frame (possible over several frames, I
don't know the details).

qp quantifies all macroblocs of all frames with the same quantizer,
regardless of the scene complexity.

"two pass" will average the target bitrate distribution over the whole
encode, trying to make best use of bitrate, adapting to the complexity
and movement of the encoded scenes.

Here's what _I_ think:
- crf provides very good quality and allows to make do without 2 pass,
which is cool.
However, you can't control how big the encode will end up.
- two pass both allow you to control the target bitrate, and allows to
make a smarter use of the bits you throw at it. Each now pass somewhat
improves quality over the previous one.
- qp is really meant to be used if you know what you do, if you need
to us lossless mode, or if you really want to _force_ low quants.

My ranking (in decreasing order of quality):
2-pass>crf>qp

In terms of speed:
crf,qp>2-pass.

I hope what I'm saying makes sense to your (I hope it's also quite
accurate information. If it's not, I'm confident others will correct
me).
If it does help you, maybe this information should be somehow adapted
to be merged into the official doc.

Guillaume



More information about the MPlayer-users mailing list