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

📄 vopsedec.hpp

📁 网络MPEG4IP流媒体开发源代码
💻 HPP
📖 第 1 页 / 共 2 页
字号:
	Void decodeMBTextureHeadOfBVOP (CMBMode* pmbmd, Int& iCurrQP);	Void decodeMBAlphaHeadOfBVOP (CMBMode* pmbmd, Int iCurrQP, Int iCurrQPA);		Void setCBPYandC (CMBMode* pmbmd, Int iCBPC, Int iCBPY, Int cNonTrnspBlk);	// motion compensation	Void motionCompTexture (		const CMotionVector* pmv, const CMBMode* pmbmd, 		Int imbX, Int imbY,		CoordI x, CoordI y	);	Void motionCompAlpha (		const CMotionVector* pmv, const CMBMode* pmbmd, 		Int imbX, Int imbY,		CoordI x, CoordI y	);	// B-VOP	Void motionCompAndAddErrorMB_BVOP (		const CMotionVector* pmvForward, const CMotionVector* pmvBackward,		 CMBMode* pmbmd,		// new change 02-19-99		Int iMBX, Int iMBY, 		CoordI x, CoordI y,		PixelC* ppxlcCurrQMBY, PixelC* ppxlcCurrQMBU, PixelC* ppxlcCurrQMBV,		CRct *prctMVLimitForward,CRct *prctMVLimitBackward	); 	Void motionCompAlphaMB_BVOP(		const CMotionVector* pmvForward, const CMotionVector* pmvBackward,		 CMBMode* pmbmd,		// new change 02-19-99		Int iMBX, Int iMBY, 		CoordI x, CoordI y,		PixelC* ppxlcCurrQMBA,		CRct *prctMVLimitForward,CRct *prctMVLimitBackward	);	Void copyFromRefToCurrQ_BVOP (		const CMBMode* pmbmd,		CoordI x, CoordI y, 		PixelC* ppxlcCurrQMBY, PixelC* ppxlcCurrQMBU, PixelC* ppxlcCurrQMBV,		CRct *prctMVLimitForward, CRct *prctMVLimitBackward	);	Void motionCompSkipMB_BVOP (		const CMBMode* pmbmd, const CMotionVector* pmvForward, const CMotionVector* pmvBackward,		CoordI x, CoordI y, 		PixelC* ppxlcCurrQMBY, PixelC* ppxlcCurrQMBU, PixelC* ppxlcCurrQMBV,		CRct *prctMVLimitForward,CRct *prctMVLimitBackward	);	Void copyFromPredForYAndRefForCToCurrQ (		CoordI x, CoordI y, 		PixelC* ppxlcCurrQMBY, PixelC* ppxlcCurrQMBU, PixelC* ppxlcCurrQMBV,		CRct *prctMVLimit	); // for obmc mode	Void copyAlphaFromPredToCurrQ (		CoordI x, CoordI y, 		PixelC* ppxlcCurrQMBA	);	// error signal for B-VOP MB	Void averagePredAndAddErrorToCurrQ (		PixelC* ppxlcCurrQMBY, PixelC* ppxlcCurrQMBU, PixelC* ppxlcCurrQMBV	);	Void averagePredAndAssignToCurrQ (		PixelC* ppxlcCurrQMBY, PixelC* ppxlcCurrQMBU, PixelC* ppxlcCurrQMBV	);	// motion vector	Void decodeMV (const CMBMode* pmbmd, CMotionVector* pmv, Bool bLeftBndry, Bool bRightBndry, Bool bTopBndry, Bool bZeroMV, Int iMBX, Int iMBY);	Void decodeMVWithShape (const CMBMode* pmbmd, CoordI iMBX, CoordI iMBY, CMotionVector* pmv);	Void getDiffMV (CVector& vctDiffMV, MVInfo mvinfo);		//get half pel	Int  deScaleMV (Int iVLC, Int iResidual, Int iScaleFactor);	Void fitMvInRange (CVector& vctSrc, MVInfo mvinfo);	Void decodeMVofBVOP (CMotionVector* pmvForward, CMotionVector* pmvBackward, CMBMode* pmbmd, 						 Int iMBX, Int iMBY, const CMotionVector* pmvRef, const CMBMode* pmbmdRef);	Void computeDirectForwardMV (CVector vctDiff, CMotionVector* pmv, const CMotionVector* pmvRef, const CMBMode* pmbmdRef);	// shape decoding functions	Void swapCurrAndRightMBForShape ();	Void decodeIntraShape (CMBMode* pmbmd, Int iMBX, Int iMBY, PixelC* ppxlcCurrMBBY, PixelC* ppxlcCurrMBBYFrm);	Void decodeInterShape (CVOPU8YUVBA* pvopcRefQ,CMBMode* pmbmd, CoordI iMBX, CoordI iMBY, CoordI iX, CoordI iY, CMotionVector* pmv, CMotionVector* pmvBY, 						   PixelC* ppxlcMBBY, PixelC* ppxlcMBBYFrm, const ShapeMode& shpmdColocatedMB);	Int  shpMdTableIndex (const CMBMode* pmbmd, Int iMBX, Int iMBY);	Void decodeIntraCaeBAB (PixelC* ppxlcCurrMBBY, PixelC* ppxlcCurrMBBYFrm);	Void decodeIntraCAEH ();	Void decodeIntraCAEV ();	Void decodeInterCAEH (const PixelC *);	Void decodeInterCAEV (const PixelC *);	Void decodeMVDS (CMotionVector& mvDiff);	//for temporal scalability	Added by Sharp(1998-02-10)	void updateBuffVOPsBase (CVideoObjectDecoder* pvodecEnhc);	void updateRefVOPsEnhc ();	void updateBuffVOPsEnhc ();	void copyRefQ1ToQ0 ();	void copyTobfShape ();	Void decode_IShape (); // for back/forward shape//	Void compute_bfShapeMembers ();	Void BackgroundComposition(char* argv[], Bool bScalability, Int width, Int height, FILE *pfYUV); // for background composition // modified by Sharp (98/10/26)	Void dumpDataOneFrame(char* argv[], Bool bScalability, CRct& rctDisplay); // write pvopcReconCurr () with Sharp's format	Void dumpDataAllFrame(FILE* pfReconYUV, FILE* pfReconSeg, CRct& rctDisplay);	// I/O	Time senseTime ();	Time getTime ();	int getPredType ();	// bufferControl	void set_enh_display_size(CRct rctDisplay, CRct *rctDisplay_SSenh);	void bufferP1flush ();	void bufferB1flush ();	void bufferB2flush ();	void copyBufP2ToB1 ();	//for temporal scalability	End	 Sharp(1998-02-10)	void setClockRateScale ( CVideoObjectDecoder *pvopdec ); // added by Sharp (98/6/26)	// INTERLACE	Void fieldDCTtoFrameC(PixelC* ppxlcRefMBY);	Void fieldDCTtoFrameI(PixelI* ppxlcCurrMBY);	// ~INTRELACE	// Block decoding functions	Void decodeIntraBlockTexture (PixelC* rgchBlkDst,								 Int iWidthDst,								 Int iQP, 								 Int iDcScaler,								 Bool bIsYBlock,								 MacroBlockMemory* pmbmCurr,								 CMBMode* pmbmd, 								 const BlockMemory blkmPred,								 Int iQPPred);	Void decideIntraPred (const BlockMemory& blkmRet, 						   CMBMode* pmbmdCurr,						   Int&	iQPpred,						   BlockNum blkn,									   						   const MacroBlockMemory* pmbmLeft,   						   const MacroBlockMemory* pmbmTop, 						   const MacroBlockMemory* pmbmLeftTop,						   const MacroBlockMemory* pmbmCurr,						   const CMBMode* pmbmdLeft,						   const CMBMode* pmbmdTop,						   const CMBMode* pmbmdLeftTop);	Void decodeTextureInterBlock (Int* rgiBlkCurrQ, Int iWidthCurrQ, Int iQP, Bool bAlphaBlock);	Void decodeIntraTCOEF (Int* rgiCoefQ, Int iCoefStart, Int* rgiZigzag);	Void decodeInterTCOEF (Int* rgiCoefQ, Int iCoefStart, Int* rgiZigzag);	Int decodeIntraDCmpeg (Bool bIsYBlk);					//decode the intra-dc: mpeg2 method	Void decodeInterVLCtableIndex (Int iIndex, Int&  iLevel, Int&  iRun, Bool& bIsLastRun);  // return islastrun, run and level	Void decodeIntraVLCtableIndex (Int iIndex, Int&  iLevel, Int&  iRun, Bool& bIsLastRun);  // return islastrun, run and level	typedef Void (CVideoObjectDecoder::*DECODE_TABLE_INDEX)(Int iIndex, Bool& bIsLastRun, Int&  iRun, Int&  iLevel);	//func ptr code escp. decoding	Void decodeEscape (Int& iLevel, Int& iRun, Int& bIsLastRun, const Int* rgiLMAX, const Int* rgiRMAX, 					   CEntropyDecoder* pentrdec, DECODE_TABLE_INDEX decodeVLCtableIndex);	Void inverseDCACPred (const CMBMode* pmbmd, Int iBlkIdx, Int* rgiCoefQ, Int iQP, Int iDcScaler, const BlockMemory blkmPred, Int iQpPred);	// sprite decoding	Int decodeSpt ();	Void decodeWarpPoints ();	// added for error resilience mode By Toshiba	Int	checkResyncMarker();	Bool	decodeVideoPacketHeader(Int& iCurrentQP); 	// added for error resilience mode(DP+RVLC) By Toshiba(1998-1-16:DP+RVLC) 	Int	checkMotionMarker(); 	Int	checkDCMarker(); 	// I-VOP 	Void decodeMBTextureDCOfIVOP_DataPartitioning (CMBMode* pmbmd, Int& iCurrentQP,		Int* piIntraDC, Bool &bUseNewQPForVlcThr); 	Void decodeMBTextureHeadOfIVOP_DataPartitioning (CMBMode* pmbmd, Int* piMCBPC); 	Void decodeTextureIntraMB_DataPartitioning (CMBMode* pmbmd, CoordI iMBX, CoordI iMBY, 			PixelC* ppxlcCurrFrmQY, PixelC* ppxlcCurrFrmQU, PixelC* ppxlcCurrFrmQV, Int* piIntraDC); 	 	// P-VOP 	Void decodeMBTextureHeadOfPVOP_DataPartitioning (CMBMode* pmbmd, Int& iCurrentQP, Int* piMCBPC,		Int* piIntraDC, Bool &bUseNewQPForVlcThr); 	Void decodeTextureInterMB_DataPartitioning (CMBMode* pmbmd); 	 	// B-VOP 	Void decodeMBTextureHeadOfBVOP_DataPartitioning (CMBMode* pmbmd, Int& iCurrQP); 	 	Void setCBPYandC_DataPartitioning (CMBMode* pmbmd, Int iCBPC, Int iCBPY, Int cNonTrnspBlk);  	Void decodeIntraBlockTexture_DataPartitioning (Int iBlk, CMBMode* pmbmd, Int* piINtraDC); 	Void decodeIntraBlockTextureTcoef_DataPartitioning (PixelC* rgchBlkDst, 								 Int iWidthDst, 								 Int iQP,  								 Int iDcScaler, 								 Bool bIsYBlock, 								 MacroBlockMemory* pmbmCurr, 								 CMBMode* pmbmd, 								 const BlockMemory blkmPred, 								 Int iQPPred, 								 Int* piIntraDC);  	Void decodeIntraRVLCTCOEF (Int* rgiCoefQ, Int iCoefStart, Int* rgiZigzag); 	Void decodeInterRVLCTCOEF (Int* rgiCoefQ, Int iCoefStart, Int* rgiZigzag); 	Void decodeInterRVLCtableIndex (Int iIndex, Int&  iLevel, Int&  iRun, Int& bIsLastRun);  // return islastrun, run and level 	Void decodeIntraRVLCtableIndex (Int iIndex, Int&  iLevel, Int&  iRun, Bool& bIsLastRun);  // return islastrun, run and level 	Void decodeRVLCEscape (Int& iLevel, Int& iRun, Int& bIsLastRun, const Int* rgiLMAX, const Int* rgiRMAX,  					   CEntropyDecoder* pentrdec, DECODE_TABLE_INDEX decodeVLCtableIndex); 	//	End Toshiba(DP+RVLC)(1998-1-16:DP+RVLC)};#endif // __VOPSEDEC_HPP_

⌨️ 快捷键说明

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