1// Copyright 2018-2024 The Khronos Group Inc. 2// 3// SPDX-License-Identifier: CC-BY-4.0 4 5include::{generated}/meta/{refprefix}VK_KHR_video_decode_h264.adoc[] 6 7=== Other Extension Metadata 8 9*Last Modified Date*:: 10 2023-12-05 11*IP Status*:: 12 No known IP claims. 13*Contributors*:: 14 - Ahmed Abdelkhalek, AMD 15 - Chunbo Chen, Intel 16 - HoHin Lau, AMD 17 - Jake Beju, AMD 18 - Peter Fang, AMD 19 - Ping Liu, Intel 20 - Srinath Kumarapuram, NVIDIA 21 - Tony Zlatinski, NVIDIA 22 - Daniel Rakos, RasterGrid 23 24=== Description 25 26This extension builds upon the `apiext:VK_KHR_video_decode_queue` extension 27by adding support for decoding elementary video stream sequences compliant 28with the H.264/AVC video compression standard. 29 30[NOTE] 31.Note 32==== 33This extension was promoted to `KHR` from the provisional extension 34`VK_EXT_video_decode_h264`. 35==== 36 37include::{generated}/interfaces/VK_KHR_video_decode_h264.adoc[] 38 39=== Version History 40 41 * Revision 1, 2018-6-11 (Peter Fang) 42 ** Initial draft 43 * Revision 2, March 29 2021 (Tony Zlatinski) 44 ** Spec and API Updates 45 * Revision 3, August 1 2021 (Srinath Kumarapuram) 46 ** Rename `VkVideoDecodeH264FieldLayoutFlagsEXT` to 47 `VkVideoDecodeH264PictureLayoutFlagsEXT`, 48 `VkVideoDecodeH264FieldLayoutFlagBitsEXT` to 49 `VkVideoDecodeH264PictureLayoutFlagBitsEXT` (along with the names of 50 enumerants it defines), and `VkVideoDecodeH264ProfileEXT.fieldLayout` 51 to `VkVideoDecodeH264ProfileEXT.pictureLayout`, following Vulkan naming 52 conventions. 53 * Revision 4, 2022-03-16 (Ahmed Abdelkhalek) 54 ** Relocate Std header version reporting/requesting from this extension to 55 VK_KHR_video_queue extension. 56 ** Remove the now empty VkVideoDecodeH264SessionCreateInfoEXT. 57 * Revision 5, 2022-03-31 (Ahmed Abdelkhalek) 58 ** Use type StdVideoH264Level for VkVideoDecodeH264Capabilities.maxLevel 59 * Revision 6, 2022-08-09 (Daniel Rakos) 60 ** Rename `VkVideoDecodeH264ProfileEXT` to 61 `VkVideoDecodeH264ProfileInfoEXT` 62 ** Rename `VkVideoDecodeH264MvcEXT` to `VkVideoDecodeH264MvcInfoEXT` 63 * Revision 7, 2022-09-18 (Daniel Rakos) 64 ** Change type of `VkVideoDecodeH264ProfileInfoEXT::pictureLayout` to 65 `VkVideoDecodeH264PictureLayoutFlagBitsEXT` 66 ** Remove MVC support and related `VkVideoDecodeH264MvcInfoEXT` structure 67 ** Rename `spsStdCount`, `pSpsStd`, `ppsStdCount`, and `pPpsStd` to 68 `stdSPSCount`, `pStdSPSs`, `stdPPSCount`, and `pStdPPSs`, respectively, 69 in `VkVideoDecodeH264SessionParametersAddInfoEXT` 70 ** Rename `maxSpsStdCount` and `maxPpsStdCount` to `maxStdSPSCount` and 71 `maxStdPPSCount`, respectively, in 72 `VkVideoDecodeH264SessionParametersCreateInfoEXT` 73 ** Rename `slicesCount` and `pSlicesDataOffsets` to `sliceCount` and 74 `pSliceOffsets`, respectively, in `VkVideoDecodeH264PictureInfoEXT` 75 * Revision 8, 2022-09-29 (Daniel Rakos) 76 ** Change extension from `EXT` to `KHR` 77 ** Extension is no longer provisional 78 * Revision 9, 2023-12-05 (Daniel Rakos) 79 ** Condition reference picture setup based on the value of 80 `StdVideoDecodeH264PictureInfo::flags.is_reference` 81