[VDPAU] VP8 support in the VDPAU interface

Aaron Plattner aplattner at nvidia.com
Tue Apr 24 13:01:17 PDT 2012


Sorry for the slow reply.

On 02/29/2012 01:46 PM, Emeric Grange wrote:
> I have been using this implementation to develop and test the mesa decoder.
> The flaws of this simple method are that some fields like "color_space" or
> "clamping_type" could be used by the decoder.
> As Aaron said the calling application still needs to parse out the
> refresh_golden_frame, refresh_alternate_frame and refresh_last_frame. This is
> bad news because these fields are binary arithmetic encoded, there positions
> cannot be guessed, and so every fields preceding them must be decoded too. That
> also mean that the calling application must implement a VP8 "boolean decoder".

Yeah, that's pretty lame. If I'm reading it right, the caller just needs to keep
track of the arithmetic decoder state for the first partition, and can pass the
other partitions as-is into the library.

The question is whether it's better to pass the entire compressed first
partition in too, or have the caller decompress the whole thing first, or some
hybrid approach.

> - The first patch (https://github.com/emericg/libvdpau-vp8/commit/f7e3e25cadace8b5dff2f4ee9870f7e86faf30d8)

This is the "pass in all the partitions" approach, right?  When it says "Include
all frames," do you mean all compressed partitions in the frame?

Stephen, does this new interface look like it makes sense?  It's just the parsed 
uncompressed header plus reference frame handles, and then leaves parsing 
everything else up to the decoder.

-- Aaron


More information about the VDPAU mailing list