⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 quant4x4.c

📁 H.264编码实现
💻 C
字号:

/*!
 *************************************************************************************
 * \file quant4x4.c
 *
 * \brief
 *    Quantization process for a 4x4 block
 *
 * \author
 *    Main contributors (see contributors.h for copyright, address and affiliation details)
 *    - Alexis Michael Tourapis                  <alexismt@ieee.org>
 *
 *************************************************************************************
 */

#include "contributors.h"
#include "global.h"
#include "quant4x4.h"

/*!
************************************************************************
* \brief
*    Quantization initialization function
*
************************************************************************
*/
void init_quant_4x4(InputParameters *params, ImageParameters *img, Slice *currSlice)
{
  if (params->UseRDOQuant == 1)
  {
    quant_4x4     = quant_4x4_trellis;
    if (params->RDOQ_DC == 1)
      quant_dc4x4 = quant_dc4x4_trellis;
    else
      quant_dc4x4 = quant_dc4x4_normal;
    quant_ac4x4   = quant_ac4x4_trellis;
    if (currSlice->symbol_mode == CAVLC)
    {
      rdoq_4x4   = rdoq_4x4_CAVLC;
      rdoq_dc    = rdoq_dc_CAVLC;
      rdoq_ac4x4 = rdoq_ac4x4_CAVLC;
    }
    else
    {
      rdoq_4x4   = rdoq_4x4_CABAC;
      rdoq_dc    = rdoq_dc_CABAC;
      rdoq_ac4x4 = rdoq_ac4x4_CABAC;
    }
  }
  else if (img->AdaptiveRounding)
  {
    quant_4x4     = quant_4x4_around;
    quant_dc4x4   = quant_dc4x4_normal;
    quant_ac4x4   = quant_ac4x4_around;
  }
  else
  {
    quant_4x4   = quant_4x4_normal;
    quant_dc4x4 = quant_dc4x4_normal;
    quant_ac4x4 = quant_ac4x4_normal;
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -