[Ffmpeg-devel] qp offsets (i,b,p)

Rich Felker dalias
Tue May 17 18:29:37 CEST 2005


On Tue, May 17, 2005 at 04:03:08PM +0300, Tuukka Toivonen wrote:
> ffmpeg has options -b_qfactor, -i_qoffset, etc.
> They modify the QP (quantization parameter) value between different types 
> of frames. Obviously this sometimes help, or the arguments wouldn't be 
> there.
> 
> Now the actual question is, why?

B frames can look ok with higher qp, because the original predicted
frame is averaged from two frames with motion comp, rather than just
one.

As for I frames, they're very large, and if you want to keep bitrate
tightly constrained, you may want to use higher qp. Also, it's
probably ok to use slightly higher qp on I frames, since whatever
error you get from quantization will just be DCT noise (ringing), not
muddy crap from the motion estimation. In other words, error in the
DCT coefficients of the complete block is less annoying than error in
the DCT coefficients of the error residue after motion est.

> Or actually: is anyone aware of any research papers, webpages, books, or 
> anything (keywords for google, I found nothing useful), that would
> 1) explain why changing the QP helps
> 2) give algorithm for selecting QP offsets automatically

I'm sure there are papers but I don't know of any.

Rich





More information about the ffmpeg-devel mailing list