rdopt_coding_state.h
上传用户:hjq518
上传日期:2021-12-09
资源大小:5084k
文件大小:1k
源码类别:

Audio

开发平台:

Visual C++

  1. /*!
  2.  ***************************************************************************
  3.  * file
  4.  *    rdopt_coding_state.h
  5.  *
  6.  * author
  7.  *    Heiko Schwarz
  8.  *
  9.  * date
  10.  *    17. April 2001
  11.  *
  12.  * brief
  13.  *    Headerfile for storing/restoring coding state
  14.  *    (for rd-optimized mode decision)
  15.  **************************************************************************
  16.  */
  17. #ifndef _RD_OPT_CS_H_
  18. #define _RD_OPT_CS_H_
  19. typedef struct {
  20.   // important variables of data partition array
  21.   int                   no_part;
  22.   EncodingEnvironment  *encenv;
  23.   Bitstream            *bitstream;
  24.   // contexts for binary arithmetic coding
  25.   int                   symbol_mode;
  26.   MotionInfoContexts   *mot_ctx;
  27.   TextureInfoContexts  *tex_ctx;
  28.   // bit counter
  29.   int                   bitcounter[MAX_BITCOUNTER_MB];
  30.   // elements of current macroblock
  31.   short                 mvd[2][BLOCK_MULTIPLE][BLOCK_MULTIPLE][2];
  32.   int64                 cbp_bits[3];
  33.   int64                 cbp_bits_8x8[3];
  34. } CSobj;
  35. typedef CSobj* CSptr;
  36. void  delete_coding_state  (CSptr);  //!< delete structure
  37. CSptr create_coding_state  (void);       //!< create structure
  38. void  store_coding_state   (Macroblock *currMB, CSptr);  //!< store parameters
  39. void  reset_coding_state   (Macroblock *currMB, CSptr);  //!< restore parameters
  40. #endif