1 /* 2 * Copyright (c) 2022, Intel Corporation 3 * 4 * Permission is hereby granted, free of charge, to any person obtaining a 5 * copy of this software and associated documentation files (the "Software"), 6 * to deal in the Software without restriction, including without limitation 7 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 8 * and/or sell copies of the Software, and to permit persons to whom the 9 * Software is furnished to do so, subject to the following conditions: 10 * The above copyright notice and this permission notice shall be included 11 * in all copies or substantial portions of the Software. 12 * 13 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 14 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 16 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR 17 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 18 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 19 * OTHER DEALINGS IN THE SOFTWARE. 20 */ 21 //! 22 //! \file capstable_data_vvc_decode_xe2_lpm_r0_specific.h 23 //! \brief This file register all caps data 24 //! 25 26 #ifndef __CAPSTABLE_DATA_VVC_DECODE_XE2_LPM_R0_SPECIFIC_H__ 27 #define __CAPSTABLE_DATA_VVC_DECODE_XE2_LPM_R0_SPECIFIC_H__ 28 29 #include <va/va.h> 30 #include <va/va_dec_vvc.h> 31 #include "capstable_data_xe2_lpm_r0_specific.h" 32 #include "codec_def_common.h" 33 #include "codec_def_decode_vvc.h" 34 35 #ifndef VA_CENC_TYPE_NONE 36 #define VA_CENC_TYPE_NONE 0x00000000 37 #endif 38 39 //! 40 //! \brief Definition for ConfigDataList 41 //! 42 static ConfigDataList configDataList_VAProfileVVCMain10_VAEntrypointVLD_Xe2_Lpm_r0 = 43 { 44 {VA_DEC_SLICE_MODE_NORMAL, VA_CENC_TYPE_NONE, VA_DEC_PROCESSING_NONE}, 45 }; 46 47 //! 48 //! \brief Definition for AttribList 49 //! 50 static const AttribList attribList_VAProfileVVCMain10_VAEntrypointVLD_Xe2_Lpm_r0 51 { 52 {VAConfigAttribRTFormat, VA_RT_FORMAT_YUV420 | VA_RT_FORMAT_YUV420_10}, 53 {VAConfigAttribMaxPictureWidth, CODEC_16K_VVC_MAX_PIC_WIDTH}, 54 {VAConfigAttribMaxPictureHeight, CODEC_16K_VVC_MAX_PIC_HEIGHT}, 55 {VAConfigAttribDecSliceMode, VA_DEC_SLICE_MODE_NORMAL}, 56 {VAConfigAttribDecProcessing, VA_DEC_PROCESSING_NONE}, 57 {VAConfigAttribEncryption, VA_ATTRIB_NOT_SUPPORTED}, 58 {VAConfigAttribProcessingRate, VA_PROCESSING_RATE_DECODE}, 59 {VAConfigAttribCustomRoundingControl, 1}, 60 }; 61 62 //! 63 //! \brief Definition for ProfileSurfaceAttribInfo 64 //! 65 static ProfileSurfaceAttribInfo surfaceAttribInfo_VAProfileVVCMain10_VAEntrypointVLD_Xe2_Lpm_r0 = 66 { 67 {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC_NV12}}}, 68 {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC_P010}}}, 69 {VASurfaceAttribMaxWidth, VA_SURFACE_ATTRIB_GETTABLE, {VAGenericValueTypeInteger, {CODEC_16K_VVC_MAX_PIC_WIDTH}}}, 70 {VASurfaceAttribMaxHeight, VA_SURFACE_ATTRIB_GETTABLE, {VAGenericValueTypeInteger, {CODEC_16K_VVC_MAX_PIC_HEIGHT}}}, 71 {VASurfaceAttribMemoryType, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_SURFACE_ATTRIB_MEM_TYPE_VA | VA_SURFACE_ATTRIB_MEM_TYPE_DRM_PRIME_2}}} 72 }; 73 74 //! 75 //! \brief Definition for EmtrypointMap 76 //! 77 static const EntrypointData entrypointMap_VAProfileVVCMain10Dec_Data_Xe2_Lpm_r0 78 { 79 &attribList_VAProfileVVCMain10_VAEntrypointVLD_Xe2_Lpm_r0, 80 &configDataList_VAProfileVVCMain10_VAEntrypointVLD_Xe2_Lpm_r0, 81 &surfaceAttribInfo_VAProfileVVCMain10_VAEntrypointVLD_Xe2_Lpm_r0 82 }; 83 84 //! 85 //! \brief Definition for ConfigDataList 86 //! 87 static ConfigDataList configDataList_VAProfileVVCMultilayerMain10_VAEntrypointVLD_Xe2_Lpm_r0 = 88 { 89 {VA_DEC_SLICE_MODE_NORMAL, VA_CENC_TYPE_NONE, VA_DEC_PROCESSING_NONE}, 90 }; 91 92 //! 93 //! \brief Definition for AttribList 94 //! 95 static const AttribList attribList_VAProfileVVCMultilayerMain10_VAEntrypointVLD_Xe2_Lpm_r0 96 { 97 {VAConfigAttribRTFormat, VA_RT_FORMAT_YUV420 | VA_RT_FORMAT_YUV420_10}, 98 {VAConfigAttribMaxPictureWidth, CODEC_16K_VVC_MAX_PIC_WIDTH}, 99 {VAConfigAttribMaxPictureHeight, CODEC_16K_VVC_MAX_PIC_HEIGHT}, 100 {VAConfigAttribDecSliceMode, VA_DEC_SLICE_MODE_NORMAL}, 101 {VAConfigAttribDecProcessing, VA_DEC_PROCESSING_NONE}, 102 {VAConfigAttribEncryption, VA_ATTRIB_NOT_SUPPORTED}, 103 {VAConfigAttribProcessingRate, VA_PROCESSING_RATE_DECODE}, 104 {VAConfigAttribCustomRoundingControl, 1}, 105 }; 106 107 //! 108 //! \brief Definition for ProfileSurfaceAttribInfo 109 //! 110 static ProfileSurfaceAttribInfo surfaceAttribInfo_VAProfileVVCMultilayerMain10_VAEntrypointVLD_Xe2_Lpm_r0 = 111 { 112 {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC_NV12}}}, 113 {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC_P010}}}, 114 {VASurfaceAttribMaxWidth, VA_SURFACE_ATTRIB_GETTABLE, {VAGenericValueTypeInteger, {CODEC_16K_VVC_MAX_PIC_WIDTH}}}, 115 {VASurfaceAttribMaxHeight, VA_SURFACE_ATTRIB_GETTABLE, {VAGenericValueTypeInteger, {CODEC_16K_VVC_MAX_PIC_HEIGHT}}}, 116 {VASurfaceAttribMemoryType, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_SURFACE_ATTRIB_MEM_TYPE_VA | VA_SURFACE_ATTRIB_MEM_TYPE_DRM_PRIME_2}}} 117 }; 118 119 //! 120 //! \brief Definition for EmtrypointMap 121 //! 122 static const EntrypointData entrypointMap_VAProfileVVCMultilayerMain10Dec_Data_Xe2_Lpm_r0 123 { 124 &attribList_VAProfileVVCMultilayerMain10_VAEntrypointVLD_Xe2_Lpm_r0, 125 &configDataList_VAProfileVVCMultilayerMain10_VAEntrypointVLD_Xe2_Lpm_r0, 126 &surfaceAttribInfo_VAProfileVVCMultilayerMain10_VAEntrypointVLD_Xe2_Lpm_r0 127 }; 128 129 #endif 130