[Ffmpeg-devel] qprd and frames being stuck at high quants

Michael Niedermayer michaelni
Thu Nov 2 23:14:47 CET 2006


Hi

On Thu, Nov 02, 2006 at 01:48:22PM -0800, Corey Hickey wrote:
> Michael Niedermayer wrote:
> >>>there where some bugreports aout $subj a long time ago, but all the
> >>>sample videos seem to have dissapeared, if that bug is still happening
> >>>for anyone, then please upload a sample source file which causes it
> >>>(with command line options ...)
> >>No problem with high quantizers so far, but I did find a possible small 
> >>usability bug. When encoding with vqmin=1:lmin=1, qprd appears to be 
> >>nearly preventing the use of quantizer=1. At very high requested 
> >>bitrate, this makes the output bitrate and PSNR much lower.
> >>
> >>--------------------- without qprd -------------------
> >>for i in 1:turbo 2 ; do
> >>  mencoder matrix.vob -nosound -vf crop=718:356:0:60,scale=640:272 \
> >>  -ovc lavc -lavcopts \
> >>  vcodec=mpeg4:vbitrate=16000:psnr:mbd=2:vqmin=1:lmin=1:vpass=$i \
> >>  -ofps 24000/1001 -o test.avi -frames 2400
> >>done
> >>
> >>Video stream: 7794.736 kbit/s
> >>PSNR: Y:49.91, Cb:50.19, Cr:50.72, All:50.08
> >>
> >>---------------------- with qprd ---------------------
> >>(same as above, but adding qprd to lavcopts)
> >>
> >>Video stream: 3914.993 kbit/s
> >>PSNR: Y:45.18, Cb:46.26, Cr:45.81, All:45.44
> >>
> >>
> >>When I play the output video with -lavdopts debug=1, the lowest 
> >>frame-level quantizer I see is 2. If I use debug=16, I see three blocks 
> >>with a quantizer of 1, out of the entire video.
> >>
> >>I can upload a sample video if you need, but I think it's reproducible 
> >>with any source.
> >>
> >>
> >>I know this is a rather minor issue, since encoding at such high 
> >>bitrates is rare, but I still thought it worth pointing out.
> >
> >retry with mblmin=lmin
> >
> >QP_RD activates adaptive quantization, which uses mblmin/max
> 
> Do you mean mbqmin? 

no


> mblmin doesn't seem to exist, though I haven't 
> looked at the source yet.

libavcodec/utils.c:{"mblmin", "min macroblock quantizer scale (VBR)", OFFSET(mb_lmin), FF_OPT_TYPE_INT, FF_QP2LAMBDA * 2, 1, FF_LAMBDA_MAX, V|E},

and the help text is wrong of course ...

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

In the past you could go to a library and read, borrow or copy any book
Today you'd get arrested for mere telling someone where the library is




More information about the ffmpeg-devel mailing list