[XviD-devel] [CVS commits] decoder speedups and fixed cbr
Edouard Gomez
ed.gomez at free.fr
Wed Aug 11 00:49:36 CEST 2004
heyhey
commited a few things sitting on my HD for long time (decoder
speedups from my tree) and Foxer's patch to CBR plugin that
should really fix all known oddities (doesn't reach bitrate
with bvops, bitrate bursts after still scene etc etc)
So feedback is welcome for:
- decoding speed between 1.0.1 and HEAD CVS. Here i have an
average 25% better performance, how is it doing on your
box?
- test CBR/ABR coding, just to make sure Foxer (and I, his
tester) didn't miss something important.
PS: now the wpel code path is unified, PPC users will see a
speed drop because PPC uses a C code path. Don't worry,
Christoph naegeli is working on porting the required
functions, but he's kinda busy with real life stuff, so if you
have gcc PPC intrinsics knowledge, i'm sure he'll appreciate
some help from you !
------------------8<---------------------------------------
2004-08-10 22:30:09 GMT patch-69
Summary:
Fixed CBR plugin.
Revision:
xvidcore--head--0.0--patch-69
From Foxer:
* Do not set the return quantizer to the frame's quantizer
(caused the crazy quant choices)
* Allow quant1 to influence the sequence quality
* Allow more than +- 1 quantizer variation if the desired
quantizer is much higher than the previous.
* Clamp the overflow influence to 1 unit of buffer, that
should help cases where still motion scenes are followed
by normal motion scenes... old code was reaching amazing
high bitrate, with this modification it should keep
smaller bitrate.
modified files:
src/plugins/plugin_single.c
2004-08-01 15:23:49 GMT patch-68
Summary:
error in dshow par array indexing
Revision:
xvidcore--head--0.0--patch-68
error in dshow par array indexing
modified files:
dshow/src/CXvidDecoder.cpp
2004-08-01 13:38:36 GMT patch-67
Summary:
Faster bframe decoding (qpel this time)
Revision:
xvidcore--head--0.0--patch-67
From ed.gomez:
* Used the same trick as for halfpel bvops, merge backward
interpolation and dst averaging steps.
NB: i'm currently not able to say if it's a real speedup or not
because my linux kernel uses a process scheduler gives great
variance to results... so far i'm sure this isn't a slowdown
neither for C nor ia32 SIMD.
modified files:
src/decoder.c src/image/qpel.c src/image/qpel.h
2004-08-01 11:24:07 GMT patch-66
Summary:
Unified qpel code path for all platforms
Revision:
xvidcore--head--0.0--patch-66
From ed.gomez and skal:
* Unified qpel code path for all platforms. Next step is
to fully exploit this code path to speedup qpel bframe
decoding
NB: this makes also ports life easier as they would not port
obsoleted function sets...
modified files:
src/decoder.c src/image/interpolate8x8.h src/image/qpel.c
src/image/qpel.h src/motion/motion_comp.c
2004-07-31 15:08:19 GMT patch-65
Summary:
Faster bframe decoding.
Revision:
xvidcore--head--0.0--patch-65
From ed.gomez and skal:
* Faster direct/interpolated bvop blocks decoding for halfpel
sequences. The trick is to compute and average directly with
destination during one of the forward/backward interpolations.
At this moment, this patch covers only halfpel decoding, the
same trick is expected to be hacked for qpel.
modified files:
src/decoder.c src/image/interpolate8x8.c
src/image/interpolate8x8.h
src/image/x86_asm/interpolate8x8_mmx.asm
src/image/x86_asm/interpolate8x8_xmm.asm src/xvid.c
------------------8<---------------------------------------
--
Edouard Gomez
More information about the XviD-devel
mailing list