📄 codingparameter.h
字号:
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 + -