[VDPAU] [PATCH] Add support for H.264 Hi444PP in VDPAU API - update 2
Christian König
christian.koenig at amd.com
Fri Dec 12 02:15:36 PST 2014
LGTM as well. Patch is Reviewed-by: Christian König
<christian.koenig at amd.com>
What are your plans for other H264 features? Like higher bit depths,
SVC, MVC, etc...?
Regards,
Christian.
Am 11.12.2014 um 22:09 schrieb ksreenivasan at nvidia.com:
> From: Karthikeyan Sreenivasan <ksreenivasan at nvidia.com>
>
> The current patch adds a new struct VdpPictureInfoH264Predictive which
> contains the necessary fields to support High 444 Predictive Profile.
>
> The patch adds VDP_DECODER_PROFILE_H264_HIGH_444_PREDICTIVE (currently
> only with 8 bit depth support). Additional profiles and levels will
> be added in a future update.
>
> Videos of VDP_DECODER_PROFILE_H264_HIGH_444_PREDICTIVE profile must use
> VdpPictureInfoH264Predictive.
>
> This patch adds lossless decode support to VDPAU API via the
> qpprimey_zero_transform_bypass_flag in struct
> VdpPictureInfoH264Predictive.
>
> vdpau | nvpublic
> ---
> include/vdpau/vdpau.h | 35 +++++++++++++++++++++++++++++++++++
> 1 file changed, 35 insertions(+)
>
> diff --git a/include/vdpau/vdpau.h b/include/vdpau/vdpau.h
> index 41bdf2d..266c1e4 100644
> --- a/include/vdpau/vdpau.h
> +++ b/include/vdpau/vdpau.h
> @@ -2460,6 +2460,9 @@ typedef uint32_t VdpDecoderProfile;
> #define VDP_DECODER_PROFILE_H264_PROGRESSIVE_HIGH ((VdpDecoderProfile)24)
> /** \hideinitializer */
> #define VDP_DECODER_PROFILE_H264_CONSTRAINED_HIGH ((VdpDecoderProfile)25)
> +/** \hideinitializer */
> +/** \brief Support for 8 bit depth only */
> +#define VDP_DECODER_PROFILE_H264_HIGH_444_PREDICTIVE ((VdpDecoderProfile)26)
>
> /** \hideinitializer */
> #define VDP_DECODER_LEVEL_MPEG1_NA 0
> @@ -2779,6 +2782,11 @@ typedef struct {
> * Note: References to "copy of bitstream field" in the field descriptions
> * 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 VdpPictureInfoH264Predictive to describe the
> + * attributes of a frame being decoded with
> + * VDP_DECODER_PROFILE_H264_HIGH_444_PREDICTIVE.
> +
> */
> typedef struct {
> /** Number of slices in the bitstream provided. */
> @@ -2847,6 +2855,33 @@ typedef struct {
> } VdpPictureInfoH264;
>
> /**
> + * \brief Picture parameter information for an H.264 Hi444PP picture.
> + *
> + * Note: VDPAU clients must use VdpPictureInfoH264Predictive to describe the
> + * attributes of a frame being decoded with
> + * VDP_DECODER_PROFILE_H264_HIGH_444_PREDICTIVE.
> + *
> + * Note: software drivers may choose to honor values of
> + * qpprime_y_zero_transform_bypass_flag greater than 1 for internal use.
> + */
> +typedef struct {
> + /** \ref VdpPictureInfoH264 struct. */
> + VdpPictureInfoH264 pictureInfo;
> + /** Copy of the H.264 bitstream field.
> + *
> + * 0 - lossless disabled
> + * 1 - lossless enabled
> + */
> + uint8_t qpprime_y_zero_transform_bypass_flag;
> + /** Copy of the H.264 bitstream field.
> + * 0 - disabled
> + * 1 - enabled
> + */
> + uint8_t separate_colour_plane_flag;
> +
> +} VdpPictureInfoH264Predictive;
> +
> +/**
> * \brief Picture parameter information for a VC1 picture.
> *
> * Note: References to "copy of bitstream field" in the field descriptions
More information about the VDPAU
mailing list