[MPlayer-users] Re: Constant Visual Quality

D Richard Felker III dalias at aerifal.cx
Thu Dec 12 03:35:02 CET 2002


On Thu, Dec 12, 2002 at 02:06:17AM +0100, Rémi Guyomarch wrote:
> [Automatic answer: RTFM (read DOCS, FAQ), also read DOCS/bugreports.html]
> On Wed, Dec 11, 2002 at 02:23:49AM -0600, Angel wrote:
> > [Automatic answer: RTFM (read DOCS, FAQ), also read DOCS/bugreports.html]
> > Hi All,
> > 	I have a question regarding encoding movies with the lavc
> > mpeg4 codec. I know you can specify a constant quantizer when
> > encoding a movie... but that does not necessarily result in a
> > constant visual quality in the encoded movie.  Basically what I want
> > to be able to do is specify a given visual level of quality and have
> > the encoder maintain that quality level using a variable bit rate /
> > variable quantizer. I could just specify a quantizer level of 2 (or
> > 1 even) and get the best possible quality encoding but I don't want
> > to waste space encoding scenes with more bits then are necessary to
> > achieve the quality level I want.
> 
> The problem is how to define "visual quality". There isn't any magic
> formula which tell you "this part has a visual quality of 37.12 and
> this one has a VQ of 29.10". The best approximation we have right now
> is the value "quantizer" and the associated algorithm.
> 
> No one yet has modelized (sp?) the humain eyes and brain.
> 
> If you want a non-integer average quantizer (eg 2.27), you can play
> with B frames and options vmax_b_frames, vb_qfactor, vb_qoffset,
> vi_qfactor and vi_qoffset (and read DOCS/tech/libavc-options.txt). You
> can try tcplx_mask and naq too.

Yeah. Turning up scplx_mask, tcplx_mask, dark_mask, and lumi_mask,
then using constant naq and vqscale=N (where N is somewhere between 3
and 5) would probably produce very good results. Another way to
achieve "constant quality" is with vqcomp=1 and a specified bitrate,
although you probably need to do a two-pass code for it to come out
great... Personally I like the adaptive quantization method; I think
I'll try that and see how it works out.

Rich




More information about the MPlayer-users mailing list