註冊DirectShow Filter信息

編寫自己的DirectShow Filter,除了編寫實現功能的代碼之外,要使自己的DLL稱爲一個Filter,還有一個重要的工作需要做,那就是註冊信息。DirectShow Filter有兩種信息註冊,一種是包含FilterDLL作爲COM組件的註冊信息,一種是註冊Filter種類信息。

當應用程序通過CoCreateInstane創建Filter的時候,通過第一中註冊信息定位DLL

第二種信息註冊後,可以通過系統設備枚舉器和Filter Mapped定位到Filter,這種信息不是必須註冊,當不註冊時候,Filter被默認爲CLSID_LegacyAmFilterCategory類型。

註冊Filter種類信息分一下步驟:

一、聲明Filter信息

 

 

 

二、聲明類工廠

 

 

 

 

三、重載DllRegisterServer

 

 

 

 

四、註銷Filter的函數

IFilterMapper2RegisterFilter接口註冊Filter信息,接口的第四個參數決定Filter屬於什麼種類,如果使用CLSID_VideoCompressorCategory,在GraphEdit中看到的Filter就在Video Capture Source中。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章