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

📄 fgssubbandencoder.h

📁 JMVM MPEG MVC/3DAV 测试平台 国际通用标准
💻 H
📖 第 1 页 / 共 2 页
字号:
  ErrVal            xSetSymbols8x8        ( TCoeff*                     piCoeff,
                                            UInt                        uiMbX,
                                            UInt                        uiMbY,
                                            UInt&                       uiCoeffCost,
                                            UInt&                       ruiCbp,
                                            LumaIdx                     cIdx );


  ErrVal            xRequantizeMacroblock ( MbDataAccess&               rcMbDataAccess,
                                            MbDataAccess&               rcMbDataAccessBL );

  ErrVal            xScaleBaseLayerCoeffs ();
  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                uiFracNb, 
                                                    FILE*               pFile ); //JVT-P031

  ErrVal            xEncodeSigHeadersLuma         ( UInt                uiBlockYIndex,
                                                    UInt                uiBlockXIndex,
                                                    Int&                riLastQp );

  ErrVal            xEncodeNewCoefficientLuma     ( UInt                uiBlockYIndex,
                                                    UInt                uiBlockXIndex );
  ErrVal            xEncodeNewCoefficientChromaDC ( UInt                uiPlane,
                                                    UInt                uiMbYIdx,
                                                    UInt                uiMbXIdx,
                                                    Int&                riLastQp,
                                                    UInt                uiChromaScanIndex );
  ErrVal            xEncodeNewCoefficientChromaAC ( UInt                uiPlane,
                                                    UInt                uiB8YIdx,
                                                    UInt                uiB8XIdx,
                                                    Int&                riLastQp,
                                                    UInt                uiChromaScanIndex );
  
  ErrVal            xEncodeCoefficientLumaRef     ( UInt                uiBlockYIndex,
                                                    UInt                uiBlockXIndex,
                                                    UInt                uiScanIndex );
  ErrVal            xEncodeCoefficientChromaDCRef ( UInt                uiPlane,
                                                    UInt                uiMbYIdx,
                                                    UInt                uiMbXIdx,
                                                    UInt                uiDCIdx );
  ErrVal            xEncodeCoefficientChromaACRef ( UInt                uiPlane,
                                                    UInt                uiB8YIdx,
                                                    UInt                uiB8XIdx,
                                                    UInt                uiScanIdx );
  ErrVal            xPrescanCoefficientLumaRef    ( UInt                uiBlockYIndex,
                                                    UInt                uiBlockXIndex,
                                                    UInt                uiScanIndex );
  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 bAllowChromaDC,
                             UInt bAllowChromaAC,
                             UInt uiMbYIdx,
                             UInt uiMbXIdx,
                             UInt uiB8YIdx,
                             UInt uiB8XIdx,
                             UInt uiBlockYIdx,
                             UInt uiBlockXIdx,
                             UInt iLastBitsLuma,
                             UInt uiBitsLast,
                             UInt uiFGSPart,
                             UInt uiPlane,
                             Int iLastQP);

  ErrVal            xRestoreFGSState(UInt& riLumaScanIdx,
                             UInt& riChromaDCScanIdx,
                             UInt& riChromaACScanIdx,
                             UInt& riStartCycle,
                             UInt& riCycle,
                             UInt& ruiPass,
                             UInt& rbAllowChromaDC,
                             UInt& rbAllowChromaAC,
                             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
private:
  MbSymbolWriteIf*  m_pcSymbolWriter;
  ControlMngH264AVCEncoder* m_pcControlMng;
  MbEncoder*        m_pcMbEncoder;
  Bool              m_bChromaCbpTransition;

  Int               m_iRemainingTCoeff;
  Double            m_dLambda;
  Int               m_iMaxQpDelta;
  SliceHeader*      m_pcSliceHeader;
  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_bAllowChromaDC;
  UInt              m_bAllowChromaAC;
  UInt              m_uiMbYIdx;
  UInt              m_uiMbXIdx;
  UInt              m_uiB8YIdx;
  UInt              m_uiB8XIdx;
  UInt              m_uiBlockYIdx;
  UInt              m_uiBlockXIdx;
  UInt               m_iLastBitsLuma;
  UInt              m_uiBitsLast;
  UInt              m_uiFGSPart;
  UInt              m_uiPlane;
  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;
};



H264AVC_NAMESPACE_END


#endif // !defined(AFX_FGSSUBBANDENCODER_H__02F9A3A4_BE1C_4D88_86D9_98AF451F04CD__INCLUDED_)

⌨️ 快捷键说明

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