[VDPAU] [PATCH] Enable Lossless Decode Capabilities via VDPAU API
Rémi Denis-Courmont
remi at remlab.net
Tue Nov 25 08:33:58 PST 2014
Hello,
Le 2014-11-25 18:21, Jose Soltren a écrit :
> 1. Name. Is there a preference for calling the new structure
> VdpPictureInfoH264Extended versus VdpPictureInfoH264Hi444PP ?
If I recall the previous discussion on the list, the new parameter can
be appended to the existing structure.
> 2. Versioning. Is there a preference to make this a versioned
> structure or not? Aaron Plattner expressed a preference for not
> making
> this versioned; I'll let him explain why here.
In practice, the decoder profile defines the type and layout of the
picture info structure. A version field does not seem to bring any added
value.
> 3. Containment. Should VdpPictureInfoH264Extended contain an entire
> VdpPictureInfoH264, or simply a pointer to one?
I would prefer the container approach over the pointer approach. Then
again, I would prefer extending the existing structure over the
container approach.
> 4. Flags. Are there any opinions on accepting values greater than 1
> for transform_bypass for internal use, or should we write these into
> the specification? NVIDIA video decoding hardware contains a mode to
> work around the recently-fixed ipred8x8 bug in x264; the NVIDIA
> driver
> would accept a value of 2 to enable that workaround.
I don't know. It depends if there is demand for legacy compatibility
with the x264 bug.
> 5. Scope. If this change really adds
> VDP_DECODER_PROFILE_H264_HIGH_444_PREDICTIVE, it will also need to
> add
> anything else related to Hi444PP, not just lossless decode. Namely it
> would need to introduce separate color plane coding, 4:4:4 chroma
> subsampling (a misnomer; not subsampling at all), and bit depths up
> to
> 14 bits per sample. If we choose to make VdpPictureInfoH264Extended
> versioned we can add those in a follow-on change. If not, we need to
> add those now.
4:4:4 surface chroma sampling is already defined by the API. Only high
depths are missing. So I think the patch is self-sufficient if it sticks
to 8-bits.
It would be nice to mention which surface format are supported for
PutBits/GetBits, if any... presumably NV12 and YV12, as YUYV and UYVY
would not make sense.
--
Rémi Denis-Courmont
More information about the VDPAU
mailing list