}  if(firstTime && verbose) { printf("using npp filters 0x%X/0x%X\n", mode->lumMode, mode->chromMode); firstTime=0;
void  postprocess2(unsigned char * src[], int src_stride,                 unsigned char * dst[], int dst_stride,                 int horizontal_size,   int vertical_size,                 QP_STORE_T *QP_store,  int QP_stride,		 struct PPMode *mode){	QP_STORE_T quantArray[2048/8];	if(QP_store==NULL || (mode->lumMode & FORCE_QUANT)) 	{		int i;		QP_store= quantArray;		QP_stride= 0;		if(mode->lumMode & FORCE_QUANT)			for(i=0; i<2048/8; i++) quantArray[i]= mode->forcedQuant;		else			for(i=0; i<2048/8; i++) quantArray[i]= 1;	}#ifdef HAVE_ODIVX_POSTPROCESS// Note: I could make this shit outside of this file, but it would mean one// more function call...	if(use_old_pp){	    odivx_postprocess(src,src_stride,dst,dst_stride,horizontal_size,vertical_size,QP_store,QP_stride,	    mode->oldMode);	    return;	}#endif	postProcess(src[0], src_stride, dst[0], dst_stride,		horizontal_size, vertical_size, QP_store, QP_stride, 0, mode);	horizontal_size >>= 1;	vertical_size   >>= 1;	src_stride      >>= 1;	dst_stride      >>= 1;	if(mode->chromMode)	{		postProcess(src[1], src_stride, dst[1], dst_stride,			horizontal_size, vertical_size, QP_store, QP_stride, 1, mode);		postProcess(src[2], src_stride, dst[2], dst_stride,			horizontal_size, vertical_size, QP_store, QP_stride, 2, mode);	}	else if(src_stride == dst_stride)	{		memcpy(dst[1], src[1], src_stride*vertical_size);		memcpy(dst[2], src[2], src_stride*vertical_size);	}	else	{		int y;		for(y=0; y<vertical_size; y++)		{			memcpy(&(dst[1][y*dst_stride]), &(src[1][y*src_stride]), horizontal_size);			memcpy(&(dst[2][y*dst_stride]), &(src[2][y*src_stride]), horizontal_size);		}	}}