[XviD-devel] log: dev-api-4 changes

Radek Czyz radoslaw at syskin.cjb.net
Sun Mar 23 01:01:37 CET 2003


>> motion_comp.c - while compensating bframes, it reconstructs the
>>               image for internal decoding. Also several cleanups, and
>>               our codingstyle applied to some GMC stuff

> Can you explain that? Why are bframes reconstructed? They won't be used
> again... or it this just a flag e.g. for PSNR calculation?

Ok, this is a bit complicated... Long explanation:

When BITS appeared, it needed a function similar to transfer8to16sub()
to create 16-bit difference between 2 blocks, but it definitely
could not copy one picture over the second picture, like
transfer8to16sub() does. Pete was kind enough to create
transfer8to16sub_ro() (ro - read only) which did just that.

When it appeard, I used this _ro function for MC-ing forward and
backward mode in bframes. Theory says that it should be faster, but I
couldn't measure any difference. Oh well, I just left _ro.

Now, in dev-api-4, we have a flag which forces us to reconstruct
bframes, for PSNR and other plugins. I soon discovered that passing
the flag to MC and selecting appropriate function was long, ugly and
pretty pointless. It is better not to use _ro there at all. So I
removed _ro again.

Tests show the same speed. Code is shorter. Everyone is happy :)

Radek



More information about the XviD-devel mailing list