tffdecodervideo.h.svn-base
来自「ffshow源码」· SVN-BASE 代码 · 共 518 行 · 第 1/3 页
SVN-BASE
518 行
} STDMETHODIMP_(int) getInputBitrate2(void) {return deciV->getInputBitrate2();} STDMETHODIMP getHistogram_(unsigned int dst[256]) {return deciV->getHistogram_(dst);} STDMETHODIMP setFilterOrder(unsigned int filterID,unsigned int newOrder) {return deciV->setFilterOrder(filterID,newOrder);} STDMETHODIMP buildHistogram_(const TffPict *pict,int full) {return deciV->buildHistogram_(pict,full);} STDMETHODIMP_(int) getAVIfps1000_2(void) {return deciV->getAVIfps1000_2();} STDMETHODIMP getCurrentFrameTime(unsigned int *sec) {return deciV->getCurrentFrameTime(sec);} STDMETHODIMP getImgFilters_(void* *imgFiltersPtr) {return E_NOTIMPL;} STDMETHODIMP getQuant(int* *quantPtr) {return deciV->getQuant(quantPtr);} STDMETHODIMP calcNewSize(unsigned int inDx,unsigned int inDy,unsigned int *outDx,unsigned int *outDy) {return deciV->calcNewSize(inDx,inDy,outDx,outDy);} STDMETHODIMP grabNow(void) {return deciV->grabNow();} STDMETHODIMP getOverlayControlCapability(int idff) {return deciV->getOverlayControlCapability(idff);} STDMETHODIMP drawOSD(int px,int py,const tchar *txt) {return deciV->drawOSD(px,py,text<char_t>(txt));} STDMETHODIMP lock(int lockId) {return deciV->lock(lockId);} STDMETHODIMP unlock(int lockId) {return deciV->unlock(lockId);} STDMETHODIMP calcMeanQuant(float *quant) {return deciV->calcMeanQuant(quant);} STDMETHODIMP_(int) findAutoSubflnm2(void) {return deciV->findAutoSubflnm2();} STDMETHODIMP getFrameTime(unsigned int framenum,unsigned int *sec) {return deciV->getFrameTime(framenum,sec);} STDMETHODIMP shortOSDmessage(const tchar *msg,unsigned int duration) {return deciV->shortOSDmessage(text<char_t>(msg),duration);} STDMETHODIMP setImgFilters_(void *imgFiltersPtr) {return E_NOTIMPL;} STDMETHODIMP registerSelectedMediaTypes(void) {return deciV->registerSelectedMediaTypes();} STDMETHODIMP getFrameTimes(int64_t *start,int64_t *stop) {return deciV->getFrameTimes(start,stop);} STDMETHODIMP getSubtitleTimes(int64_t *start,int64_t *stop) {return deciV->getSubtitleTimes(start,stop);} STDMETHODIMP resetSubtitleTimes(void) {return deciV->resetSubtitleTimes();} STDMETHODIMP setFrameTimes(int64_t start,int64_t stop) {return deciV->setFrameTimes(start,stop);} STDMETHODIMP_(int) getOSDpresetCount2(void) {return deciV->getOSDpresetCount2();} STDMETHODIMP_(const tchar*) getOSDpresetName2(unsigned int i) { return NULL; } STDMETHODIMP_(const tchar*) getOSDpresetFormat2(const tchar *presetName) { return NULL; } STDMETHODIMP setOSDpresetFormat(const tchar *presetName,const tchar *format) {return deciV->setOSDpresetFormat(text<char_t>(presetName),text<char_t>(format));} STDMETHODIMP setOSDpresetName(unsigned int i,const tchar *name) {return deciV->setOSDpresetName(i,text<char_t>(name));} STDMETHODIMP addOSDpreset(const tchar *presetName,const tchar *format) {return deciV->addOSDpreset(text<char_t>(presetName),text<char_t>(format));} STDMETHODIMP deleteOSDpreset(const tchar *presetName) {return deciV->deleteOSDpreset(text<char_t>(presetName));} STDMETHODIMP cycleOSDpresets(void) {return deciV->cycleOSDpresets();} STDMETHODIMP_(int) getCodecId(const BITMAPINFOHEADER *hdr,const GUID *subtype,FOURCC *AVIfourcc) {return deciV->getCodecId(hdr,subtype,AVIfourcc);} STDMETHODIMP getFontManager(TfontManager* *fontManagerPtr) {return deciV->getFontManager(fontManagerPtr);} STDMETHODIMP_(int) getInIsSync(void) {return deciV->getInIsSync();} STDMETHODIMP getVideoWindowPos(int *left,int *top,unsigned int *width,unsigned int *height) {return deciV->getVideoWindowPos(left,top,width,height);} STDMETHODIMP_(unsigned int) getSubtitleLanguagesCount2(void) {return deciV->getSubtitleLanguagesCount2();} STDMETHODIMP getSubtitleLanguageDesc(unsigned int num,const tchar* *descPtr) { return E_NOTIMPL; } STDMETHODIMP fillSubtitleLanguages(const tchar **langs) { return E_NOTIMPL; } STDMETHODIMP resetOSD(void) {return deciV->resetOSD();} STDMETHODIMP getFrameTimeMS(unsigned int framenum,unsigned int *msec) {return deciV->getFrameTimeMS(framenum,msec);} STDMETHODIMP getCurrentFrameTimeMS(unsigned int *msec) {return deciV->getCurrentFrameTimeMS(msec);} STDMETHODIMP frameStep(int diff) {return deciV->frameStep(diff);} STDMETHODIMP textPinConnected_(unsigned int num) {return E_NOTIMPL;} STDMETHODIMP cycleSubLanguages(int diff) {return deciV->cycleSubLanguages(diff);} STDMETHODIMP getLevelsMap(unsigned int map[256]) {return deciV->getLevelsMap(map);} STDMETHODIMP_(const tchar*) findAutoSubflnm3(void) { return NULL; } STDMETHODIMP setAverageTimePerFrame(int64_t *avg,int useDef) {return deciV->setAverageTimePerFrame(avg,useDef);} STDMETHODIMP getLate(int64_t *latePtr) {return deciV->getLate(latePtr);} STDMETHODIMP getAverageTimePerFrame(int64_t *avg) {return deciV->getAverageTimePerFrame(avg);} STDMETHODIMP_(const tchar*) getEmbeddedSubtitleName2_(unsigned int num) {return NULL;} STDMETHODIMP putHistogram_(unsigned int Ihistogram[256]) {return deciV->putHistogram_(Ihistogram);} STDMETHODIMP_(const tchar*) getCurrentSubFlnm(void) { return NULL; } STDMETHODIMP quantsAvailable(void) {return deciV->quantsAvailable();} STDMETHODIMP isNeroAVC_(void) {return deciV->isNeroAVC_();} STDMETHODIMP findOverlayControl(IMixerPinConfig2* *overlayPtr) {return deciV->findOverlayControl(overlayPtr);} STDMETHODIMP getVideoDestRect(RECT *r) {return deciV->getVideoDestRect(r);} STDMETHODIMP_(FOURCC) getMovieFOURCC(void) {return deciV->getMovieFOURCC();} STDMETHODIMP getRemainingFrameTime(unsigned int *sec) {return deciV->getRemainingFrameTime(sec);} STDMETHODIMP getInputSAR(unsigned int *a1,unsigned int *a2) {return deciV->getInputSAR(a1,a2);} STDMETHODIMP getInputDAR(unsigned int *a1,unsigned int *a2) {return deciV->getInputDAR(a1,a2);} STDMETHODIMP getQuantMatrices(unsigned char intra8[64],unsigned char inter8[64],unsigned char intra4luma[16],unsigned char intra4chroma[16],unsigned char inter4luma[16],unsigned char inter4chroma[16]) {return deciV->getQuantMatrices(intra8,inter8,intra4luma,intra4chroma,inter4luma,inter4chroma);} STDMETHODIMP_(const tchar*) findAutoSubflnms(IcheckSubtitle *checkSubtitle) { return NULL; } STDMETHODIMP addClosedCaption(const char* line) {return deciV->addClosedCaption(line);} STDMETHODIMP hideClosedCaptions(void) {return deciV->hideClosedCaptions();} STDMETHODIMP_(int) getConnectedTextPinCnt(void) {return deciV->getConnectedTextPinCnt();} STDMETHODIMP getConnectedTextPinInfo(int i,const tchar* *name,int *id,int *found) { return E_NOTIMPL; } STDMETHODIMP registerOSDprovider(IOSDprovider *provider,const char *name) {return deciV->registerOSDprovider(provider,name);} STDMETHODIMP unregisterOSDprovider(IOSDprovider *provider) {return deciV->unregisterOSDprovider(provider);} STDMETHODIMP_(int) getOSDtime(void){return deciV->getOSDtime();} STDMETHODIMP findOverlayControl2(IhwOverlayControl* *overlayPtr) {return deciV->findOverlayControl2(overlayPtr);} } decVideo_char; template<class Tinterface> Tinterface* getDecVideoInterface(void);protected: HRESULT Receive(IMediaSample *pSample); virtual void getMinMax(int id,int &min,int &max); virtual bool isStreamsMenu(void) const; virtual TinfoBase* createInfo(void); virtual TimgFilters* createImgFilters(void); TimgFilters *imgFilters; TpresetVideo *presetSettings; TglobalSettingsDecVideo *globalSettings;private: static const int VERSION=38; static const int COMPAT_VERSION=28; TffdshowVideoInputPin *inpin; TdialogSettingsDecVideo *dialogSettings; TpresetsVideo *presets; int currentq; virtual void sendOnChange(int paramID,int val); int subShowEmbedded;//,foundEmbedded; TfontManager *fontManager; bool wasSubtitleResetTime; TpinsVector<TtextInputPin> textpins; strings subtitleLanguages; int subCurLang; HRESULT setOutputMediaType(const CMediaType &mt); struct { int dstColorspace; int dstStride; LONG dstSize; } m_frame; Trect oldRect; void calcNewSize(TffPictBase &p); unsigned int frameCnt;uint64_t bytesCnt; REFERENCE_TIME segmentStart;unsigned int segmentFrameCnt; int currentFrame; int decodingFps,decodingCsp; HRESULT reconnectOutput(const TffPict &newpict); clock_t lastTime; int waitForKeyframe; void setSampleSkipped(bool sendSkip); REFERENCE_TIME late,lastrtStart; IVideoWindow *videoWindow;bool wasVideoWindow; IBasicVideo *basicVideo;bool wasBasicVideo; static const TfilterIDFF nextFilters[]; int dvdproc;bool allowOutChange; bool outOverlayMixer,outOldRenderer,outdv; int hwDeinterlace;public: static const AMOVIESETUP_MEDIATYPE inputMediaTypes[],outputMediaTypes[]; static AMOVIESETUP_PIN pins[]; static const AMOVIESETUP_FILTER filter; static const DWORD defaultMerit;};class TffdshowDecVideoRaw :public TffdshowDecVideo{public: static CUnknown* WINAPI CreateInstance(LPUNKNOWN punk,HRESULT *phr); TffdshowDecVideoRaw(LPUNKNOWN punk,HRESULT *phr); static const AMOVIESETUP_FILTER filter; static const DWORD defaultMerit;};#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?