[FFmpeg-devel] MPEG-2 encoder question

Jonathan Campbell jonathan at castus.tv
Tue Jan 3 21:09:44 CET 2012


I'm looking at libavcodec/mpegvideo_enc.c and encode_thread(). It uses 
s->qscale for the entire set of macroblock rows assigned to it 
(start_mb_y to end_mb_y), which means that it uses the same fixed 
quantization for the /entire frame/.

Couldn't we improve the encoder by dynamically changing the qscale per 
macroblock row, or even mid-row? I know for a fact the MPEG-1/2 video 
standard has macroblock codes to allow for it, so why is FFMPEG not 
taking advantage of it?

Anyone else here worked on this? I'm willing to patch mpegvideo_enc.c to 
do this and submit upstream to make FFMPEG a better MPEG-2 encoder.


More information about the ffmpeg-devel mailing list