关于陆其明的FilterMpeg2VD编译问题,就是关于Mpeg2解码filter的那个代码,在用VC编译的时候出现了连接(Link)错误:
CDecodedStream.obj : error LNK2001: unresolved external symbol "public: long __thiscall CBaseInputPin::PassNotify(struct tagQuality &) " (?PassNotify@CBaseInputPin@@QAEJAAUtagQuality@@@Z)
CFilterMpeg2VD.obj : error LNK2001: unresolved external symbol "public: virtual unsigned long __stdcall CBaseFilter::NonDelegatingRelease(void) " (?NonDelegatingRelease@CBaseFilter@@UAGKXZ)
CFilterMpeg2VD.obj : error LNK2001: unresolved external symbol "public: __thiscall CMediaType::CMediaType(class CMediaType const &,long *) " (??0CMediaType@@QAE@ABV0@PAJ@Z)
CMpegInputPin.obj : error LNK2001: unresolved external symbol "public: virtual long __thiscall CBaseInputPin::BreakConnect(void) " (?BreakConnect@CBaseInputPin@@UAEJXZ)
Debug/HQMpg2Dec.ax : fatal error LNK1120: 4 unresolved externals
是什么原因呢?
------解决方案--------------------------------------------------------
应该是没有连接那个dshow基本的lib吧,你要把BaseClass编译,然后在你的程序中连接这个lib,应该就可以了。
------解决方案--------------------------------------------------------
基类虚函数没有实现?
------解决方案--------------------------------------------------------
你的项目设置和连接的strmbas.lib不匹配.
注意Debug版本和Debug_unicode版本是不一样的。