[XviD-devel] direct mode predictor error

Christoph Lampert xvid-devel@xvid.org
Mon, 9 Sep 2002 15:08:06 +0200 (CEST)


On Mon, 9 Sep 2002, Radoslaw Czyz wrote:

> Hello,
> 
> > the direct-mode motion search performs a +/-16 pixel search arround
> > the reference block location. this is incorrect, and causes purple
> > (offscreen) artifacts arround the edge of the image when the motion
> > search is FORCED to alway use direct-mode.
> 
> Christoph and I recently found that direct vector of 0,0 might be out
> of range. As the search is done with 0,0 as a starting point, this is
> what happens: we set it to 0,0 and do a SAD out of picture's range.
> Then we start a diamond which won't do anything, because all four (or
> 8 if it's a square?) checks will not be performed, as being out of
> range.
> As a result, you only have an out-of-range 0,0 vector.

Oops, you're right, sorry Pete. I forgot there is another check 
with scaled MV and delta=(0,0) in the beginning, before get_range is
called. This would have to be changed, of course, but it's not big deal
since sysKin's ME will because default any minute anyway.

gruel