Share via


IMFPluginControl 介面 (mfobjects.h)

控制如何在 Microsoft Media Foundation 中列舉媒體來源和轉換。

若要取得此介面的指標,請呼叫 MFGetPluginControl

繼承

IMFPluginControl介面繼承自IUnknown介面。 IMFPluginControl 也有下列類型的成員:

方法

IMFPluginControl介面具有這些方法。

 
IMFPluginControl::GetDisabledByIndex

IMFPluginControl::GetDisabledByIndex (mfobjects.h) 會從封鎖清單中取得 CLSID (類別識別碼) 。
IMFPluginControl::GetPreferredClsid

在符合指定索引鍵名稱 (CLSID) 搜尋慣用的類別識別碼清單。
IMFPluginControl::GetPreferredClsidByIndex

IMFPluginControl::GetPreferredClsidByIndex (mfobjects.h) 方法會從由索引值指定的慣用清單中取得 CLSID) 類別 (識別碼。
IMFPluginControl::IsDisabled

查詢類別識別碼 (CLSID) 是否出現在封鎖清單中。 (IMFPluginControl.IsDisabled)
IMFPluginControl::SetDisabled

將類別識別碼 (CLSID) 新增至封鎖清單,或從清單中移除 CLSID。 (IMFPluginControl.SetDisabled)
IMFPluginControl::SetPreferredClsid

將類別識別碼 (CLSID) 新增至慣用清單,或從清單中移除 CLSID。 (IMFPluginControl.SetPreferredClsid)

備註

媒體基礎提供一組內建媒體來源和解碼器。 應用程式可以列舉它們,如下所示:

應用程式也可能間接列舉這些物件。 例如,如果應用程式使用拓撲載入器解析部分拓撲,拓撲載入器會呼叫 MFTEnumEx 來尋找必要的解碼器。

協力廠商可以實作自己的自訂媒體來源和解碼器,並註冊它們以進行列舉,讓其他應用程式可以使用它們。

為了控制列舉順序,Media Foundation 會維護兩個全進程 CLID 清單:慣用的清單和封鎖的清單。 CLSID 出現在慣用清單中的物件會先以列舉順序顯示。 未列舉 CLSID 出現在封鎖清單上的 物件。

清單一開始會從登錄填入。 應用程式可以使用 IMFPluginControl 介面來修改目前進程的清單。

慣用清單包含一組索引鍵/值組,其中索引鍵是字串,而值是 CLID。 這些索引鍵/值組的定義如下:

  • 針對媒體來源,金鑰名稱是副檔名、通訊協定配置或 MIME 類型。 此值是該媒體來源配置處理常式或位元組資料流程處理常式的 CLSID。
  • 若為解碼器,索引鍵名稱是標準字串格式的媒體子類型 GUID。 (如需媒體子類型的詳細資訊,請參閱 Media Types.) 此值是實作解碼器之 M) FT (MFT 轉換的 CLSID。
下列範例顯示不同類型的索引鍵:
  • 副檔名:「.wmv」
  • 配置:「HTTP:」
  • MIME 類型:「video/mp4」
  • 媒體子類型:「{47504A4D-0000-0010-8000-00AA00389B71}」
若要依索引鍵名稱搜尋慣用清單,請呼叫 IMFPluginControl::GetPreferredClsid 方法。 若要列舉整個清單,請在迴圈中呼叫 IMFPluginControl::GetPreferredClsidByIndex 方法。

封鎖的清單包含 CLSID 的清單。 若要列舉整個清單,請在迴圈中呼叫 IMFPluginControl::GetDisabledByIndex 方法。 若要檢查清單中是否顯示特定的 CLSID,請呼叫 IMFPluginControl::IsDisabled 方法。

需求

   
最低支援的用戶端 Windows 7 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 R2 [僅限桌面應用程式]
目標平台 Windows
標頭 mfobjects.h (包含 Mfidl.h)

另請參閱

MFGetPluginControl

媒體基礎介面