• José Hiram Soltren's avatar
    Extend the VDPAU API to support H.265/HEVC Decoding · c199b610
    José Hiram Soltren authored
    This patch adds an API for player applications to utilize VDPAU for
    hardware-accelerated playback of H.265/HEVC streams.
    
    The goals of this API are:
    - enable hardware accelerated decoding of H.265/HEVC content under VDPAU;
    - provide a reference implementation for H.265/HEVC hardware decoding that
      is vendor agnostic;
    - provide enough data for H.265/HEVC hardware acceleration implementations
      from multiple vendors to be able to use the same API;
    
    This patch is written against "version one" of the H.265/HEVC Specification,
    Rec. ITU-T H.265 (04/2013), available at:
    
        http://handle.itu.int/11.1002/1000/12296
    
    
    
    A future patch against this header may address bug fixes, and may support
    the new features described in "version two" of the H.265/HEVC Specification,
    Rec. ITU-T H.265 v2 (10/2014).
    
    Note that the API does need to be self documenting with Doxygen markup,
    which we (NVIDIA) will generate and post as an update to our public VDPAU
    documentation.
    
    This is version 8 of the patch.
    
    Version 1 was the original version.
    
    Version 2 was a minor cleanup change.
    
    Version 3 incorporated 10- and 12-bit formats.
    
    Version 4 clarified some documentation related to H.265/HEVC support.
    
    Version 5 clarified some documentation related to H.265/HEVC support
    and correcting the Specification URI above.
    
    Version 6 further corrected the Specification URI above, re-ordered the
    fields in VdpPictureInfoHEVC to agree with the Specification, and added
    additional documentation for some fields. It also corrected some cosmetic
    indentation errors.
    
    Version 7 removed the sps_sub_layer_ordering_info_present_flag, added a
    note on implementing clauses 8.3 through 8.7, clarified the meaning of
    sps_max_dec_pic_buffering_minus1, moved the scaling lists to follow
    scaling_list_enabled_flag, clarified comments on pps_beta_offset_div2
    and pps_tc_offset_div2, and added "Ignored otherwise." or "Invalid
    values are ignored" comments to several fields.
    
    Version 8 truncated a number of fields related to reference pictures to
    8 bit types, e.g. uint8_t.
    Signed-off-by: default avatarAaron Plattner <aplattner@nvidia.com>
    Reviewed-by: default avatarAaron Plattner <aplattner@nvidia.com>
    Acked-by: default avatarChristian König <christian.koenig@amd.com>
    c199b610
vdpau.h 178 KB