[MPlayer-dev-eng] fast SPP

Nikolaj Poroshin porosh3 at psu.ru
Mon Mar 21 00:19:53 CET 2005


Hello,

Probably you remember my post about a way to speed up the SPP filter.
Now I want to add this code to the Mplayer project :)
However, during passed time, I've made some improvements: thresholding
now uses customizable matrix (1% slower against fixed), and some minor
speed improvements.
I've found out that normal threshold (as in the current Mplayer code,
normal dct->threshold->normal idct) has better quality against my
previous variant (aan dct w/o postscale->threshold->aan idct w/o
prescale), in terms of ringing artefacts. Now, customizable threshold
matrix allows for the same results, as current Mplayer code.
(aan dct w/o postscale->threshold[x][y]->aan idct w/o prescale).

So, first question - create a new filter or patch existing?
If new, then it means code duplication and probably some difficulties
(I don't fully understand things like mpi, etc).
If I patch existing, then it looses soft_threshold (softthresh_c)
ability (I guess, forever). But you can play with threshold matrix
coefficients instead. Also it looses non-mmx acceleration (ppc) (I
think, not forever). But I guess ppc acceleration gains not more than
4x speedup(?), and my implementation in the C variant is about 4 times
faster than current(also C). So, no real speed loss for ppc at first
time (and later, someone can optimize it for ppc). And also, my
implementation has only 4th and 5th processing levels, but I think
this doesn't matter much (4th level can work at 512x272 resolution,
25 fps at Celeron 633).

-- 
Best regards,
 Nikolaj                          mailto:nialpof at pisem.net




More information about the MPlayer-dev-eng mailing list