[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