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

📄 codingparameter.h

📁 SVC最新更新代码
💻 H
📖 第 1 页 / 共 4 页
字号:
  MotionVectorSearchParams&       getMotionVectorSearchParams       ()       {return m_cMotionVectorSearchParams; }
  LoopFilterParams&               getLoopFilterParams               ()       {return m_cLoopFilterParams; }
  LoopFilterParams&               getInterLayerLoopFilterParams     ()       {return m_cInterLayerLoopFilterParams; }

  const LayerParameters&          getLayerParameters  ( UInt    n )   const   { return m_acLayerParameters[n]; }
  LayerParameters&                getLayerParameters  ( UInt    n )           { return m_acLayerParameters[n]; }

//TMM_WP
  SampleWeightingParams&           getSampleWeightingParams(UInt uiLayerId)  {return m_cSampleWeightingParams[uiLayerId];}
//TMM_WP
  
  const std::string&              getInputFile            ()              const   { return m_cInputFile; }
  Double                          getMaximumFrameRate     ()              const   { return m_dMaximumFrameRate; }
  Double                          getMaximumDelay         ()              const   { return m_dMaximumDelay; }
  UInt                            getTotalFrames          ()              const   { return m_uiTotalFrames; }
  UInt                            getGOPSize              ()              const   { return m_uiGOPSize; }  
  UInt                            getDecompositionStages  ()              const   { return m_uiDecompositionStages; }
  UInt                            getIntraPeriod          ()              const   { return m_uiIntraPeriod; }
  UInt                            getIntraPeriodLowPass   ()              const   { return m_uiIntraPeriodLowPass; }
  UInt                            getNumRefFrames         ()              const   { return m_uiNumRefFrames; }
  UInt                            getBaseLayerMode        ()              const   { return m_uiBaseLayerMode; }
  UInt                            getNumberOfLayers       ()              const   { return m_uiNumberOfLayers; }
/*  Void                            getSimplePriorityMap    ( UInt uiSimplePri, UInt& uiTemporalLevel, UInt& uiLayer, UInt& uiQualityLevel )
                                                                          { uiTemporalLevel = m_uiTemporalLevelList[uiSimplePri];
                                                                            uiLayer         = m_uiDependencyIdList [uiSimplePri];
                                                                            uiQualityLevel  = m_uiQualityLevelList [uiSimplePri];
                                                                          }
 JVT-S036 lsj */
//TMM_WP
  UInt getIPMode()                  const { return m_uiIPMode; }
  UInt getBMode()                   const { return m_uiBMode; }
//TMM_WP

  UInt                            getAVCmode                ()              const   { return m_uiAVCmode; }
  UInt                            getFrameWidth             ()              const   { return m_uiFrameWidth; }
  UInt                            getFrameHeight            ()              const   { return m_uiFrameHeight; }
  UInt                            getSymbolMode             ()              const   { return m_uiSymbolMode; }
  UInt                            getEnable8x8Trafo         ()              const   { return m_uiEnable8x8Trafo; }
  UInt                            getScalingMatricesPresent ()              const   { return m_uiScalingMatricesPresent; }
  Double                          getBasisQp                ()              const   { return m_dBasisQp; }
  UInt                            getDPBSize                ()              const   { return m_uiDPBSize; }
  UInt                            getNumDPBRefFrames        ()              const   { return m_uiNumDPBRefFrames; }
  UInt                            getLog2MaxFrameNum        ()              const   { return m_uiLog2MaxFrameNum; }
  UInt                            getLog2MaxPocLsb          ()              const   { return m_uiLog2MaxPocLsb; }
  std::string                     getSequenceFormatString   ()              const   { return m_cSequenceFormatString; }
  Double                          getDeltaQpLayer           ( UInt ui )     const   { return m_adDeltaQpLayer[ui]; }
  UInt                            getMaxRefIdxActiveBL0     ()              const   { return m_uiMaxRefIdxActiveBL0; }
  UInt                            getMaxRefIdxActiveBL1     ()              const   { return m_uiMaxRefIdxActiveBL1; }
  UInt                            getMaxRefIdxActiveP       ()              const   { return m_uiMaxRefIdxActiveP; }

  Void                            setInputFile              ( Char*   p )   { m_cInputFile            = p; }

  UInt                            getLARDOEnable            ()              const   { return m_uiLARDOEnable;} //JVT-R057 LA-RDO
  UInt														getEssRPChkEnable				  ()							const		{	return m_uiEssRPChkEnable;}
  UInt														getMVThres							  ()							const		{	return m_uiMVThres;}

  UInt							              getPreAndSuffixUnitEnable	()		          const	  { return m_uiPreAndSuffixUnitEnable;} //prefix unit
	UInt							              getMMCOBaseEnable		      ()			        const	  { return m_uiMMCOBaseEnable; } //JVT-S036 lsj
  // JVT-T073 {
  UInt                            getNestingSEIEnable       ()              const   { return m_uiNestingSEIEnable; }
  UInt                            getSceneInfoEnable        ()              const   { return m_uiSceneInfoEnable; }
  // JVT-T073 }

	UInt														getIntegrityCheckSEIEnable()						const   { return m_uiIntegrityCheckSEIEnable; }//JVT-W052
  Void                            setIntegrityCheckSEIEnable( UInt  ui )  { m_uiIntegrityCheckSEIEnable = ui;}           //JVT-W052 bug_fixed
  Void                            setMaximumFrameRate     ( Double  d )   { m_dMaximumFrameRate     = d; }
  Void                            setMaximumDelay         ( Double  d )   { m_dMaximumDelay         = d; }
  Void                            setTotalFrames          ( UInt    n )   { m_uiTotalFrames         = n; }
  Void                            setGOPSize              ( UInt    n )   { m_uiGOPSize             = n; }
  Void                            setDecompositionStages  ( UInt    n )   { m_uiDecompositionStages = n; }
  Void                            setIntraPeriod          ( UInt    n )   { m_uiIntraPeriod         = n; }
  Void                            setIntraPeriodLowPass   ( UInt    n )   { m_uiIntraPeriodLowPass  = n; }
  Void                            setNumRefFrames         ( UInt    n )   { m_uiNumRefFrames        = n; }
  Void                            setBaseLayerMode        ( UInt    n )   { m_uiBaseLayerMode       = n; }
  Void                            setNumberOfLayers       ( UInt    n )   { m_uiNumberOfLayers      = n; }
 /* Void                            setSimplePriorityMap ( UInt uiSimplePri, UInt uiTemporalLevel, UInt uiLayer, UInt uiQualityLevel )
                                                                          { m_uiTemporalLevelList[uiSimplePri] = uiTemporalLevel;
                                                                            m_uiDependencyIdList [uiSimplePri] = uiLayer;
                                                                            m_uiQualityLevelList [uiSimplePri] = uiQualityLevel;
                                                                          }
 JVT-S036 lsj */
  Void                            setFrameWidth             ( UInt    p )   { m_uiFrameWidth              = p; }
  Void                            setFrameHeight            ( UInt    p )   { m_uiFrameHeight             = p; }
  Void                            setSymbolMode             ( UInt    p )   { m_uiSymbolMode              = p; }
  Void                            setEnable8x8Trafo         ( UInt    p )   { m_uiEnable8x8Trafo          = p; }
  Void                            setScalingMatricesPresent ( UInt    p )   { m_uiScalingMatricesPresent  = p; }
  Void                            setBasisQp                ( Double  p )   { m_dBasisQp                  = p; }
  Void                            setDPBSize                ( UInt    p )   { m_uiDPBSize                 = p; }
  Void                            setNumDPBRefFrames        ( UInt    p )   { m_uiNumDPBRefFrames         = p; }
  Void                            setLog2MaxFrameNum        ( UInt    p )   { m_uiLog2MaxFrameNum         = p; }
  Void                            setLog2MaxPocLsb          ( UInt    p )   { m_uiLog2MaxPocLsb           = p; }
  Void                            setSequenceFormatString   ( Char*   p )   { m_cSequenceFormatString     = p; }
  Void                            setDeltaQpLayer           ( UInt    n,
                                                              Double  p )   { m_adDeltaQpLayer[n]         = p; }
  Void                            setMaxRefIdxActiveBL0     ( UInt    p )   { m_uiMaxRefIdxActiveBL0      = p; }
  Void                            setMaxRefIdxActiveBL1     ( UInt    p )   { m_uiMaxRefIdxActiveBL1      = p; }
  Void                            setMaxRefIdxActiveP       ( UInt    p )   { m_uiMaxRefIdxActiveP        = p; }

  ErrVal                          check                     ();
  
  Int					              		  getNonRequiredEnable      ()			{ return m_bNonRequiredEnable; }  //NonRequired JVT-Q066 (06-04-08)

//JVT-T054{
  UInt                            getCGSSNRRefinement       ()              const   { return m_uiCGSSNRRefinementFlag;}
  Void                            setCGSSNRRefinement       ( UInt    b )   { m_uiCGSSNRRefinementFlag = b; }
//JVT-T054}
// JVT-U085 LMI {
  Bool                            getTlevelNestingFlag      ()              const   { return m_uiTlevelNestingFlag > 0 ? true : false; }
  Void                            setTlevelNestingFlag      ( UInt  ui )    { m_uiTlevelNestingFlag = ui; }
// JVT-U085 LMI }
// JVT-U116 W062 LMI {
  Bool                            getTl0DepRepIdxSeiEnable  ()              const   { return m_uiTl0DepRepIdxSeiEnable > 0 ? true : false; }
  Void                            setTl0DepRepIdxSeiEnable  ( UInt  ui )    { m_uiTl0DepRepIdxSeiEnable = ui; }
// JVT-U116 W062 LMI }

  //JVT-U106 Behaviour at slice boundaries{
  void   setCIUFlag(UInt  flag)
  {
	  m_uiCIUFlag=flag;
  }
  UInt   getCIUFlag()
  {
	  return m_uiCIUFlag;
  }
  //JVT-U106 Behaviour at slice boundaries}

  Void  setEncodeKeyPictures      ( UInt ui )          { m_uiEncodeKeyPictures = ui; }
  UInt  getEncodeKeyPictures      ()           const   { return m_uiEncodeKeyPictures; }

  Void  setMGSKeyPictureControl   ( UInt ui )          { m_uiMGSKeyPictureControl = ui; }
  UInt  getMGSKeyPictureControl   ()           const   { return m_uiMGSKeyPictureControl; }

  // JVT-V068 HRD {
  UInt getEnableVUI()    { return getEnableNalHRD() || getEnableVclHRD(); }
  Bool getEnableNalHRD() { return m_uiNalHRD == 0 ? false: true; }
  Bool getEnableVclHRD() { return m_uiVclHRD == 0 ? false: true; }
  UInt getEnableVUITimingInfo() { return getEnableVUI(); }
  UInt getEnableSEIBufferingPeriod() { return getEnableNalHRD() || getEnableVclHRD(); }
  UInt getEnableSEIPicTiming() { return getEnableNalHRD() || getEnableVclHRD(); }
  // JVT-V068 HRD }
  //JVT-W049 {
  Bool getEnableRedundantKeyPic() {return m_uiRedundantKeyPic == 0 ? false:true; }
  //JVT-W049 }
  UInt  getBiPred8x8Disable       ()  const           { return m_uiBiPred8x8Disable; }
  Void  setBiPred8x8Disable       ( UInt ui )         { m_uiBiPred8x8Disable = ui; }
  UInt  getMCBlks8x8Disable       () const            { return m_uiMCBlks8x8Disable; }
  Void  setMCBlks8x8Disable       ( UInt ui )         { m_uiMCBlks8x8Disable = ui; }

private:
  UInt    getLogFactor( Double  r0, Double  r1 );

  ErrVal  xCheckAndSetProfiles();


protected:
  std::string               m_cInputFile;
  Double                    m_dMaximumFrameRate;
  Double                    m_dMaximumDelay;
  UInt                      m_uiTotalFrames;

  UInt                      m_uiGOPSize;
  UInt                      m_uiDecompositionStages;
  UInt                      m_uiIntraPeriod;
  UInt                      m_uiIntraPeriodLowPass;
  UInt                      m_uiNumRefFrames;
  UInt                      m_uiBaseLayerMode;

  MotionVectorSearchParams  m_cMotionVectorSearchParams;
  LoopFilterParams          m_cLoopFilterParams;
  LoopFilterParams          m_cInterLayerLoopFilterParams;

  UInt                      m_uiNumberOfLayers;
  LayerParameters           m_acLayerParameters[MAX_LAYERS];

  EncoderConfigLineBase*    m_pEncoderLines[MAX_CONFIG_PARAMS];
  EncoderConfigLineBase*    m_pLayerLines  [MAX_CONFIG_PARAMS];

  UInt                      m_uiAVCmode;
  UInt                      m_uiFrameWidth;
  UInt                      m_uiFrameHeight;
  UInt                      m_uiSymbolMode;
  UInt                      m_uiEnable8x8Trafo;
  UInt                      m_uiScalingMatricesPresent;
  Double                    m_dBasisQp;
  UInt                      m_uiDPBSize;
  UInt                      m_uiNumDPBRefFrames;
  UInt                      m_uiLog2MaxFrameNum;
  UInt                      m_uiLog2MaxPocLsb;
  std::string               m_cSequenceFormatString;
  Double                    m_adDeltaQpLayer[6];
  UInt                      m_uiMaxRefIdxActiveBL0;
  UInt                      m_uiMaxRefIdxActiveBL1;
  UInt                      m_uiMaxRefIdxActiveP;

//TMM_WP
  UInt m_uiIPMode;
  UInt m_uiBMode;

  SampleWeightingParams m_cSampleWeightingParams[MAX_LAYERS];
//TMM_WP

  Int						m_bNonRequiredEnable; //NonRequired JVT-Q066
  UInt                       m_uiLARDOEnable; //JVT-R057 LA-RDO

	UInt						m_uiEssRPChkEnable;
	UInt						m_uiMVThres;

  UInt						m_uiPreAndSuffixUnitEnable; //JVT-S036 lsj 
  UInt						m_uiMMCOBaseEnable;  //JVT-S036 lsj

//JVT-T054{
  UInt                      m_uiCGSSNRRefinementFlag;
//JVT-T054}
//JVT-T073 {
  UInt                      m_uiNestingSEIEnable;
  UInt                      m_uiSceneInfoEnable;
//JVT-T073 }

	//JVT-W052
	UInt											m_uiIntegrityCheckSEIEnable;
	//JVT-W052

// JVT-U085 LMI 
  UInt                      m_uiTlevelNestingFlag;
// JVT-U116,W062 LMI
  //UInt                      m_uiTl0PicIdxPresentFlag;
  UInt                      m_uiTl0DepRepIdxSeiEnable;
  //JVT-U106 Behaviour at slice boundaries{
  UInt                      m_uiCIUFlag;
  //JVT-U106 Behaviour at slice boundaries}

  UInt    m_uiEncodeKeyPictures;  // 0:only FGS[default], 1:FGS&MGS, 2:always[useless]
  UInt    m_uiMGSKeyPictureControl;

  // JVT-V068 HRD {
  UInt    m_uiNalHRD;
  UInt    m_uiVclHRD;
  // JVT-V068 HRD }
	//JVT-W049 {
  UInt    m_uiRedundantKeyPic;
  //JVT-W049 }
  UInt    m_uiBiPred8x8Disable;
  UInt    m_uiMCBlks8x8Disable;

  // JVT-W043
  public:
    UInt                      m_uiRCMinQP;
    UInt                      m_uiRCMaxQP;
    UInt                      m_uiMaxQpChange;
    UInt                      m_uiInitialQp;
    UInt                      m_uiBasicUnit;
    UInt                      m_uiBitRate;
    UInt                      m_uiRateControlEnable;
    UInt                      m_uiAdaptInitialQP;
};

#if defined( MSYS_WIN32 )
# pragma warning( default: 4275 )
#endif


H264AVC_NAMESPACE_END


#endif // !defined(AFX_CODINGPARAMETER_H__8403A680_A65D_466E_A411_05C3A7C0D59F__INCLUDED_)

⌨️ 快捷键说明

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