篩選類別

[與此頁面相關的功能 DirectShow是舊版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayerIMFMediaEngine音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議使用舊版 API 的現有程式碼盡可能重寫為使用新的 API。

下表列出 DirectShow 篩選類別的 CLSID。

DirectShow 篩選類別

此處列出的類別是由 篩選對應程式列舉。 不過,根據預設,篩選對應程式會忽略具有MERIT_DO_NOT_USE或更少優點的類別。 如需詳細資訊,請參閱 IFilterMapper2::EnumMatchingFilters。 這裡所列的所有類別也可以透過 系統裝置列舉值來列舉。

下列類別會在 Uuids.h 中宣告。 包含標頭檔 Dshow.h。

易記名稱 CLSID 優點
音訊擷取來源 CLSID_AudioInputDeviceCategory MERIT_DO_NOT_USE
音訊壓縮器 CLSID_AudioCompressorCategory MERIT_DO_NOT_USE
音訊轉譯器 CLSID_AudioRendererCategory MERIT_NORMAL
裝置控制篩選器 CLSID_DeviceControlCategory MERIT_DO_NOT_USE
DirectShow 篩選準則 CLSID_LegacyAmFilterCategory MERIT_NORMAL
外部轉譯器 CLSID_TransmitCategory MERIT_DO_NOT_USE
Midi 轉譯器 CLSID_MidiRendererCategory MERIT_NORMAL
影片擷取來源 CLSID_VideoInputDeviceCategory MERIT_DO_NOT_USE
影片壓縮器 CLSID_VideoCompressorCategory MERIT_DO_NOT_USE
WDM 資料流程解壓縮裝置 CLSID_DVDHWDecodersCategory注意: 此類別包含硬體 DVD 解碼器。
MERIT_DO_NOT_USE
WDM 串流擷取裝置 AM_KSCATEGORY_CAPTURE MERIT_DO_NOT_USE
WDM 串流交叉資料橫條裝置 AM_KSCATEGORY_CROSSBAR MERIT_DO_NOT_USE
WDM 串流轉譯裝置 AM_KSCATEGORY_RENDER MERIT_DO_NOT_USE
WDM 串流 Tee/分割器裝置 AM_KSCATEGORY_SPLITTER MERIT_DO_NOT_USE
WDM 串流電視音訊裝置 AM_KSCATEGORY_TVAUDIO MERIT_DO_NOT_USE
WDM 串流電視微調器裝置 AM_KSCATEGORY_TVTUNER MERIT_DO_NOT_USE
WDM 串流 VBI 編解碼器 AM_KSCATEGORY_VBICODEC MERIT_DO_NOT_USE

下列類別會在標頭檔 Ks.h 中宣告。

易記名稱 CLSID 優點
WDM 串流通訊轉換 KSCATEGORY_COMMUNICATIONSTRANSFORM MERIT_DO_NOT_USE
WDM 串流資料轉換 KSCATEGORY_DATATRANSFORM MERIT_DO_NOT_USE
WDM 串流介面轉換 KSCATEGORY_INTERFACETRANSFORM MERIT_DO_NOT_USE
WDM 串流混音器裝置 KSCATEGORY_MIXER MERIT_DO_NOT_USE

下列類別會在標頭檔 Bdamedia.h 中宣告。 包含下列標頭檔:ks.h、ksmedia.h 和 bdamedia.h。

易記名稱 CLSID 優點
BDA 網路提供者 KSCATEGORY_BDA_NETWORK_PROVIDER MERIT_NORMAL
BDA 接收者元件 KSCATEGORY_BDA_RECEIVER_COMPONENT MERIT_DO_NOT_USE
BDA 轉譯篩選 KSCATEGORY_IP_SINK MERIT_DO_NOT_USE
BDA 來源篩選 KSCATEGORY_BDA_NETWORK_TUNER MERIT_DO_NOT_USE
BDA 傳輸資訊轉譯器 KSCATEGORY_BDA_TRANSPORT_INFORMATION MERIT_NORMAL

注意

解碼器會在 [DirectShow 篩選] 類別 (CLSID_LegacyAmFilterCategory) 下註冊。

其他篩選類別

這裡列出的類別可以使用系統裝置列舉值進行列舉,但篩選對應程式看不到, 而且 Intelligent Connect不會使用。

下列類別會在標頭檔 Qedit.h 中宣告。

易記名稱 CLID 優點
視訊效果 (1 個輸入) CLSID_VideoEffects1Category MERIT_DO_NOT_USE
視訊效果 (2 個輸入) CLSID_VideoEffects2Category MERIT_DO_NOT_USE

這些類別包含 DirectShow 編輯服務的視訊效果和轉換:

  • 「Video Effects (1 input) 」 包含視訊效果。
  • 「視訊效果 (2 個輸入) 」包含視訊轉換。

如需詳細資訊,請參閱 列舉效果和轉換

下列類別會在標頭檔 Uuids.h 中宣告。 包含標頭檔 Dshow.h。

易記名稱 CLID 優點
EncAPI 編碼器 CLSID_MediaEncoderCategory MERIT_DO_NOT_USE
EncAPI 多工器 CLSID_MediaMultiplexerCategory MERIT_DO_NOT_USE

DirectShow 篩選 Meta-Category

易記名稱 CLSID 優點
ActiveMovie 篩選類別 CLSID_ActiveMovieCategories 不適用

此中繼類別包含篩選類別清單。 如果篩選類別未出現在此清單中, 篩選對應程式 會忽略類別,這表示 篩選不適用於 Intelligent Connect

若要列舉篩選類別清單,請使用值CLSID_ActiveMovieCategories呼叫 ICreateDevEnum::CreateClassEnumerator 。 這個方法傳回的 Moniker 支援下列屬性。

屬性名稱 描述
「FriendlyName」 類別名稱 (VT_BSTR) 。
「優點」 類別 (VT_I4) 。 如果此屬性不存在,請將 視為 MERIT_DO_NOT_USE
「CLSID」 類別 CLSID (VT_BSTR) 。

若要將新的篩選類別新增至此清單,請呼叫 IFilterMapper2::CreateCategory

DMO 類別

DirectX 媒體物件 (DMO) 使用與 DirectShow 篩選不同的列舉機制。 如需詳細資訊,請參閱 註冊 DMO。 不過,您可以使用系統裝置列舉值來列舉 DMO 類別。 Moniker 會系結至 DMO 包裝函式篩選,並使用 DMO 自動初始化篩選。

此外,某些 DMO 類別會對應至 DirectShow 篩選類別,以用於智慧型連線:

DMO 類別 DirectShow 對等專案
DMOCATEGORY_AUDIO_ENCODER CLSID_AudioCompressorCategory
DMOCATEGORY_AUDIO_DECODER CLSID_LegacyAmFilterCategory
DMOCATEGORY_VIDEO_ENCODER CLSID_VideoCompressorCategory
DMOCATEGORY_VIDEO_DECODER CLSID_LegacyAmFilterCategory

請注意,視訊效果和音訊效果類別不會對應至任何 DirectShow 類別。

常數和 GUID

列舉裝置和篩選

Intelligent Connect

登錄機碼的配置

使用篩選對應程式

使用系統裝置列舉值