[FFmpeg-devel] vp8: decoder rewrite, spec cleanup

David Conrad lessen42
Fri May 28 21:21:03 CEST 2010

On May 28, 2010, at 1:47 PM, John Koleszar wrote:

> (cross post, please keep codec-devel at webmproject.org on cc)
> Hi,
> I know that there are people out there who have started rewriting the
> vp8 decoder and others that are looking at the spec, and I wanted to
> start thinking about how we could work together. We know both the spec
> and the decoder need significant refactoring and rewriting. I also
> know that the best way to get the spec into shape is to do a fresh
> implementation. So here are my thoughts:
> I want to get as much energy going on this upstream as possible. We're
> going to be actively working on the decoder, and I'd love to see other
> people get involved. Certainly some people will do private rewrites,
> and having a second independent implementation is a good thing. Even
> if you choose not to work with us on the code, please consider working
> with us on the spec. Having a proper spec for this codec would help
> everyone. It's going to be in our git repository RSN (Monday?) and
> patches are certainly welcome. Or even just discussion on what's
> lacking specifically -- just share your thoughts in some form while
> they're fresh in your mind.

As one of the people writing an independent decoder for FFmpeg, some specific problems I've had with the spec in no particular order:

- the refresh_entropy_probs bit is not mentioned in the spec
- the functions in quant_common.c are not in the spec
- it's not clear what pixels 4x4 intra pred modes should use for the top right edge for blocks on the right of the frame
- it's not clear where the 3 byte coeff partition sizes are and exactly how to set up coeff decode
- it's not clear that chapter 10-12 are stored in the first/header data partition
- chapter 13.3 really needs psuedocode in addition to paragraphs. But not the manually inlined and unrolled detokenize.c.
- SignedLit does not appear to be used anywhere, and the places that read a signed number do so with the sign after the rest of the bits

I'll remember to jot down anything else I think needs fixing.

More information about the ffmpeg-devel mailing list