xref: /OK3568_Linux_fs/external/mpp/mpp/common/dxva_syntax.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun /*
2*4882a593Smuzhiyun *
3*4882a593Smuzhiyun * Copyright 2015 Rockchip Electronics Co. LTD
4*4882a593Smuzhiyun *
5*4882a593Smuzhiyun * Licensed under the Apache License, Version 2.0 (the "License");
6*4882a593Smuzhiyun * you may not use this file except in compliance with the License.
7*4882a593Smuzhiyun * You may obtain a copy of the License at
8*4882a593Smuzhiyun *
9*4882a593Smuzhiyun *      http://www.apache.org/licenses/LICENSE-2.0
10*4882a593Smuzhiyun *
11*4882a593Smuzhiyun * Unless required by applicable law or agreed to in writing, software
12*4882a593Smuzhiyun * distributed under the License is distributed on an "AS IS" BASIS,
13*4882a593Smuzhiyun * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14*4882a593Smuzhiyun * See the License for the specific language governing permissions and
15*4882a593Smuzhiyun * limitations under the License.
16*4882a593Smuzhiyun */
17*4882a593Smuzhiyun 
18*4882a593Smuzhiyun #ifndef __DXVA_SYNTAX_H__
19*4882a593Smuzhiyun #define __DXVA_SYNTAX_H__
20*4882a593Smuzhiyun 
21*4882a593Smuzhiyun #include "rk_type.h"
22*4882a593Smuzhiyun 
23*4882a593Smuzhiyun enum __MIDL___MIDL_itf_dxva2api_0000_0000_0012 {
24*4882a593Smuzhiyun     DXVA2_PictureParametersBufferType         = 0,
25*4882a593Smuzhiyun     DXVA2_MacroBlockControlBufferType         = 1,
26*4882a593Smuzhiyun     DXVA2_ResidualDifferenceBufferType        = 2,
27*4882a593Smuzhiyun     DXVA2_DeblockingControlBufferType         = 3,
28*4882a593Smuzhiyun     DXVA2_InverseQuantizationMatrixBufferType = 4,
29*4882a593Smuzhiyun     DXVA2_SliceControlBufferType              = 5,
30*4882a593Smuzhiyun     DXVA2_BitStreamDateBufferType             = 6,
31*4882a593Smuzhiyun     DXVA2_MotionVectorBuffer                  = 7,
32*4882a593Smuzhiyun     DXVA2_FilmGrainBuffer                     = 8
33*4882a593Smuzhiyun };
34*4882a593Smuzhiyun 
35*4882a593Smuzhiyun typedef struct _DXVA2_ConfigPictureDecode {
36*4882a593Smuzhiyun     //GUID guidConfigBitstreamEncryption;
37*4882a593Smuzhiyun     //GUID guidConfigMBcontrolEncryption;
38*4882a593Smuzhiyun     //GUID guidConfigResidDiffEncryption;
39*4882a593Smuzhiyun     RK_U32 ConfigBitstreamRaw;
40*4882a593Smuzhiyun     //UINT ConfigMBcontrolRasterOrder;
41*4882a593Smuzhiyun     //UINT ConfigResidDiffHost;
42*4882a593Smuzhiyun     //UINT ConfigSpatialResid8;
43*4882a593Smuzhiyun     //UINT ConfigResid8Subtraction;
44*4882a593Smuzhiyun     //UINT ConfigSpatialHost8or9Clipping;
45*4882a593Smuzhiyun     //UINT ConfigSpatialResidInterleaved;
46*4882a593Smuzhiyun     //UINT ConfigIntraResidUnsigned;
47*4882a593Smuzhiyun     //UINT ConfigResidDiffAccelerator;
48*4882a593Smuzhiyun     //UINT ConfigHostInverseScan;
49*4882a593Smuzhiyun     //UINT ConfigSpecificIDCT;
50*4882a593Smuzhiyun     //UINT Config4GroupedCoefs;
51*4882a593Smuzhiyun     //USHORT ConfigMinRenderTargetBuffCount;
52*4882a593Smuzhiyun     //USHORT ConfigDecoderSpecific;
53*4882a593Smuzhiyun } DXVA2_ConfigPictureDecode;
54*4882a593Smuzhiyun 
55*4882a593Smuzhiyun typedef struct _DXVA2_DecodeBufferDesc {
56*4882a593Smuzhiyun     RK_U32 CompressedBufferType;
57*4882a593Smuzhiyun     RK_U32 BufferIndex;
58*4882a593Smuzhiyun     RK_U32 DataOffset;
59*4882a593Smuzhiyun     RK_U32 DataSize;
60*4882a593Smuzhiyun     RK_U32 FirstMBaddress;
61*4882a593Smuzhiyun     RK_U32 NumMBsInBuffer;
62*4882a593Smuzhiyun     RK_U32 Width;
63*4882a593Smuzhiyun     RK_U32 Height;
64*4882a593Smuzhiyun     RK_U32 Stride;
65*4882a593Smuzhiyun     RK_U32 ReservedBits;
66*4882a593Smuzhiyun     void   *pvPVPState;
67*4882a593Smuzhiyun }   DXVA2_DecodeBufferDesc;
68*4882a593Smuzhiyun 
69*4882a593Smuzhiyun #endif /*__DXVA_SYNTAX_H__*/
70*4882a593Smuzhiyun 
71