[MPlayer-DOCS] incomprehensibility in encoding guide

Corey Hickey bugfood-ml at fatooh.org
Wed Jan 3 21:08:51 CET 2007


Guillaume POIRIER wrote:
> Hi,
> 
> On 1/3/07, Andrew Savchenko <Bircoph at list.ru> wrote:
>> Hi, all!
>>
>> I've mentioned some confusing example into encoding guide, in
>> chapter "Encoding with the libavcodec codec family" in the
>> "Examples" section:
>> *****
>> mencoder dvd://1 -ofps 24000/1001 -oac copy -o Harry_Potter_2.avi
>> -ovc lavc -lavcopts
>> vcodec=mpeg4:vbitrate=2400:v4mv:mbd=2:trell:cmp=3:subcmp=3:mbcmp=3:autoaspect:vpass=1 
>>
>> -vf pullup,softskip,crop=720:352:0:62,hqdn3d=2:1:2
>> *****
>>
>> As you can see, mbd=2 and mbcmp=3 are used together, but according
>> to the manual:
>> *****
>> mbcmp=<0-2000>
>> Sets the comparison function for the macroblock decision, only
>> used if mbd=0.
>> *****
>> So, mbcmp option seems to be useless into this and the following
>> (in the guide) example. Am I right?
> 
> Assuming that the doc is correct (maybe Loren can confirm this), then
> yes, I think mbcmp should be dropped.

This sounds familiar. Take a look here:
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2003-October/029913.html

As far as I can tell from the code and a couple quick tests, the 
situation with mbd and mbcmp is still the same: when all other *cmp 
options are 0 (the default), making mbcmp nonzero will have a beneficial 
effect on quality regardless of what mbd is set to. When mbd is set to 1 
or 2, the specific value of mbcmp is ignored, except to check whether it 
is nonzero. When mbd is 0, the specific value of mbcmp matters.

In Andrew's example from the docs, though, mbcmp indeed has no effect, 
since cmp and subcmp are both nonzero.

> mbd=0 + mbcmp=xx yields AFAIR
> worse quality than mbd=2

To this part, specifically: yes.

-Corey



More information about the MPlayer-DOCS mailing list