[Ffmpeg-devel] VP3/Theora Perfection

Mike Melanson mike
Mon May 16 15:30:41 CEST 2005

Diego Biurrun wrote:
> What samples are you using to test?  Your last commit fixed vp31.avi and
> all the other samples on mphq decode flawlessly now, albeit the FFmpeg
> decoder takes 2-3 times the CPU of the binary decoder.

	Not surprising. The loop filter is quite computationally intensive 
(32-64 new multiplications per coded fragment). The original On2 source 
has MMX and SSE2 optimizations that I can port over when I am confident 
that the C-based loop filter works.

	Can MPlayer take advantage of slice dispatch for binary decoders (and 
does it do so for the VP3 decoder)? If so, that can obviously improve 
performance. lavc's VP3 decoder has never used slice dispatch up to this 
point. I am not sure how to apply it with the new loop filter. I suppose 
slice (n) can be dispatched after slice (n+1) has been decoded and the 
loop filter has been applied to slice (n) (slice (n) needs data from 
slice (n+1) for the loop filter).

> The vp30-logo.avi sample just shows random colored blocks but decodes
> fine with the DLL.

	vp30-logo.avi is VP30, not VP31. They are incompatible and no one at 
On2 will give us any advice on decoding them. But since we only have 
that one sample, big deal. I suspect that it uses a different set of 
Huffman tables.

	-Mike Melanson

More information about the ffmpeg-devel mailing list