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

Audio

开发平台:

Visual C++

  1. /*!
  2.  ************************************************************************
  3.  * file quant4x4.h
  4.  *
  5.  * brief
  6.  *    Quantization process header file
  7.  *
  8.  * author
  9.  *    Limin Liu                       <lliu@dolby.com>
  10.  *    Alexis Michael Tourapis         <alexismt@ieee.org>                
  11.  *
  12.  ************************************************************************
  13.  */
  14. #ifndef _QUANT4x4_H_
  15. #define _QUANT4x4_H_
  16. void init_quant_4x4(InputParameters *params, ImageParameters *img, Slice *currSlice);
  17. int quant_4x4_normal (int (*tblock)[16], int block_y, int block_x, int qp, 
  18.                       int*  ACLevel, int*  ACRun, 
  19.                       int **fadjust4x4, int **levelscale, int **invlevelscale, int **leveloffset,
  20.                       int *coeff_cost, const byte (*pos_scan)[2], const byte *c_cost, int is_calvc);
  21. int quant_4x4_around (int (*tblock)[16], int block_y, int block_x, int qp, 
  22.                       int*  ACLevel, int*  ACRun, 
  23.                       int **fadjust4x4, int **levelscale, int **invlevelscale, int **leveloffset,
  24.                       int *coeff_cost, const byte (*pos_scan)[2], const byte *c_cost, int is_calvc);
  25. int quant_4x4_trellis(int (*tblock)[16], int block_y, int block_x, int qp,
  26.                       int*  ACLevel, int*  ACRun, 
  27.                       int **fadjust4x4, int **levelscale, int **invlevelscale, int **leveloffset,
  28.                       int *coeff_cost, const byte (*pos_scan)[2], const byte *c_cost, int is_calvc);
  29. int (*quant_4x4)     (int (*tblock)[16], int block_y, int block_x, int qp, 
  30.                       int*  ACLevel, int*  ACRun, 
  31.                       int **fadjust4x4, int **levelscale, int **invlevelscale, int **leveloffset,
  32.                       int *coeff_cost, const byte (*pos_scan)[2], const byte *c_cost, int is_calvc);
  33. int quant_dc4x4_normal (int (*tblock)[4], int qp, int* DCLevel, int* DCRun, 
  34.                         int levelscale, int invlevelscale, int leveloffset, const byte (*pos_scan)[2], int is_calvc);
  35. int quant_dc4x4_around (int (*tblock)[4], int qp, int* DCLevel, int* DCRun, 
  36.                         int levelscale, int invlevelscale, int leveloffset, const byte (*pos_scan)[2], int is_calvc);
  37. int quant_dc4x4_trellis(int (*tblock)[4], int qp, int* DCLevel, int* DCRun, 
  38.                         int levelscale, int invlevelscale, int leveloffset, const byte (*pos_scan)[2], int is_calvc);
  39. int (*quant_dc4x4)     (int (*tblock)[4], int qp, int*  DCLevel, int*  DCRun, 
  40.                         int levelscale, int invlevelscale, int leveloffset, const byte (*pos_scan)[2], int is_calvc);
  41. int quant_ac4x4_normal (int (*tblock)[16], int block_y, int block_x, int qp,                 
  42.                         int*  ACLevel, int*  ACRun, 
  43.                         int **fadjust4x4, int **levelscale, int **invlevelscale, int **leveloffset,
  44.                         int *coeff_cost, const byte (*pos_scan)[2], const byte *c_cost, int type, int is_calvc);
  45. int quant_ac4x4_around (int (*tblock)[16], int block_y, int block_x, int qp,                 
  46.                         int*  ACLevel, int*  ACRun, 
  47.                         int **fadjust4x4, int **levelscale, int **invlevelscale, int **leveloffset,
  48.                         int *coeff_cost, const byte (*pos_scan)[2], const byte *c_cost, int type, int is_calvc);
  49. int quant_ac4x4_trellis(int (*tblock)[16], int block_y, int block_x, int qp,                
  50.                         int*  ACLevel, int*  ACRun, 
  51.                         int **fadjust4x4, int **levelscale, int **invlevelscale, int **leveloffset,
  52.                         int *coeff_cost, const byte (*pos_scan)[2], const byte *c_cost, int type, int is_calvc);
  53. int (*quant_ac4x4)     (int (*tblock)[16], int block_y, int block_x, int qp,                 
  54.                         int*  ACLevel, int*  ACRun, 
  55.                         int **fadjust4x4, int **levelscale, int **invlevelscale, int **leveloffset,
  56.                         int *coeff_cost, const byte (*pos_scan)[2], const byte *c_cost, int type, int is_calvc);
  57. void rdoq_4x4_CAVLC    (int (*tblock)[16], int block_y, int block_x, int qp_per, int qp_rem, 
  58.                         int **levelscale, int **leveloffset, const byte (*pos_scan)[2], int levelTrellis[16]);
  59. void rdoq_4x4_CABAC    (int (*tblock)[16], int block_y, int block_x, int qp_per, int qp_rem, 
  60.                         int **levelscale, int **leveloffset, const byte (*pos_scan)[2], int levelTrellis[16]);
  61. void (*rdoq_4x4)       (int (*tblock)[16], int block_y, int block_x, int qp_per, int qp_rem, 
  62.                         int **levelscale, int **leveloffset, const byte (*pos_scan)[2], int levelTrellis[16]);
  63. void rdoq_dc_CAVLC     (int (*tblock)[4], int qp_per, int qp_rem, int levelscale, int leveloffset, 
  64.                         const byte (*pos_scan)[2], int levelTrellis[16], int type);
  65. void rdoq_dc_CABAC     (int (*tblock)[4], int qp_per, int qp_rem, int levelscale, int leveloffset, 
  66.                         const byte (*pos_scan)[2], int levelTrellis[16], int type);
  67. void (*rdoq_dc)        (int (*tblock)[4], int qp_per, int qp_rem, int levelscale, int leveloffset, 
  68.                         const byte (*pos_scan)[2], int levelTrellis[16], int type);
  69. void rdoq_ac4x4_CAVLC  (int (*tblock)[16] , int block_y, int block_x, int qp_per, int qp_rem, 
  70.                         int **levelscale, int **leveloffset, const byte (*pos_scan)[2], int levelTrellis[16], int type);
  71. void rdoq_ac4x4_CABAC  (int (*tblock)[16] , int block_y, int block_x, int qp_per, int qp_rem, 
  72.                         int **levelscale, int **leveloffset, const byte (*pos_scan)[2], int levelTrellis[16], int type);
  73. void (*rdoq_ac4x4)     (int (*tblock)[16] , int block_y, int block_x, int qp_per, int qp_rem, 
  74.                         int **levelscale, int **leveloffset, const byte (*pos_scan)[2], int levelTrellis[16], int type);
  75. #endif