📄 codingparameter.h
字号:
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 get8x8Mode () const { return m_ui8x8Mode; }
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 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 }
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 setExtendedPriorityId ( Bool b ) { m_bExtendedPriorityId = b; }
Void setNumSimplePris ( UInt n ) { m_uiNumSimplePris = 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 setAVCmode ( UInt p ) { m_uiAVCmode = p; }
Void setFrameWidth ( UInt p ) { m_uiFrameWidth = p; }
Void setFrameHeight ( UInt p ) { m_uiFrameHeight = p; }
Void setSymbolMode ( UInt p ) { m_uiSymbolMode = p; }
Void set8x8Mode ( UInt p ) { m_ui8x8Mode = 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 ();
// TMM_ESS
ResizeParameters* getResizeParameters ( UInt n ) { return m_acLayerParameters[n].getResizeParameters(); }
Void setLowPassEnhRef ( Double d )
{
m_dLowPassEnhRef = ( d < 0.0 ) ? 0.0 : ( ( d > 1.0 ) ? 1.0 : d );
}
Double getLowPassEnhRef () { return m_dLowPassEnhRef; }
Void setAdaptiveRefFGSWeights( UInt uiBlock, UInt uiCoeff )
{
// do not allow 1, to store it in 5-bit fixed-length
AOT( uiBlock > AR_FGS_MAX_BASE_WEIGHT );
m_uiBaseWeightZeroBaseBlock = (uiBlock <= 1) ? 0 : uiBlock;
AOT( uiCoeff > AR_FGS_MAX_BASE_WEIGHT );
m_uiBaseWeightZeroBaseCoeff = (uiCoeff <= 1) ? 0 : uiCoeff;
}
Void getAdaptiveRefFGSWeights( UInt& uiBlock, UInt& uiCoeff )
{
uiBlock = m_uiBaseWeightZeroBaseBlock;
uiCoeff = m_uiBaseWeightZeroBaseCoeff;
}
Void setFgsEncStructureFlag( UInt flag )
{
m_uiFgsEncStructureFlag = flag;
}
UInt getFgsEncStructureFlag( )
{
return m_uiFgsEncStructureFlag;
}
Void setLowPassFgsMcFilter ( UInt ui ) { m_uiLowPassFgsMcFilter = ui; }
UInt getLowPassFgsMcFilter () { return m_uiLowPassFgsMcFilter; }
Int getNonRequiredEnable () { return m_bNonRequiredEnable; } //NonRequired JVT-Q066 (06-04-08)
Void setFGSParallelDecodingFlag ( Bool bFlag ) { m_bFGSParallelDecodingFlag = bFlag; }
Bool getFGSParallelDecodingFlag () { return m_bFGSParallelDecodingFlag; }
//JVT-T054{
UInt getCGSSNRRefinement () const { return m_uiCGSSNRRefinementFlag;}
UInt getMaxLayerCGSSNR () const { return m_uiMaxLayerCGSSNR;}
UInt getMaxQualityLevelCGSSNR () const { return m_uiMaxQualityLevelCGSSNR;}
Void setCGSSNRRefinement ( UInt b ) { m_uiCGSSNRRefinementFlag = b; }
Void setMaxLayerCGSSNR ( UInt ui ) { m_uiMaxLayerCGSSNR = ui; }
Void setMaxQualityLevelCGSSNR( UInt ui ) { m_uiMaxQualityLevelCGSSNR= ui; }
//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 LMI {
Bool getTl0PicIdxPresentFlag () const { return m_uiTl0PicIdxPresentFlag > 0 ? true : false; }
Void setTl0PicIdxPresentFlag ( UInt ui ) { m_uiTl0PicIdxPresentFlag = ui; }
// JVT-U116 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}
UInt getRCDOBlockSizes () const { return m_uiRCDOBlockSizes; }
UInt getRCDOMotionCompensationY() const { return m_uiRCDOMotionCompensationY; }
UInt getRCDOMotionCompensationC() const { return m_uiRCDOMotionCompensationC; }
UInt getRCDODeblocking () const { return m_uiRCDODeblocking; }
UInt get4TapMotionCompensationY() const { return m_ui4TapMotionCompensationY; } // V090
Void set4TapMotionCompensationY( UInt ui ) { m_ui4TapMotionCompensationY = ui; } // V090
Void setRCDOBlockSizes ( UInt ui ) { m_uiRCDOBlockSizes = ui; }
Void setRCDOMotionCompensationY( UInt ui ) { m_uiRCDOMotionCompensationY = ui; }
Void setRCDOMotionCompensationC( UInt ui ) { m_uiRCDOMotionCompensationC = ui; }
Void setRCDODeblocking ( UInt ui ) { m_uiRCDODeblocking = ui; }
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; }
Void setMGSKeyPictureMotRef ( UInt ui ) { m_uiMGSKeyPictureMotionRefinement = ui; }
UInt getMGSKeyPictureMotRef () const { return m_uiMGSKeyPictureMotionRefinement; }
private:
UInt getLogFactor ( Double r0,
Double r1 );
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;
UInt m_uiNumberOfLayers;
LayerParameters m_acLayerParameters[MAX_LAYERS];
Bool m_bExtendedPriorityId;
UInt m_uiNumSimplePris;
EncoderConfigLineBase* m_pEncoderLines[MAX_CONFIG_PARAMS];
EncoderConfigLineBase* m_pLayerLines [MAX_CONFIG_PARAMS];
Double m_dLowPassEnhRef;
UInt m_uiBaseWeightZeroBaseBlock;
UInt m_uiBaseWeightZeroBaseCoeff;
UInt m_uiFgsEncStructureFlag;
UInt m_uiLowPassFgsMcFilter;
UInt m_uiAVCmode;
UInt m_uiFrameWidth;
UInt m_uiFrameHeight;
UInt m_uiSymbolMode;
UInt m_ui8x8Mode;
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_uiPreAndSuffixUnitEnable; //JVT-S036 lsj
UInt m_uiMMCOBaseEnable; //JVT-S036 lsj
Bool m_bFGSParallelDecodingFlag;
//JVT-T054{
UInt m_uiCGSSNRRefinementFlag;
UInt m_uiMaxLayerCGSSNR;
UInt m_uiMaxQualityLevelCGSSNR;
//JVT-T054}
//JVT-T073 {
UInt m_uiNestingSEIEnable;
UInt m_uiSceneInfoEnable;
//JVT-T073 }
// JVT-U085 LMI
UInt m_uiTlevelNestingFlag;
// JVT-U116 LMI
UInt m_uiTl0PicIdxPresentFlag;
//JVT-U106 Behaviour at slice boundaries{
UInt m_uiCIUFlag;
//JVT-U106 Behaviour at slice boundaries}
UInt m_uiRCDOBlockSizes;
UInt m_uiRCDOMotionCompensationY;
UInt m_uiRCDOMotionCompensationC;
UInt m_uiRCDODeblocking;
UInt m_ui4TapMotionCompensationY; // V090
UInt m_uiEncodeKeyPictures; // 0:only FGS[default], 1:FGS&MGS, 2:always[useless]
UInt m_uiMGSKeyPictureControl;
UInt m_uiMGSKeyPictureMotionRefinement;
};
#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 + -