• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2 * Copyright (c) 2022-2023, 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_avc_decode_xe2_lpm_r0_specific.h
23 //! \brief    This file register all caps data
24 //!
25 
26 #ifndef __CAPSTABLE_DATA_AVC_DECODE_XE2_LPM_R0_SPECIFIC_H__
27 #define __CAPSTABLE_DATA_AVC_DECODE_XE2_LPM_R0_SPECIFIC_H__
28 
29 #include "capstable_data_xe2_lpm_r0_specific.h"
30 #include "codec_def_common.h"
31 
32 #ifndef VA_ENCRYPTION_TYPE_NONE
33 #define VA_ENCRYPTION_TYPE_NONE 0x00000000
34 #endif
35 
36 //!
37 //! \brief  Definition for ConfigDataList
38 //!
39 static ConfigDataList configDataList_VAProfileH264Main_VAEntrypointVLD_Xe2_Lpm_r0 =
40 {
41   {VA_DEC_SLICE_MODE_NORMAL, VA_ENCRYPTION_TYPE_NONE, VA_DEC_PROCESSING_NONE},
42   {VA_DEC_SLICE_MODE_NORMAL, VA_ENCRYPTION_TYPE_NONE, VA_DEC_PROCESSING},
43   {VA_DEC_SLICE_MODE_BASE,   VA_ENCRYPTION_TYPE_NONE, VA_DEC_PROCESSING_NONE},
44   {VA_DEC_SLICE_MODE_BASE,   VA_ENCRYPTION_TYPE_NONE, VA_DEC_PROCESSING}
45 };
46 
47 static ConfigDataList configDataList_VAProfileH264High_VAEntrypointVLD_Xe2_Lpm_r0 =
48 {
49   {VA_DEC_SLICE_MODE_NORMAL, VA_ENCRYPTION_TYPE_NONE, VA_DEC_PROCESSING_NONE},
50   {VA_DEC_SLICE_MODE_NORMAL, VA_ENCRYPTION_TYPE_NONE, VA_DEC_PROCESSING},
51   {VA_DEC_SLICE_MODE_BASE,   VA_ENCRYPTION_TYPE_NONE, VA_DEC_PROCESSING_NONE},
52   {VA_DEC_SLICE_MODE_BASE,   VA_ENCRYPTION_TYPE_NONE, VA_DEC_PROCESSING}
53 };
54 
55 static ConfigDataList configDataList_VAProfileH264ConstrainedBaseline_VAEntrypointVLD_Xe2_Lpm_r0 =
56 {
57   {VA_DEC_SLICE_MODE_NORMAL, VA_ENCRYPTION_TYPE_NONE, VA_DEC_PROCESSING_NONE},
58   {VA_DEC_SLICE_MODE_NORMAL, VA_ENCRYPTION_TYPE_NONE, VA_DEC_PROCESSING},
59   {VA_DEC_SLICE_MODE_BASE,   VA_ENCRYPTION_TYPE_NONE, VA_DEC_PROCESSING_NONE},
60   {VA_DEC_SLICE_MODE_BASE,   VA_ENCRYPTION_TYPE_NONE, VA_DEC_PROCESSING}
61 };
62 
63 //!
64 //! \brief  Definition for AttribList
65 //!
66 static const AttribList attribList_VAProfileH264Main_VAEntrypointVLD_Xe2_Lpm_r0
67 {
68    {VAConfigAttribRTFormat, VA_RT_FORMAT_YUV420 | VA_RT_FORMAT_YUV422 | VA_RT_FORMAT_RGB32},
69    {VAConfigAttribDecSliceMode, VA_DEC_SLICE_MODE_NORMAL | VA_DEC_SLICE_MODE_BASE},
70    {VAConfigAttribDecProcessing, VA_DEC_PROCESSING},
71    {VAConfigAttribMaxPictureWidth, CODEC_4K_MAX_PIC_WIDTH},
72    {VAConfigAttribMaxPictureHeight, CODEC_4K_MAX_PIC_HEIGHT},
73    {VAConfigAttribEncryption, VA_ATTRIB_NOT_SUPPORTED},
74    {VAConfigAttribProcessingRate, VA_PROCESSING_RATE_DECODE},
75    {VAConfigAttribCustomRoundingControl, 1},
76 };
77 
78 static const AttribList attribList_VAProfileH264High_VAEntrypointVLD_Xe2_Lpm_r0
79 {
80    {VAConfigAttribRTFormat, VA_RT_FORMAT_YUV420 | VA_RT_FORMAT_YUV422 | VA_RT_FORMAT_RGB32},
81    {VAConfigAttribDecSliceMode, VA_DEC_SLICE_MODE_NORMAL | VA_DEC_SLICE_MODE_BASE},
82    {VAConfigAttribDecProcessing, VA_DEC_PROCESSING},
83    {VAConfigAttribMaxPictureWidth, CODEC_4K_MAX_PIC_WIDTH},
84    {VAConfigAttribMaxPictureHeight, CODEC_4K_MAX_PIC_HEIGHT},
85    {VAConfigAttribEncryption, VA_ATTRIB_NOT_SUPPORTED},
86    {VAConfigAttribProcessingRate, VA_PROCESSING_RATE_DECODE},
87    {VAConfigAttribCustomRoundingControl, 1},
88 };
89 
90 static const AttribList attribList_VAProfileH264ConstrainedBaseline_VAEntrypointVLD_Xe2_Lpm_r0
91 {
92    {VAConfigAttribRTFormat, VA_RT_FORMAT_YUV420 | VA_RT_FORMAT_YUV422 | VA_RT_FORMAT_RGB32},
93    {VAConfigAttribDecSliceMode, VA_DEC_SLICE_MODE_NORMAL | VA_DEC_SLICE_MODE_BASE},
94    {VAConfigAttribDecProcessing, VA_DEC_PROCESSING},
95    {VAConfigAttribMaxPictureWidth, CODEC_4K_MAX_PIC_WIDTH},
96    {VAConfigAttribMaxPictureHeight, CODEC_4K_MAX_PIC_HEIGHT},
97    {VAConfigAttribEncryption, VA_ATTRIB_NOT_SUPPORTED},
98    {VAConfigAttribProcessingRate, VA_PROCESSING_RATE_DECODE},
99    {VAConfigAttribCustomRoundingControl, 1},
100 };
101 
102 //!
103 //! \brief   Definition for ProfileSurfaceAttribInfo
104 //!
105 static ProfileSurfaceAttribInfo surfaceAttribInfo_VAProfileH264Main_VAEntrypointVLD_Xe2_Lpm_r0 =
106 {
107   {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC_NV12}}},
108   {VASurfaceAttribMaxWidth,    VA_SURFACE_ATTRIB_GETTABLE, {VAGenericValueTypeInteger, {CODEC_4K_MAX_PIC_WIDTH}}},
109   {VASurfaceAttribMaxHeight,   VA_SURFACE_ATTRIB_GETTABLE, {VAGenericValueTypeInteger, {CODEC_4K_MAX_PIC_HEIGHT}}},
110   {VASurfaceAttribMemoryType,  VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_SURFACE_ATTRIB_MEM_TYPE_VA| VA_SURFACE_ATTRIB_MEM_TYPE_DRM_PRIME_2}}}
111 };
112 
113 static ProfileSurfaceAttribInfo surfaceAttribInfo_VAProfileH264High_VAEntrypointVLD_Xe2_Lpm_r0 =
114 {
115   {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC_NV12}}},
116   {VASurfaceAttribMaxWidth,    VA_SURFACE_ATTRIB_GETTABLE, {VAGenericValueTypeInteger, {CODEC_4K_MAX_PIC_WIDTH}}},
117   {VASurfaceAttribMaxHeight,   VA_SURFACE_ATTRIB_GETTABLE, {VAGenericValueTypeInteger, {CODEC_4K_MAX_PIC_HEIGHT}}},
118   {VASurfaceAttribMemoryType,  VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_SURFACE_ATTRIB_MEM_TYPE_VA| VA_SURFACE_ATTRIB_MEM_TYPE_DRM_PRIME_2}}}
119 };
120 
121 static ProfileSurfaceAttribInfo surfaceAttribInfo_VAProfileH264ConstrainedBaseline_VAEntrypointVLD_Xe2_Lpm_r0 =
122 {
123   {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC_NV12}}},
124   {VASurfaceAttribMaxWidth,    VA_SURFACE_ATTRIB_GETTABLE, {VAGenericValueTypeInteger, {CODEC_4K_MAX_PIC_WIDTH}}},
125   {VASurfaceAttribMaxHeight,   VA_SURFACE_ATTRIB_GETTABLE, {VAGenericValueTypeInteger, {CODEC_4K_MAX_PIC_HEIGHT}}},
126   {VASurfaceAttribMemoryType,  VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_SURFACE_ATTRIB_MEM_TYPE_VA| VA_SURFACE_ATTRIB_MEM_TYPE_DRM_PRIME_2}}}
127 };
128 
129 //!
130 //! \brief  Definition for EntrypointMap
131 //!
132 static const EntrypointData entrypointMap_VAProfileH264MainDec_Data_Xe2_Lpm_r0
133 {
134     &attribList_VAProfileH264Main_VAEntrypointVLD_Xe2_Lpm_r0,
135     &configDataList_VAProfileH264Main_VAEntrypointVLD_Xe2_Lpm_r0,
136     &surfaceAttribInfo_VAProfileH264Main_VAEntrypointVLD_Xe2_Lpm_r0
137 };
138 
139 static const EntrypointData entrypointMap_VAProfileH264HighDec_Data_Xe2_Lpm_r0
140 {
141     &attribList_VAProfileH264High_VAEntrypointVLD_Xe2_Lpm_r0,
142     &configDataList_VAProfileH264High_VAEntrypointVLD_Xe2_Lpm_r0,
143     &surfaceAttribInfo_VAProfileH264High_VAEntrypointVLD_Xe2_Lpm_r0
144 };
145 
146 static const EntrypointData entrypointMap_VAProfileH264ConstrainedBaselineDec_Data_Xe2_Lpm_r0
147 {
148     &attribList_VAProfileH264ConstrainedBaseline_VAEntrypointVLD_Xe2_Lpm_r0,
149     &configDataList_VAProfileH264ConstrainedBaseline_VAEntrypointVLD_Xe2_Lpm_r0,
150     &surfaceAttribInfo_VAProfileH264ConstrainedBaseline_VAEntrypointVLD_Xe2_Lpm_r0
151 };
152 
153 #endif
154