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

📄 gopencoder.h

📁 jsvm开发代码包括抽样,编码,抽取,解码等一系列功能,可以做工具或研究用
💻 H
📖 第 1 页 / 共 4 页
字号:
  ErrVal  xInitBaseLayerData            ( ControlData&                rcControlData, 
                                          UInt                        uiBaseLevel,  //TMM_ESS
                                          UInt                        uiFrame,      //TMM_ESS
                                          Bool                        bMotion,
																					PicType                     ePicType ); 

  ErrVal  xGetPredictionListsFieldKey  (  RefFrameList&               rcRefList0,
		                                      UInt                        uiList0Size,
                                          PicType                     ePicType );

  ErrVal  xGetPredictionListsField     (  RefFrameList&               rcRefList0,
                                          RefFrameList&               rcRefList1,
                                          UInt                        uiBaseLevel,
                                          UInt                        uiFrame,
                                          RefListUsage                eRefListUsage,
																					Bool                        bHalfPel,
                                          IntFrame*                   pcTmpFrame,
                                          PicType                     ePicType );

  ErrVal  xInitControlDataMotion        ( UInt                        uiBaseLevel,
                                          UInt                        uiFrame,
                                          Bool                        bMotionEstimation,
                                          PicType                     ePicType );

  ErrVal  xInitControlDataLowPass       ( UInt                        uiFrameIdInGOP,
                                          UInt                        uiBaseLevel,  //TMM_ESS
                                          UInt                        uiFrame,
                                          PicType                     ePicType );  

  ErrVal  xInitControlDataHighPass      ( UInt                        uiFrameIdInGOP,
                                          UInt                        uiBaseLevel,   //TMM_ESS
                                          UInt                        uiFrame,
                                          PicType                     ePicType );

  ErrVal  xGetConnections               ( Double&                     rdL0Rate,
                                          Double&                     rdL1Rate,
                                          Double&                     rdBiRate );


  //===== stage encoding =====
  ErrVal  xEncodeKeyPicture             ( Bool&                       rbKeyPicCoded,                         
                                          UInt                        uiFrame,
                                          AccessUnitList&             rcAccessUnitList,
                                          PicOutputDataList&          rcPicOutputDataList );
  ErrVal  xEncodeNonKeyPicture          ( UInt                        uiBaseLevel,
                                          UInt                        uiFrame,
                                          AccessUnitList&             rcAccessUnitList,
                                          PicOutputDataList&          rcPicOutputDataList );
  ErrVal  xOutputPicData                ( PicOutputDataList&          rcPicOutputDataList );

  //===== basic encoding =====
  ErrVal  xEncodeLowPassSignal          ( ExtBinDataAccessorList&     rcOutExtBinDataAccessorList,
                                          ControlData&                rcResidualControlData,
																					IntFrame*                   pcOrgFrame,
                                          IntFrame*                   pcFrame,
                                          IntFrame*                   pcRecSubband,
                                          IntFrame*                   pcPredSignal,
                                          UInt&                       ruiBits,
                                          PicOutputDataList&          rcPicOutputDataList,
																					PicType                     ePicType );


  ErrVal  xEncodeHighPassSignal         ( ExtBinDataAccessorList&     rcOutExtBinDataAccessorList,
                                          ControlData&                rcControlData,
                                          IntFrame*                   pcOrgFrame, 
                                          IntFrame*                   pcFrame,
                                          IntFrame*                   pcResidual,
                                          IntFrame*                   pcPredSignal,
																					IntFrame*										pcSRFrame, // JVT-R091
                                          UInt&                       ruiBits,
                                          UInt&                       ruiBitsRes,
                                          PicOutputDataList&          rcPicOutputDataList,
																					PicType                     ePicType );

  ErrVal  xEncodeFGSLayer               ( ExtBinDataAccessorList&     rcOutExtBinDataAccessorList,
                                          ControlData&                rcControlData,
                                          IntFrame*                   pcFrame,
                                          IntFrame*                   pcResidual,
                                          IntFrame*                   pcPredSignal,
                                          IntFrame*                   pcTempFrame,
                                          IntFrame*                   pcSubband,
                                          IntFrame*                   pcCLRec,
                                          UInt                        uiFrameIdInGOP,
                                          IntFrame*                   pcOrgFrame,
                                          IntFrame*                   pcHighPassPredSignal,
                                          RefFrameList&               rcRefFrameList0,
                                          RefFrameList&               rcRefFrameList1,
                                          UInt&                       ruiBits,
                                          PicOutputDataList&          rcPicOutputDataList,
																					PicType                     ePicType  );


  //===== motion estimation / compensation =====
  ErrVal  xMotionCompensation           ( IntFrame*                   pcMCFrame,
                                          RefFrameList*               pcRefFrameList0,
                                          RefFrameList*               pcRefFrameList1,
                                          MbDataCtrl*                 pcMbDataCtrl,
                                          SliceHeader&                rcSH, 
                                          Bool                        bSR  = false );
  ErrVal  xMotionCompensationSRFrame    ( IntFrame*                   pcMCFrame,
                                          RefFrameList*               pcRefFrameList0,
                                          RefFrameList*               pcRefFrameList1,
                                          MbDataCtrl*                 pcMbDataCtrl,
                                          SliceHeader&                rcSH, 
                                          MbDataCtrl*                 pcBaseMbDataCtrl
                                          );

  ErrVal  xMotionEstimation             ( RefFrameList*               pcRefFrameList0,
                                          RefFrameList*               pcRefFrameList1,
                                          IntFrame*                   pcOrigFrame,
                                          IntFrame*                   pcIntraRec,
                                          ControlData&                rcControlData,
                                          Bool                        bBiPredOnly,
                                          UInt                        uiNumMaxIter,
                                          // JVT-S054 (REPLACE) ->
                                          //UInt                        uiIterSearchRange );
                                          UInt                        uiIterSearchRange,
                                          UInt                        uiFrameIdInGOP ,
																					PicType                     ePicType  );
                                          // JVT-S054 (REPLACE) <-
  ErrVal  xFixOrgResidual								( IntFrame*                   pcFrame,
																					IntFrame*										pcOrgPred,
																					IntFrame*										pcResidual,
																					IntFrame*										pcSRFrame,
                                          ControlData&                pcCtrlData );
	//--

  //===== auxiliary functions =====
  ErrVal  xCalculateAndAddPSNR          ( UInt                        uiStage,
                                          UInt                        uiFrame,
                                          PicBufferList&              rcPicBufferInputList,
                                          PicOutputDataList&          rcPicOutputDataList );

  ErrVal  xFillAndUpsampleFrame         ( IntFrame*                   pcFrame,
		                                      PicType                     ePicType,
																					Bool                        bFrameMbsOnlyFlag );

  ErrVal  xFillAndExtendFrame           ( IntFrame*                   pcFrame,
		                                      PicType                     ePicType,
																					Bool                        bFrameMbsOnlyFlag );

  ErrVal  xZeroIntraMacroblocks         ( IntFrame*                   pcFrame,
                                          ControlData&                pcCtrlData,
																					PicType                     ePicType );

  ErrVal  xClipIntraMacroblocks         ( IntFrame*                   pcFrame,
                                          ControlData&                rcCtrlData,
                                          Bool                        bClipAll,
																					PicType                     ePicType );

  ErrVal  xAddBaseLayerResidual         ( ControlData&                rcControlData,
                                          IntFrame*                   pcFrame,
                                          Bool                        bSubtract,
																					PicType                     ePicType );
  ErrVal  xUpdateLowPassRec             ();
  IntFrame* xGetRefFrame                ( IntFrame**                  papcRefFrameList,
                                          UInt                        uiRefIndex,
                                          RefListUsage                eRefListUsage );
  ErrVal  xClearELPics                  ();
  ErrVal  xUpdateELPics                 ();


  //===== slice header =====
  ErrVal        xSetRplr            ( RplrBuffer& rcRplrBuffer, UIntList cPicNumList, UInt uiCurrPicNr, PicType ePicType );

  ErrVal        xSetRplrAndMmco     ( SliceHeader& rcSH );

  ErrVal        xSetRplrAndMmcoFld  ( SliceHeader& rcSH );

  ErrVal        xWriteSEI           ( ExtBinDataAccessorList& rcOutExtBinDataAccessorList, SliceHeader& rcSH, UInt& ruiBit );
  ErrVal		xWriteSuffixUnit    ( ExtBinDataAccessorList& rcOutExtBinDataAccessorList, SliceHeader& rcSH, UInt& ruiBit );//JVT-S036 lsj 
   ErrVal		xWritePrefixUnit    ( ExtBinDataAccessorList& rcOutExtBinDataAccessorList, SliceHeader& rcSH, UInt& ruiBit );//prefix unit
	ErrVal		xSetMmcoBase		( SliceHeader& rcSH, UInt iNum ); //JVT-S036 lsj
  //NonRequired JVT-Q066 (06-04-08){{
  ErrVal		xWriteNonRequiredSEI( ExtBinDataAccessorList& rcOutExtBinDataAccessorList, SEI::NonRequiredSei* pcNonRequiredSei, UInt& ruiBit ); 
  ErrVal		xSetNonRequiredSEI  ( SliceHeader* pcSliceHeader, SEI::NonRequiredSei* pcNonRequiredSei);
  //ErrVal		xWriteNonRequiredSEI( ExtBinDataAccessorList& rcOutExtBinDataAccessorList, UInt& ruiBit ); 
  //NonRequired JVT-Q066 (06-04-08)}}
  ErrVal        xGetFrameNumList    ( SliceHeader& rcSH, UIntList& rcFrameNumList, ListIdx eLstIdx, UInt uiCurrBasePos );

  ErrVal        xGetFieldNumList    ( SliceHeader& rcSH, UIntList& rcFrameNumList, ListIdx eLstIdx, UInt uiCurrBasePos );
 
  MbDataCtrl*   xGetMbDataCtrlL1    ( SliceHeader& rcSH, UInt uiCurrBasePos );
  Void          xAssignSimplePriorityId ( SliceHeader *pcSliceHeader );
  
   //===== ESS =====
   ErrVal		xFillPredictionLists_ESS( UInt uiBaseLevel , UInt uiFrame );

  ErrVal            setDiffPrdRefLists  ( RefFrameList&               diffPrdRefList,
                                          IntFrame*                   baseFrame,  
                                          IntFrame*                   enhFrame,
                                          YuvBufferCtrl*              pcYuvFullPelBufferCtrl);
  ErrVal            freeDiffPrdRefLists ( RefFrameList& diffPrdRefList);

  UInt				getPreAndSuffixUnitEnable()	{return m_uiPreAndSuffixUnitEnable;} //JVT-S036 lsj 
	UInt							  getMMCOBaseEnable		  ()			  const	  { return m_uiMMCOBaseEnable; } //JVT-S036 lsj

  //S051{
  Bool	xSIPCheck	(UInt POC);
  int	xGetMbDataCtrlL1Pos( const SliceHeader& rcSH, UInt uiCurrBasePos );
  //S051}
  Void setMCResizeParameters   (ResizeParameters*				resizeParameters);

  //JVT-U106 Behaviour at slice boundaries{
  ErrVal xConstrainedIntraUpsampling(IntFrame*pcFrame,
									 IntFrame*pcUpsampling, 
									 IntFrame*pcTemp,
									 MbDataCtrl* pcBaseDataCtrl,
									 ReconstructionBypass* pcReconstructionBypass,
									 ResizeParameters* pcResizeParameters
                   , PicType ePicType);
  void  xGetPosition(ResizeParameters* pcResizeParameters,Int*px,Int*py,bool uv_flag);
  //JVT-U106 Behaviour at slice boundaries{
protected:
  //----- instances -----
  ExtBinDataAccessor            m_cExtBinDataAccessor;
  BinData                       m_cBinData;
  DownConvert                   m_cDownConvert;

  //----- references -----
  const SequenceParameterSet*   m_pcSPS;

⌨️ 快捷键说明

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