1 /* 2 * Copyright (C) 2009 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 /*------------------------------------------------------------------------------ 18 19 Table of contents 20 21 1. Include headers 22 2. Module defines 23 3. Data types 24 4. Function prototypes 25 26 ------------------------------------------------------------------------------*/ 27 28 #ifndef H264SWDEC_PIC_PARAM_SET_H 29 #define H264SWDEC_PIC_PARAM_SET_H 30 31 /*------------------------------------------------------------------------------ 32 1. Include headers 33 ------------------------------------------------------------------------------*/ 34 35 #include "basetype.h" 36 #include "h264bsd_stream.h" 37 38 /*------------------------------------------------------------------------------ 39 2. Module defines 40 ------------------------------------------------------------------------------*/ 41 42 /*------------------------------------------------------------------------------ 43 3. Data types 44 ------------------------------------------------------------------------------*/ 45 46 /* data structure to store PPS information decoded from the stream */ 47 typedef struct 48 { 49 u32 picParameterSetId; 50 u32 seqParameterSetId; 51 u32 picOrderPresentFlag; 52 u32 numSliceGroups; 53 u32 sliceGroupMapType; 54 u32 *runLength; 55 u32 *topLeft; 56 u32 *bottomRight; 57 u32 sliceGroupChangeDirectionFlag; 58 u32 sliceGroupChangeRate; 59 u32 picSizeInMapUnits; 60 u32 *sliceGroupId; 61 u32 numRefIdxL0Active; 62 u32 picInitQp; 63 i32 chromaQpIndexOffset; 64 u32 deblockingFilterControlPresentFlag; 65 u32 constrainedIntraPredFlag; 66 u32 redundantPicCntPresentFlag; 67 } picParamSet_t; 68 69 /*------------------------------------------------------------------------------ 70 4. Function prototypes 71 ------------------------------------------------------------------------------*/ 72 73 u32 h264bsdDecodePicParamSet(strmData_t *pStrmData, 74 picParamSet_t *pPicParamSet); 75 76 #endif /* #ifdef H264SWDEC_PIC_PARAM_SET_H */ 77 78