[XviD-devel] MBTransQuant2

daniel smith xvid-devel@xvid.org
Wed, 04 Sep 2002 15:57:18 +0800


> Btw. since you seem the interlace expert. XVID interlace is surely not
> complete, yet, is it? What is supposed to happen with ME etc. Can you
> explain what would have to be done for full interlace support?

it still needs field-based motion estimation:

for each field of a macroblock, search both top and bottom fields of reference frame.  if the result is good enough, send 2 mv's instead of 1 for each field, and indiciate for each of the mv's which field it actually references.

this changes the way mv's are predicted (if reference block is field-predicted, the predictor mv for that block is the rounded average of the two mv's), the way the mv is stored (half-resolution y component, but written to the bitstream differently from memory), u/v mv calculation (i believe it's just halved with rounding from the top/bottom vector), compensation (we need field-aware 16x8 and 8x4 transfer functions) and of course a 16x8 ME search.  also interpolation is done vertically between field lines instead of frame, but that's just a stride issue.  field-based ME for b-frames seems more complex.

it's been a while since i looked at field-based ME though, i'll check what i wrote down about it.  most of my trouble was trying to figure out how it was done in momusys, as it seemed to differ from vm18.

dan
-- 
_______________________________________________
Get your free email from http://www.astroboymail.com

Powered by Outblaze