[XviD-devel] dynamic hpel/qpel decision

Radek Czyz xvid-devel@xvid.org
Mon, 2 Dec 2002 21:40:36 +1030


Hello everyone,

I noticed this point in out todo list:
>> * decision criteria if qpel or "normal" halfpel vectors should be used
and decided to have some fun and play with it. I'm on a very good way
to have it done - I currently use edge detection to check if encoded
picture is crisp or smooth, and decide on those basis. As I'm doing it
during P/B/I decision, other data - such as high/low motion info - are
also available to me.
Currently, my 'dynamic qpel' encodings have the size of halfpel (at
fixed quant) but crispness of qpel where the crispness is visible. And
also the smootheness of hpel in high motion (but the last not perfect
yet). Not bad, is it?

However, there is one issue which must be resolved.
Quoting our todo list:
>> * VOL support only at I_VOP??. (interlacing,gmc,qpel,etc.)
as changing qpel/hpel requires a VOL header.

What are we going to do? If you asked me, I'd tell you that we can
safely write a VOL header before a P-VOP, simply because all decoders
decode it and there is no difficulties for future decoders to decode
it.
However, the question must be answered....

Any comments?
Radek

PS does someone feel like writing an asm-ed Sobel edge detection? It's
not slow the way it is (copied from RefDivX's adaptive quantization
code) but can always be faster.