12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- /*!
- ***************************************************************************
- * \file
- * cabac.h
- *
- * \brief
- * Header file for entropy coding routines
- *
- * \author
- * Detlev Marpe \n
- * Copyright (C) 2000 HEINRICH HERTZ INSTITUTE All Rights Reserved.
- *
- * \date
- * 21. Oct 2000 (Changes by Tobias Oelbaum 28.08.2001)
- ***************************************************************************
- */
- #ifndef _CABAC_H_
- #define _CABAC_H_
- #include "global.h"
- typedef struct Run_Level
- {
- int level;
- int run;
- } RunLevel;
- extern MotionInfoContexts* create_contexts_MotionInfo(void);
- extern TextureInfoContexts* create_contexts_TextureInfo(void);
- extern void delete_contexts_MotionInfo(MotionInfoContexts *enco_ctx);
- extern void delete_contexts_TextureInfo(TextureInfoContexts *enco_ctx);
- extern void cabac_new_slice(Slice *currSlice);
- extern int readMB_typeInfo_CABAC(Macroblock *currMB, DecodingEnvironmentPtr dep_dp);
- extern int readB8_typeInfo_CABAC(Slice *currSlice, DecodingEnvironmentPtr dep_dp);
- extern int readIntraPredMode_CABAC(Slice *currSlice, DecodingEnvironmentPtr dep_dp);
- extern char readRefFrame_CABAC(Macroblock *currMB, DecodingEnvironmentPtr dep_dp, int list, int x, int y);
- extern char readRefFrame_CABAC0(Macroblock *currMB, DecodingEnvironmentPtr dep_dp, int list, int y);
- extern int readMVD_CABAC(Macroblock *currMB, DecodingEnvironmentPtr dep_dp, int k, int list, int x, int y);
- extern int readCBP_CABAC (Macroblock *currMB, DecodingEnvironmentPtr dep_dp);
- // readRunLevel_CABAC returns level and sets *run
- extern RunLevel readRunLevel_CABAC(Macroblock *currMB, DecodingEnvironmentPtr dep_dp, int context);
- extern short readDquant_CABAC(Slice *currSlice, DecodingEnvironmentPtr dep_dp);
- extern char readCIPredMode_CABAC (Macroblock *currMB, DecodingEnvironmentPtr dep_dp);
- extern int readMB_skip_flagInfo_CABAC (Macroblock *currMB, DecodingEnvironmentPtr dep_dp);
- extern Boolean readFieldModeInfo_CABAC (Macroblock *currMB, DecodingEnvironmentPtr dep_dp);
- extern Boolean readMB_transform_size_flag_CABAC(Macroblock *currMB, DecodingEnvironmentPtr dep_dp);
- extern void readIPCM_CABAC(Slice *currSlice, struct datapartition *dP);
- extern int cabac_startcode_follows(Slice *currSlice, int eos_bit);
- extern int check_next_mb_and_get_field_mode_CABAC(Slice *currSlice, DataPartition *act_dp);
- extern void CheckAvailabilityOfNeighborsCABAC(Macroblock *currMB);
- extern void set_read_and_store_CBP(Macroblock **currMB, int chroma_format_idc);
- #endif // _CABAC_H_
|