h264hwd_pic_param_set.h 3.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. /*------------------------------------------------------------------------------
  2. -- --
  3. -- This software is confidential and proprietary and may be used --
  4. -- only as expressly authorized by a licensing agreement from --
  5. -- --
  6. -- Hantro Products Oy. --
  7. -- --
  8. -- (C) COPYRIGHT 2006 HANTRO PRODUCTS OY --
  9. -- ALL RIGHTS RESERVED --
  10. -- --
  11. -- The entire notice above must be reproduced --
  12. -- on all copies and should not be removed. --
  13. -- --
  14. --------------------------------------------------------------------------------
  15. --
  16. -- Abstract : Decode picture parameter set information from the stream
  17. --
  18. --------------------------------------------------------------------------------
  19. --
  20. -- Version control information, please leave untouched.
  21. --
  22. -- $RCSfile: h264hwd_pic_param_set.h,v $
  23. -- $Date: 2008/03/13 12:48:06 $
  24. -- $Revision: 1.1 $
  25. --
  26. ------------------------------------------------------------------------------*/
  27. /*------------------------------------------------------------------------------
  28. Table of contents
  29. 1. Include headers
  30. 2. Module defines
  31. 3. Data types
  32. 4. Function prototypes
  33. ------------------------------------------------------------------------------*/
  34. #ifndef H264HWD_PIC_PARAM_SET_H
  35. #define H264HWD_PIC_PARAM_SET_H
  36. /*------------------------------------------------------------------------------
  37. 1. Include headers
  38. ------------------------------------------------------------------------------*/
  39. #include "basetype.h"
  40. #include "h264hwd_stream.h"
  41. /*------------------------------------------------------------------------------
  42. 2. Module defines
  43. ------------------------------------------------------------------------------*/
  44. /*------------------------------------------------------------------------------
  45. 3. Data types
  46. ------------------------------------------------------------------------------*/
  47. /* data structure to store PPS information decoded from the stream */
  48. typedef struct
  49. {
  50. u32 picParameterSetId;
  51. u32 seqParameterSetId;
  52. u32 picOrderPresentFlag;
  53. u32 numSliceGroups;
  54. u32 sliceGroupMapType;
  55. u32 *runLength;
  56. u32 *topLeft;
  57. u32 *bottomRight;
  58. u32 sliceGroupChangeDirectionFlag;
  59. u32 sliceGroupChangeRate;
  60. u32 picSizeInMapUnits;
  61. u32 *sliceGroupId;
  62. u32 numRefIdxL0Active;
  63. u32 numRefIdxL1Active;
  64. u32 picInitQp;
  65. i32 chromaQpIndexOffset;
  66. i32 chromaQpIndexOffset2;
  67. u32 deblockingFilterControlPresentFlag;
  68. u32 constrainedIntraPredFlag;
  69. u32 redundantPicCntPresentFlag;
  70. u32 entropyCodingModeFlag;
  71. u32 weightedPredFlag;
  72. u32 weightedBiPredIdc;
  73. u32 transform8x8Flag;
  74. u32 scalingMatrixPresentFlag;
  75. u32 scalingListPresent[8];
  76. u32 useDefaultScaling[8];
  77. u8 scalingList[8][64];
  78. } picParamSet_t;
  79. /*------------------------------------------------------------------------------
  80. 4. Function prototypes
  81. ------------------------------------------------------------------------------*/
  82. u32 h264bsdDecodePicParamSet(strmData_t *pStrmData,
  83. picParamSet_t *pPicParamSet);
  84. #endif /* #ifdef H264HWD_PIC_PARAM_SET_H */