[Ffmpeg-cvslog] r7204 - trunk/libavcodec/motion_est_template.c

Loren Merritt lorenm
Tue Dec 5 00:54:16 CET 2006


On Sun, 3 Dec 2006, Michael Niedermayer wrote:
> On Sat, Dec 02, 2006 at 01:15:52PM -0700, Loren Merritt wrote:
>> On Sat, 2 Dec 2006, michael wrote:
>>
>>> Author: michael
>>> Date: Sat Dec  2 11:45:51 2006
>>> New Revision: 7204
>>>
>>> Modified:
>>>  trunk/libavcodec/motion_est_template.c
>>>
>>> Log:
>>> hexagon search
>>> 	dia_size=512 + hexagon size (513 is the normal one used in h264)
>>
>> x264's hexagon is radius 2, so based on that description I would expect it
>> to be dia_size=514. But I see from the code that size is doubled, so you
>> can't specify odd radius. (radius 1 is meaningless, it would be the same
>> as diamond. but radius 3 could be used.)
>
> yes but such a size 3 hexagon would be less efficient i think, as fewer
> points would overlap (all just guessing i didnt really look at this ...)

It differs in overlap only if the radius 3 search ends but the radius 2 
search goes on. And I don't know if it's bad in that case: the points that 
have been searched are known to be worse than current best, so it might 
make sense to try different points.

> also maybe we should rather reduce the size by a factor of 2 instead of -1
> each time it ends in a local minimum? actually this was what i wanted to
> implement seems i implemented something else ;)

They differ only for radius >= 8, which doesn't sound too useful. So imo 
it doesn't matter.

--Loren Merritt




More information about the ffmpeg-cvslog mailing list