mpeg2hwd_strm.h 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  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 : Stream decoding top header file
  17. --
  18. --------------------------------------------------------------------------------
  19. --
  20. -- Version control information, please leave untouched.
  21. --
  22. -- $RCSfile: mpeg2hwd_strm.h,v $
  23. -- $Date: 2007/09/19 10:48:00 $
  24. -- $Revision: 1.3 $
  25. --
  26. ------------------------------------------------------------------------------*/
  27. /*------------------------------------------------------------------------------
  28. Table of context
  29. 1. xxx...
  30. ------------------------------------------------------------------------------*/
  31. #ifndef MPEG2STRMDEC_H_DEFINED
  32. #define MPEG2STRMDEC_H_DEFINED
  33. #include "mpeg2hwd_container.h"
  34. /* StrmDec_Decode() function return values
  35. * DEC_RDY -> everything ok but no frames finished
  36. * DEC_PIC_RDY -> pic finished
  37. * DEC_PIC_RDY_BUF_NOT_EMPTY -> pic finished but stream buffer not empty
  38. * DEC_ERROR -> nothing finished, decoder not ready, cannot continue decoding
  39. * before some headers received
  40. * DEC_ERROR_BUF_NOT_EMPTY -> same as above but stream buffer not empty
  41. * DEC_END_OF_STREAM -> nothing finished, no data left in stream
  42. * DEC_OUT_OF_BUFFER -> out of rlc buffer
  43. * DEC_HDRS_RDY -> either vol header decoded or short video source format
  44. * determined
  45. * DEC_HDRS_RDY_BUF_NOT_EMPTY -> same as above but stream buffer not empty
  46. *
  47. * Bits in the output have following meaning:
  48. * 0 ready
  49. * 1 frame ready
  50. * 2 buffer not empty
  51. * 3 error
  52. * 4 end of stream
  53. * 5 out of buffer
  54. * 6 video object sequence end
  55. * 7 headers ready
  56. */
  57. enum
  58. {
  59. DEC_RDY = 0x01,
  60. DEC_PIC_RDY = 0x03,
  61. DEC_PIC_RDY_BUF_NOT_EMPTY = 0x07,
  62. DEC_ERROR = 0x08,
  63. DEC_ERROR_BUF_NOT_EMPTY = 0x0C,
  64. DEC_END_OF_STREAM = 0x10,
  65. DEC_OUT_OF_BUFFER = 0x20,
  66. DEC_HDRS_RDY = 0x80,
  67. DEC_HDRS_RDY_BUF_NOT_EMPTY = 0x84,
  68. DEC_PIC_HDR_RDY = 0x100,
  69. DEC_PIC_HDR_RDY_ERROR = 0x108,
  70. DEC_PIC_SUPRISE_B = 0x1000
  71. };
  72. /* function prototypes */
  73. u32 mpeg2StrmDec_Decode(DecContainer * pDecContainer);
  74. #endif /* #ifndef MPEG2STRMDEC_H_DEFINED */