ADMVideoAnimated::ADMVideoAnimated(AVDMGenericVideoStream *in,CONFcouple *couples) { _resizer=NULL; _image=NULL; _BkgGnd=NULL; for(int i=0;i<MAX_VIGNETTE;i++) _caches[i]=NULL; _in=in; memcpy(&_info,_in->getInfo(),sizeof(_info)); _info.encoding=1; _uncompressed=NULL; _param=NEW(ANIMATED_PARAM); if(couples) { GET(isNTSC); GET(backgroundImg); GET(vignetteW); GET(vignetteH); #undef GET #define GET(x) couples->getCouple((char *)"tc"#x,&(_param->timecode[x])) GET(0); GET(1); GET(2); GET(3); GET(4); GET(5); } else // Default { #define MKP(x,y) _param->x=y; MKP(isNTSC,0); MKP(vignetteW,160); MKP(vignetteH,120); #ifdef CYG_MANGLING MKP(backgroundImg,(ADM_filename *)ADM_strdup("c:\\test.jpg")); #else MKP(backgroundImg,(ADM_filename *)ADM_strdup("/tmp/taist.jpg")); #endif #undef MKP #define MKP(x,y) _param->timecode[x]=y MKP(0,0); MKP(1,100); MKP(2,200); MKP(3,300); MKP(4,500); MKP(5,600); } if(_param->isNTSC) _info.height=480; else _info.height=576; _info.width=720; setup(); }
/** \fn ctor */ vidColorYuv::vidColorYuv( ADM_coreVideoFilter *in,CONFcouple *setup) : ADM_coreVideoFilter(in,setup) { if(!setup || !ADM_paramLoad(setup,colorYuv_param,¶m)) { // Default value #define MKP(x,y) param.x=y; MKP(y_contrast,0); MKP(y_bright,0); MKP(y_gamma,0); MKP(y_gain,0); MKP(u_contrast,0); MKP(u_bright,0); MKP(u_gamma,0); MKP(u_gain,0); MKP(v_contrast,0); MKP(v_bright,0); MKP(v_gamma,0); MKP(v_gain,0); MKP(matrix,0); MKP(levels,0); MKP(opt,0); MKP(colorbars,0); MKP(analyze,1); MKP(autowhite,1); MKP(autogain,0); } MakeGammaLUT(); }