• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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_mpeg2_decode_xe2_lpm_r0_specific.h
23 //! \brief    This file register all caps data
24 //!
25 
26 #ifndef __CAPSTABLE_DATA_MPEG2_DECODE_XE2_LPM_R0_SPECIFIC_H__
27 #define __CAPSTABLE_DATA_MPEG2_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 bitset value
38 //!
39 //! \brief  Definition for ConfigDataList
40 static ConfigDataList configDataList_VAProfileMPEG2Simple_VAEntrypointVLD_Xe2_Lpm_r0 =
41 {
42   {VA_DEC_SLICE_MODE_NORMAL, VA_ENCRYPTION_TYPE_NONE, VA_DEC_PROCESSING_NONE}
43 };
44 
45 static ConfigDataList configDataList_VAProfileMPEG2Main_VAEntrypointVLD_Xe2_Lpm_r0 =
46 {
47   {VA_DEC_SLICE_MODE_NORMAL, VA_ENCRYPTION_TYPE_NONE, VA_DEC_PROCESSING_NONE}
48 };
49 
50 //!
51 //! \brief  Definition for AttribList
52 //!
53 static const AttribList attribList_VAProfileMPEG2Simple_VAEntrypointVLD_Xe2_Lpm_r0
54 {
55    {VAConfigAttribRTFormat, VA_RT_FORMAT_YUV420 | VA_RT_FORMAT_YUV422 | VA_RT_FORMAT_RGB32},
56    {VAConfigAttribDecSliceMode, VA_DEC_SLICE_MODE_NORMAL},
57    {VAConfigAttribDecProcessing, VA_DEC_PROCESSING_NONE},
58    {VAConfigAttribMaxPictureWidth, CODEC_2K_MAX_PIC_WIDTH},
59    {VAConfigAttribMaxPictureHeight, CODEC_2K_MAX_PIC_HEIGHT},
60    {VAConfigAttribEncryption, VA_ATTRIB_NOT_SUPPORTED},
61    {VAConfigAttribProcessingRate, VA_PROCESSING_RATE_DECODE},
62    {VAConfigAttribCustomRoundingControl, 1},
63 };
64 
65 static const AttribList attribList_VAProfileMPEG2Main_VAEntrypointVLD_Xe2_Lpm_r0
66 {
67    {VAConfigAttribRTFormat, VA_RT_FORMAT_YUV420 | VA_RT_FORMAT_YUV422 | VA_RT_FORMAT_RGB32},
68    {VAConfigAttribDecSliceMode, VA_DEC_SLICE_MODE_NORMAL},
69    {VAConfigAttribDecProcessing, VA_DEC_PROCESSING_NONE},
70    {VAConfigAttribMaxPictureWidth, CODEC_2K_MAX_PIC_WIDTH},
71    {VAConfigAttribMaxPictureHeight, CODEC_2K_MAX_PIC_HEIGHT},
72    {VAConfigAttribEncryption, VA_ATTRIB_NOT_SUPPORTED},
73    {VAConfigAttribProcessingRate, VA_PROCESSING_RATE_DECODE},
74    {VAConfigAttribCustomRoundingControl, 1},
75 };
76 
77 //!
78 //! \brief   Definition for ProfileSurfaceAttribInfo
79 //!
80 static ProfileSurfaceAttribInfo surfaceAttribInfo_VAProfileMPEG2Simple_VAEntrypointVLD_Xe2_Lpm_r0 =
81 {
82   {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC_NV12}}},
83   {VASurfaceAttribMaxWidth,    VA_SURFACE_ATTRIB_GETTABLE, {VAGenericValueTypeInteger, {CODEC_2K_MAX_PIC_WIDTH}}},
84   {VASurfaceAttribMaxHeight,   VA_SURFACE_ATTRIB_GETTABLE, {VAGenericValueTypeInteger, {CODEC_2K_MAX_PIC_HEIGHT}}},
85   {VASurfaceAttribMemoryType,  VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_SURFACE_ATTRIB_MEM_TYPE_VA | VA_SURFACE_ATTRIB_MEM_TYPE_DRM_PRIME_2}}}
86 };
87 
88 static ProfileSurfaceAttribInfo surfaceAttribInfo_VAProfileMPEG2Main_VAEntrypointVLD_Xe2_Lpm_r0 =
89 {
90   {VASurfaceAttribPixelFormat, VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_FOURCC_NV12}}},
91   {VASurfaceAttribMaxWidth,    VA_SURFACE_ATTRIB_GETTABLE, {VAGenericValueTypeInteger, {CODEC_2K_MAX_PIC_WIDTH}}},
92   {VASurfaceAttribMaxHeight,   VA_SURFACE_ATTRIB_GETTABLE, {VAGenericValueTypeInteger, {CODEC_2K_MAX_PIC_HEIGHT}}},
93   {VASurfaceAttribMemoryType,  VA_SURFACE_ATTRIB_GETTABLE | VA_SURFACE_ATTRIB_SETTABLE, {VAGenericValueTypeInteger, {VA_SURFACE_ATTRIB_MEM_TYPE_VA | VA_SURFACE_ATTRIB_MEM_TYPE_DRM_PRIME_2}}}
94 };
95 
96 //!
97 //! \brief  Definition for EntrypointMap
98 //!
99 static const EntrypointData entrypointMap_VAProfileMPEG2SimpleDec_Data_Xe2_Lpm_r0
100 {
101     &attribList_VAProfileMPEG2Simple_VAEntrypointVLD_Xe2_Lpm_r0,
102     &configDataList_VAProfileMPEG2Simple_VAEntrypointVLD_Xe2_Lpm_r0,
103     &surfaceAttribInfo_VAProfileMPEG2Simple_VAEntrypointVLD_Xe2_Lpm_r0
104 };
105 
106 static const EntrypointData entrypointMap_VAProfileMPEG2MainDec_Data_Xe2_Lpm_r0
107 {
108     &attribList_VAProfileMPEG2Main_VAEntrypointVLD_Xe2_Lpm_r0,
109     &configDataList_VAProfileMPEG2Main_VAEntrypointVLD_Xe2_Lpm_r0,
110     &surfaceAttribInfo_VAProfileMPEG2Main_VAEntrypointVLD_Xe2_Lpm_r0
111 };
112 
113 #endif
114