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

📄 app_encoder_encoder.cpp

📁 完整的RTP RTSP代码库
💻 CPP
📖 第 1 页 / 共 5 页
字号:
		delete [] rguiRateControl [iLayer];		delete [] rguiBitsBudget [iLayer];		delete [] rgbErrorResilientDisable [iLayer];		delete [] rgbDataPartitioning [iLayer];		delete [] rgbReversibleVlc [iLayer];		delete [] rgiVPBitTh [iLayer];		// for texture coding		delete [] rgfQuant [iLayer];		delete [] rgiIntraDCSwitchingThr [iLayer];		delete [] rgiIStep [iLayer];				// error signal quantization stepsize		delete [] rgiPStep [iLayer];				// error signal quantization stepsize		delete [] rgiIStepAlpha [iLayer];		// error signal quantization stepsize		delete [] rgiPStepAlpha [iLayer];		// error signal quantization stepsize		delete [] rgiBStepAlpha [iLayer];		delete [] rgbNoGrayQuantUpdate [iLayer]; //discouple change of gray quant with tex. quant		delete [] rgiStepBCode [iLayer];			// error signal quantization stepsize		delete [] rgbLoadIntraMatrix [iLayer];		delete [] rgbLoadInterMatrix [iLayer];		delete [] rgbLoadIntraMatrixAlpha [iLayer];		delete [] rgbLoadInterMatrixAlpha [iLayer];		for (iObj = 0; iObj < nVO; iObj++) {			delete [] rgppiIntraQuantizerMatrix  [iLayer] [iObj];			delete [] rgppiInterQuantizerMatrix  [iLayer] [iObj];			delete [] rgppiIntraQuantizerMatrixAlpha  [iLayer] [iObj];			delete [] rgppiInterQuantizerMatrixAlpha  [iLayer] [iObj];			if(pchMVFileName [iLayer] [iObj]!=NULL)				delete [] pchMVFileName [iLayer] [iObj];		}		delete [] rgppiIntraQuantizerMatrix [iLayer];		delete [] rgppiInterQuantizerMatrix [iLayer];		delete [] rgppiIntraQuantizerMatrixAlpha [iLayer];		delete [] rgppiInterQuantizerMatrixAlpha [iLayer];		delete [] pchMVFileName [iLayer];		// for motion esti.		delete [] rgbOriginalME [iLayer];		delete [] rgbAdvPredDisable [iLayer];		delete [] rguiSearchRange [iLayer];		// for interlace coding		delete [] rgbInterlacedCoding [iLayer];		delete [] rgbTopFieldFirst [iLayer];		delete [] rgiDirectModeRadius [iLayer];		delete [] rgiMVFileUsage [iLayer];				delete [] rgdFrameFrequency [iLayer];		delete [] rgbAlternateScan [iLayer];		delete [] rgbComplexityEstimationDisable [iLayer];		delete [] rguiEstimationMethod [iLayer];		delete [] rgbOpaque [iLayer];		delete [] rgbTransparent [iLayer];		delete [] rgbIntraCAE [iLayer];		delete [] rgbInterCAE [iLayer];		delete [] rgbNoUpdate [iLayer];		delete [] rgbUpsampling [iLayer];		delete [] rgbIntraBlocks [iLayer];		delete [] rgbInterBlocks [iLayer];		delete [] rgbInter4vBlocks [iLayer];		delete [] rgbNotCodedBlocks [iLayer];		delete [] rgbDCTCoefs [iLayer];		delete [] rgbDCTLines [iLayer];		delete [] rgbVLCSymbols [iLayer];		delete [] rgbVLCBits [iLayer];		delete [] rgbAPM [iLayer];		delete [] rgbNPM [iLayer];		delete [] rgbInterpolateMCQ [iLayer];		delete [] rgbForwBackMCQ [iLayer];		delete [] rgbHalfpel2 [iLayer];		delete [] rgbHalfpel4 [iLayer];		delete [] rgbSadct [iLayer];		delete [] rgbQuarterpel [iLayer];		delete [] rguiVolControlParameters [iLayer];		delete [] rguiChromaFormat [iLayer];		delete [] rguiLowDelay [iLayer];		delete [] rguiVBVParams [iLayer];		delete [] rguiBitRate [iLayer];		delete [] rguiVbvBufferSize [iLayer];		delete [] rguiVbvBufferOccupany [iLayer];		delete [] rgbNewpredEnable[iLayer];		delete [] rgbNewpredSegType[iLayer];		delete [] rgbSadctDisable[iLayer];		delete [] rgbQuarterSample[iLayer];		for (iObj = 0; iObj < nVO; iObj++)		{			if(pchNewpredRefName [iLayer][iObj]!=NULL)				delete pchNewpredRefName [iLayer][iObj];			if(pchNewpredSlicePoint [iLayer][iObj]!=NULL)				delete pchNewpredSlicePoint [iLayer][iObj];		}		delete [] pchNewpredRefName[iLayer];		delete [] pchNewpredSlicePoint[iLayer];		delete [] RRVmode[iLayer];	}	delete [] rgbScalability;    delete [] rgbSpatialScalability;	delete [] rgiTemporalScalabilityType;	delete [] rgiEnhancementType;//OBSSFIX_MODE3	delete [] rgiEnhancementTypeSpatial;//~OBSSFIX_MODE3	// for mask coding, should fill in later on	delete [] rgfAlphaUsage; // alpha usage for each VO.  0: binary, 1: 8-bit	delete [] rgiAlphaShapeExtension;	delete [] rgbShapeOnly;	delete [] rgiBinaryAlphaTH;	delete [] rgiBinaryAlphaRR;	//	Added for error resilient mode by Toshiba(1997-11-14)	delete [] rgiGrayToBinaryTH;	delete [] rgbNoCrChange;	delete [] rgbDeblockFilterDisable;		delete [] rgfChrType;	delete [] rgiNumBbetweenPVOP;			// no of B-VOPs between P-VOPs	delete [] rgiNumPbetweenIVOP;			// no of P-VOPs between I-VOPs//added to encode GOV header by SONY 980212	delete [] rgiGOVperiod;//980212	delete [] rgiTSRate;	delete [] rgiEnhcTSRate; // added by Norio Ito	delete [] rgbAllowSkippedPMBs;	// rounding control	delete [] rgbRoundingControlDisable;	delete [] rgiInitialRoundingType;	// sprite	delete [] rguiSpriteUsage;	delete [] rguiWarpingAccuracy;	delete [] rgiNumPnts;	delete [] rgbDumpMB;	delete [] rgbTrace;	delete [] rgSpriteMode;	delete pchPrefix;	delete pchBmpDir;	delete pchOutBmpDir;	delete pchOutStrFile;	delete pchSptDir;	delete pchSptPntDir;	// version 2	delete [] rguiVerID;	return 0;}Void nextValidLine (FILE *pfPara, UInt* pnLine)	{	U8 chBoL = 0;	Char pchPlaceHolder[200];	fgets (pchPlaceHolder, 200, pfPara); // get the next line 	(*pnLine)++;	while (feof (pfPara) == 0 && (chBoL = fgetc(pfPara)) == '%') {		// skip a line		fgets (pchPlaceHolder, 200, pfPara); // get the next line 		(*pnLine)++;	}	ungetc (chBoL, pfPara);				}///// WAVELET VTC: begin ///////////////////////////////Void readVTCParam(CVTCEncoder *pvtcenc, FILE *pfVTCPara, UInt* pnLine, UInt *uiFrmWidth, UInt *uiFrmHeight){ // FPDAM   // begin: added by Sharp (99/11/18) 	UInt uiVerID; 	nextValidLine (pfVTCPara, pnLine); 	if ( fscanf (pfVTCPara, "%d", &uiVerID) != 1)	{ 		fprintf(stderr, "wrong parameter on line %d\n", *pnLine); 		assert (FALSE); 	} 	if ( uiVerID != 1 && uiVerID != 2 ){ 		fprintf(stderr,"Unsupported .cfg file. Version ID is required at the beginning of .cfg\n"); 		assert ( uiVerID == 1 || uiVerID == 2 ); 	} // end: added by Sharp (99/11/18) 	// source image path	Char *cImagePath;	cImagePath = new char[80];	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%s", cImagePath) != 1)	{		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}		// Alpha Channel 	UInt uiAlphaChannel;	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%d", &uiAlphaChannel) != 1)	{		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}		// segmentation map image path	Char *cSegImagePath;	cSegImagePath = new char[80];	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%s", cSegImagePath) != 1)	{		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}		// FPDAM begin: deleted by Sharp 	//	//begin: added by SL@Sarnoff (03/02/99)	//	UInt uiShapeScalable; //scalable shape coding ?	//	nextValidLine (pfVTCPara, pnLine);	//	if ( fscanf (pfVTCPara, "%d", &uiShapeScalable) != 1)	{	//		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);	//		assert (FALSE);	//	}	// FPDAM end: deleted by Sharp 		UInt uiSTOConstAlpha; // constant alpha value?	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%d", &uiSTOConstAlpha) != 1)	{		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}		UInt uiSTOConstAlphaValue; //what is the value if const alpha?	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%d", &uiSTOConstAlphaValue) != 1)	{		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}	//end: added by SL@Sarnoff (03/02/99)		// Alpha threshold	UInt uiAlphaTh;	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%d", &uiAlphaTh) != 1)	{		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}		// Alpha Change CR Disable 	UInt uiChangeCRDisable;	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%d", &uiChangeCRDisable) != 1)	{		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}		// output bitstream file 	Char *cOutBitsFile;	cOutBitsFile = new char[80];	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%s", cOutBitsFile) != 1)	{		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}		// color components	UInt uiColors;	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%d", &uiColors) != 1)	{		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}		// Frame width	//	UInt uiFrmWidth; //FPDAM	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%d", uiFrmWidth) != 1)	{		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}		// Frame height	//	UInt uiFrmHeight;			// frame height // FPDAM	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%d", uiFrmHeight) != 1)	{		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}		// begin: added by Sharp (99/2/16)	UInt uiTilingDisable; // modified by Sharp (99/3/29)	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%d", &uiTilingDisable) != 1)  { // modified by Sharp (99/3/29)		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}		UInt uiTilingJump;	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%d", &uiTilingJump) != 1)  {		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}		UInt uiTileWidth;	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%d", &uiTileWidth) != 1) {		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}		UInt uiTileHeight;	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%d", &uiTileHeight) != 1)  {		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}	// end: added by Sharp (99/2/16)	// wavelet decomposition	UInt uiWvtDecmpLev;	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%d", &uiWvtDecmpLev) != 1)	{		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}	// wavelet type	UInt uiWvtType;	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%d", &uiWvtType) != 1)	{		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}		// hjlee 0901	// wavelet download ?	UInt uiWvtDownload;	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%d", &uiWvtDownload) != 1)	{		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}		// hjlee 0901	// wavelet uniform ?	UInt uiWvtUniform;	Int  *iWvtFilters;	nextValidLine (pfVTCPara, pnLine);	if ( fscanf (pfVTCPara, "%d", &uiWvtUniform) != 1)	{		fprintf(stderr, "wrong parameter on line %d\n", *pnLine);		assert (FALSE);	}			/* default wavelet filters are uniform */    if (!uiWvtDownload) 		uiWvtUniform=1;    if (uiWvtUniform)		iWvtFilters = (Int *)malloc(sizeof(Int

⌨️ 快捷键说明

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