📄 fgssubbandencoder.h
字号:
UInt& ruiCbp,
B8x8Idx cIdx,
Bool bFrame );
ErrVal xRequantizeMacroblock ( MbDataAccess& rcMbDataAccess,
MbDataAccess& rcMbDataAccessBL );
ErrVal xResidualTransform ();
ErrVal xMotionEstimation ();
ErrVal xEncodeMotionData ( UInt uiMbYIdx,
UInt uiMbXIdx );
ErrVal xEncodeLumaCbpVlcStart( UInt& uiLumaNextMbX,
UInt& uiLumaNextMbY,
UInt& uiNext8x8Idx,
UInt uiLastMbX,
UInt uiLastMbY,
UInt& ruiLumaCbpBitCount);
ErrVal xEncodeLumaCbpVlc ( UInt uiCurrMbIdxX,
UInt uiCurrMbIdxY,
UInt& uiNextMbX,
UInt& uiNextMbY,
UInt& uiNext8x8Idx,
UInt uiLastMbX,
UInt uiLastMbY,
UInt& ruiCbpBitCount);
ErrVal xEncodeChromaCbpVlcStart( UInt uiCurrMbIdxX,
UInt uiCurrMbIdxY,
UInt& ruiChromaCbpBitCount);
ErrVal xEncodeChromaCbpVlc ( UInt uiCurrMbIdxX,
UInt uiCurrMbIdxY,
UInt& uiChromaCbpNextMbX,
UInt& uiChromaCbpNextMbY,
UInt uiLastMbX,
UInt uiLastMbY,
UInt& ruiChromaCbpBitCount);
ErrVal xEncodingFGS ( Bool& rbFinished,
Bool& rbCorrupted,
UInt uiMaxBits,
UInt* puiPDFragBits,
UInt& ruiNumPDFrags,
UInt uiFracNb,
FILE* pFile ); //JVT-P031
ErrVal xEncodeNewCoefficientLuma ( MbDataAccess *pcMbDataAccessBL,
MbDataAccess *pcMbDataAccessEL,
MbFGSCoefMap &rcMbFGSCoefMap,
const S4x4Idx &rcIdx,
Bool bFrame );
ErrVal xEncodeNewCoefficientChromaDC ( MbDataAccess *pcMbDataAccessBL,
MbDataAccess *pcMbDataAccessEL,
MbFGSCoefMap &rcMbFGSCoefMap,
const CPlaneIdx &rcCPlaneIdx,
Int& riLastQp,
UInt uiChromaScanIndex );
ErrVal xEncodeNewCoefficientChromaAC ( MbDataAccess *pcMbDataAccessBL,
MbDataAccess *pcMbDataAccessEL,
MbFGSCoefMap &rcMbFGSCoefMap,
const CIdx &rcCIdx,
Int& riLastQp,
UInt uiChromaScanIndex,
Bool bFrame );// TMM_INTERLACE
ErrVal xEncodeCoefficientLumaRef ( MbDataAccess *pcMbDataAccessBL,
MbDataAccess *pcMbDataAccessEL,
MbFGSCoefMap &rcMbFGSCoefMap,
const S4x4Idx &rcIdx,
UInt uiScanIndex);
ErrVal xEncodeCoefficientChromaDCRef ( MbDataAccess *pcMbDataAccessBL,
MbDataAccess *pcMbDataAccessEL,
MbFGSCoefMap &rcMbFGSCoefMap,
const CPlaneIdx &rcCPlaneIdx,
UInt uiDCIdx );
ErrVal xEncodeCoefficientChromaACRef ( MbDataAccess *pcMbDataAccessBL,
MbDataAccess *pcMbDataAccessEL,
MbFGSCoefMap &rcMbFGSCoefMap,
const CIdx &rcCIdx,
UInt uiScanIdx );
ErrVal xPrescanCoefficientLumaRef ( UInt uiBlockYIndex,
UInt uiBlockXIndex,
UInt uiScanIndex ,
Bool bFrame );// TMM_INTERLACE
ErrVal xPrescanCoefficientChromaDCRef( UInt uiPlane,
UInt uiMbYIdx,
UInt uiMbXIdx,
UInt uiDCIdx );
ErrVal xPrescanCoefficientChromaACRef( UInt uiPlane,
UInt uiB8YIdx,
UInt uiB8XIdx,
UInt uiScanIdx );
//JVT-P031
ErrVal xStoreFGSState(UInt iLumaScanIdx,
UInt iChromaDCScanIdx,
UInt iChromaACScanIdx,
UInt iStartCycle,
UInt iCycle,
UInt uiPass,
UInt uiFragIdx,
UInt uiMbYIdx,
UInt uiMbXIdx,
B8x8Idx c8x8Idx,
S4x4Idx cIdx,
UInt iLastBitsLuma,
UInt uiBitsLast,
UInt uiFGSPart,
CPlaneIdx cCPlaneIdx,
Int iLastQP);
ErrVal xRestoreFGSState(UInt& riLumaScanIdx,
UInt& riChromaDCScanIdx,
UInt& riChromaACScanIdx,
UInt& riStartCycle,
UInt& riCycle,
UInt& ruiPass,
UInt& ruiFragIdx,
// UInt& ruiMbYIdx,
// UInt& ruiMbXIdx,
// UInt& ruiB8YIdx,
// UInt& ruiB8XIdx,
// UInt& ruiBlockYIdx,
// UInt& ruiBlockXIdx,
UInt& riLastBitsLuma,
// UInt& ruiBitsLast,
// UInt& ruiFGSPart,
// UInt& ruiPlane,
Int& riLastQP);
ErrVal xSaveCodingPath();
ErrVal xRestoreCodingPath();
//~JVT-P031
ErrVal xEncodeMbHeader ( MbDataAccess* pcMbDataAccessBL,
MbDataAccess* pcMbDataAccessEL,
MbFGSCoefMap &rcMbFGSCoefMap,
Int& riLastQp );
private:
MbSymbolWriteIf* m_pcSymbolWriter;
ControlMngH264AVCEncoder* m_pcControlMng;
MbEncoder* m_pcMbEncoder;
Bool m_bChromaCbpTransition;
Int m_iRemainingTCoeff;
Double m_dLambda;
Int m_iMaxQpDelta;
SliceType m_eSliceType;
UInt m_uiFirstMbInSlice;
UInt m_uiNumMbsInSlice;
IntFrame* m_pcOrgResidual;
UInt m_auiScanPosVectLuma [16];
UInt m_auiScanPosVectChromaDC[ 4];
Bool m_bTraceEnable;
//JVT-P031
UInt m_iLumaScanIdx;
UInt m_iChromaDCScanIdx;
UInt m_iChromaACScanIdx;
UInt m_iStartCycle;
UInt m_iCycle;
UInt m_uiPass;
UInt m_uiFragIdx;
UInt m_uiMbYIdx;
UInt m_uiMbXIdx;
B8x8Idx m_c8x8Idx;
S4x4Idx m_cIdx;
CPlaneIdx m_cCPlaneIdx;
UInt m_iLastBitsLuma;
UInt m_uiBitsLast;
UInt m_uiFGSPart;
Int m_iLastQP;
Bool m_bUseDiscardableUnit;
MbTransformCoeffs ** m_aMyELTransformCoefs;
MbTransformCoeffs ** m_aMyBLTransformCoefs;
UInt * m_auiMbCbpStored;
UInt * m_auiBCBPStored;
Int * m_aiBLQP;
Bool * m_abELtransform8x8;
UChar m_ucLastByte;//FIX_FRAG_CAVLC
UInt m_uiLastBitPos; //FIX_FRAG_CAVLC
YuvBufferCtrl** m_papcYuvHalfPelBufferCtrl;
QuarterPelFilter* m_pcQuarterPelFilter;
MotionEstimation* m_pcMotionEstimation;
MbCoder* m_pcMbCoder;
IntFrame* m_pcOrgFrame;
IntFrame* m_pcPredSignal;
RefFrameList* m_pcRefFrameList0;
RefFrameList* m_pcRefFrameList1;
IntFrame* m_pcFGSPredFrame;
RefFrameList* m_pcRefFrameListDiff;
UInt m_uiNumMaxIter;
UInt m_uiIterSearchRange;
UInt m_uiLastMbNum;
UInt uiLastMbX;
UInt uiLastMbY;
UInt uiLumaCbpBitCount;
UInt uiLumaCbpNextMbX;
UInt uiLumaCbpNextMbY;
UInt uiLumaCbpNext8x8Idx;
UInt uiChromaCbpBitCount;
UInt uiChromaCbpNextMbX;
UInt uiChromaCbpNextMbY;
};
H264AVC_NAMESPACE_END
#endif // !defined(AFX_FGSSUBBANDENCODER_H__02F9A3A4_BE1C_4D88_86D9_98AF451F04CD__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -