[VDPAU] [PATCH] Add support for H264 Hi444PP in VDPAU API

José Hiram Soltren jsoltren at nvidia.com
Tue Dec 9 09:27:50 PST 2014


This is a patch to a patch. It would be helpful to see this as a diff to the
current top-of-tree version of vdpau.h.

Also, as discussed in a separate thread,
s/residual_color_transform_flag/separate_colour_plane_flag/.

This looks promising.

--José

On 12/08/2014 08:54 PM, Karthikeyan Sreenivasan wrote:
> The current patch adds to the previous [VDPAU][PATCH] Enable Lossless
> Decode Capabilities via VDPAU API. It contains the following changes,
> 
> 1. Rename VdpPictureInfoH264Extended to VdpPictureInfoH264Predictive.
> 2. Remove version information from VdpPictureInfoH264Predictive.
> 3. Pointer to VdpPictureInfoH264 has been replaced with the entire
> VdpPictureInfoH264 struct.
> 4. Addition of new flag residual_color_transform_flag to enable/disable
> separate color plane coding.
> 
> --
> 
> diff --git a/include/vdpau/vdpau.h b/include/vdpau/vdpau.h
> index daf3f06..bb7e85a 100644
> --- a/include/vdpau/vdpau.h
> +++ b/include/vdpau/vdpau.h
> @@ -2768,7 +2768,7 @@ typedef struct {
>   * may refer to data literally parsed from the bitstream, or derived from
>   * the bitstream using a mechanism described in the specification.
>   *
> - * Note: VDPAU clients must use VdpPictureInfoH264Extended to describe the
> + * Note: VDPAU clients must use VdpPictureInfoH264Predictive to
> describe the
>   * attributes of a frame being decoded with
>   * VDP_DECODER_PROFILE_H264_HIGH_444_PREDICTIVE.
> 
> @@ -2839,34 +2839,32 @@ typedef struct {
>      VdpReferenceFrameH264 referenceFrames[16];
>  } VdpPictureInfoH264;
> 
> -#define VDP_H264_EXTENDED_VERSION 0
> -
>  /**
> - * \brief Picture parameter information for an extended H.264 picture.
> + * \brief Picture parameter information for an  H.264 Hi444PP picture.
>   *
> - * Note: VDPAU clients must use VdpPictureInfoH264Extended to describe the
> + * Note: VDPAU clients must use VdpPictureInfoH264Predictive to
> describe the
>   * attributes of a frame being decoded with
>   * VDP_DECODER_PROFILE_H264_HIGH_444_PREDICTIVE.
>   *
> - * Note: The transform_bypass field is only valid with
> - * VDP_DECODER_PROFILE_H264_HIGH_444_PREDICTIVE and above.
> - *
>   * Note: software drivers may choose to honor values of
>   * transform_bypass greater than 1 for internal use.
>   */
>  typedef struct {
> -    /** This field must be filled with VDP_H264_EXTENDED_VERSION. */
> -    uint32_t struct_version;
>      /** \ref VdpPictureInfoH264 struct. */
> -    VdpPictureInfoH264 *pictureInfo;
> +    VdpPictureInfoH264 pictureInfo;
>      /** Copy of the H.264 bitstream field.
>       *
>       *  0 - lossless disabled
>       *  1 - lossless enabled
>       */
>      uint8_t transform_bypass;
> +    /** Separate color plane coding.
> +     *  0 - disabled
> +     *  1 - enabled
> +     */
> +    uint8_t residual_color_transform_flag;
> 
> -} VdpPictureInfoH264Extended;
> +} VdpPictureInfoH264Predictive;
> 
>  /**
>   * \brief Picture parameter information for a VC1 picture.
> 


More information about the VDPAU mailing list