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

📄 ratectl.h

📁 压缩JM12.3d的完整的全部C语言的代码文档,用于嵌入式系统的压缩编解码
💻 H
字号:

/*!
 ***************************************************************************
 * \file
 *    ratectl.h
 *
 * \author
 *    Zhengguo LI
 *
 * \date
 *    14 Jan 2003
 *
 * \brief
 *    Headerfile for rate control
 **************************************************************************
 */

#ifndef _RATE_CTL_H_
#define _RATE_CTL_H_

#include "rc_quadratic.h"

/* generic rate control variables */
typedef struct {
  // RC flags
  int   TopFieldFlag;
  int   FieldControl;
  int   FieldFrame;
  int   NoGranularFieldRC;
  // bits stats
  int   NumberofHeaderBits;
  int   NumberofTextureBits;
  int   NumberofBasicUnitHeaderBits;
  int   NumberofBasicUnitTextureBits;
  // frame stats
  int   NumberofGOP;
  int   NumberofCodedBFrame;  
  // MAD stats
  int64 TotalMADBasicUnit;
  int   *MADofMB;
  // buffer and budget
  int64 CurrentBufferFullness; //LIZG 25/10/2002
  int64 RemainingBits;
  // bit allocations for RC_MODE_3
  int   RCPSliceBits;
  int   RCISliceBits;
  int   RCBSliceBits[RC_MAX_TEMPORAL_LEVELS];
  int   temporal_levels;
  int   hierNb[RC_MAX_TEMPORAL_LEVELS];
  int   NPslice;
  int   NIslice;
} rc_generic;

// macroblock activity
int    diffy[16][16];
int    qp_mbaff[2][2], qp_mbaff[2][2];
int    delta_qp_mbaff[2][2], delta_qp_mbaff[2][2];

// generic functions
int    Qstep2QP( double Qstep );
double QP2Qstep( int QP );
int    calc_MAD( void );
double ComputeFrameMAD( void );
void   update_rc(Macroblock *currMB, short best_mode);
void   handle_qp(Macroblock *currMB, short best_mode);

// rate control functions
// init/copy
void generic_alloc( rc_generic **prc );
void generic_free( rc_generic **prc );
void copy_rc_generic( rc_generic *dst, rc_generic *src );
void init_GOP_rc(void);
void init_frame_rc(int FrameNumberInFile);

// rate control CURRENT pointers
rc_generic   *generic_RC;
// rate control object pointers for RDPictureDecision buffering...
rc_generic   *generic_RC_init,   *generic_RC_best;


#endif

⌨️ 快捷键说明

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