tresizeaspectsettings.h.svn-base

来自「ffshow源码」· SVN-BASE 代码 · 共 94 行

SVN-BASE
94
字号
#ifndef _TRESIZEASPECTSETTINGS_H_#define _TRESIZEASPECTSETTINGS_H_#include "TfilterSettings.h"#include "TffRect.h"struct TresizeAspectSettings :TfilterSettingsVideo{private: static const TfilterIDFF idffs; static const char_t* printSwsParams(char_t *algParam,int method,int bicubicParam,int gaussParam,int lanczosParam);protected: virtual const int *getResets(unsigned int pageId);public:  TresizeAspectSettings(TintStrColl *Icoll=NULL,TfilterIDFFs *filters=NULL); int mode; unsigned int dx,dy; int multOf; int a1,a2; int mult1000; void calcNewRects(Trect *rectFull,Trect *rectClip) const; int _if; int xcond;unsigned int xval; int ycond;unsigned int yval; int xycond; int pixcond;unsigned int pixval; static const char_t *getXcondStr(int cond),*getXYcondStr(int cond),*getPixCondStr(int cond); bool ifResize(unsigned int AVIdx,unsigned int AVIdy) const; int isAspect,aspectRatio;  int bordersInside,bordersLocked; int bordersUnits; //0 - percent, 1 - pixels int bordersPercentX,bordersPercentY; int bordersPixelsX,bordersPixelsY;  bool areBorders(void) const  {   return (bordersUnits==0 && (bordersPercentX || bordersPercentY)) ||          (bordersUnits==1 && (bordersPixelsX  || bordersPixelsY ));  } int methodLuma,methodChroma,methodsLocked; enum RESIZE_LIBRARY  {    LIB_SWSCALER,   LIB_SIMPLE,   LIB_SAI,   LIB_NONE  }; enum METHOD  {   METHOD_SWS_FAST_BILINEAR=0,   METHOD_SWS_BILINEAR=1,   METHOD_SWS_BICUBIC=2,   METHOD_SWS_X=3,   METHOD_SWS_POINT=4,   METHOD_SWS_AREA=5,   METHOD_SWS_BICUBLIN=6,   METHOD_SWS_GAUSS=7,   METHOD_SWS_SINC=8,   METHOD_SWS_LANCZOS=9,   METHOD_SWS_SPLINE=10,   METHOD_NONE=11,   METHOD_SIMPLE=12,   METHOD_WARPED=13,   METHOD_SUPER2XSAI=14,   METHOD_2XSAI=15,   METHOD_HQ2X=16,   METHOD_LAST  }; struct TmethodProps  {   int id;   const char_t *name;   RESIZE_LIBRARY library;   int flags;  }; static const TmethodProps methodsProps[];   static const int methodDef=METHOD_SWS_BICUBIC,numMethods=METHOD_LAST,methodsOrder[]; int bicubicLumaParam,bicubicChromaParam; int gaussLumaParam,gaussChromaParam; int lanczosLumaParam,lanczosChromaParam; int simpleWarpXparam,simpleWarpYparam; int GblurLum,GblurChrom; int sharpenLum,sharpenChrom; int interlaced; virtual void createFilters(size_t filtersorder,Tfilters *filters,TfilterQueue &queue) const; virtual void createPages(TffdshowPageDec *parent) const; virtual bool getTip(unsigned int pageId,char_t *buf,size_t buflen); virtual void reg_op(TregOp &t); virtual bool reset(unsigned int pageId=0);};#endif

⌨️ 快捷键说明

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