IMFPluginControl-Schnittstelle (mfobjects.h)

Steuert, wie Medienquellen und Transformationen in Microsoft Media Foundation aufgezählt werden.

Um einen Zeiger auf diese Schnittstelle zu erhalten, rufen Sie MFGetPluginControl auf.

Vererbung

Die IMFPluginControl-Schnittstelle erbt von der IUnknown-Schnittstelle . IMFPluginControl verfügt auch über folgende Membertypen:

Methoden

Die IMFPluginControl-Schnittstelle verfügt über diese Methoden.

 
IMFPluginControl::GetDisabledByIndex

IMFPluginControl::GetDisabledByIndex (mfobjects.h) ruft einen Klassenbezeichner (CLSID) aus der Blockierten Liste ab.
IMFPluginControl::GetPreferredClsid

Durchsucht die bevorzugte Liste nach einem Klassenbezeichner (CLSID), der einem angegebenen Schlüsselnamen entspricht.
IMFPluginControl::GetPreferredClsidByIndex

Die METHODE IMFPluginControl::GetPreferredClsidByIndex (mfobjects.h) ruft einen Klassenbezeichner (CLSID) aus der bevorzugten Liste ab, die durch den Indexwert angegeben wird.
IMFPluginControl::IsDisabled

Fragt ab, ob ein Klassenbezeichner (CLSID) in der Blockierten Liste angezeigt wird. (IMFPluginControl.IsDisabled)
IMFPluginControl::SetDisabled

Fügt der Blockierten Liste einen Klassenbezeichner (CLSID) hinzu oder entfernt eine CLSID aus der Liste. (IMFPluginControl.SetDisabled)
IMFPluginControl::SetPreferredClsid

Fügt der bevorzugten Liste einen Klassenbezeichner (CLSID) hinzu oder entfernt eine CLSID aus der Liste. (IMFPluginControl.SetPreferredClsid)

Hinweise

Media Foundation stellt eine Reihe von integrierten Medienquellen und Decodern bereit. Anwendungen können sie wie folgt auflisten:

Anwendungen können diese Objekte auch indirekt auflisten. Wenn eine Anwendung beispielsweise den Topologieladeprogramm verwendet, um eine partielle Topologie aufzulösen, ruft der Topologieladeprogramm MFTEnumEx auf, um die erforderlichen Decoder zu finden.

Drittanbieter können ihre eigenen benutzerdefinierten Medienquellen und Decoder implementieren und für die Enumeration registrieren, damit sie von anderen Anwendungen verwendet werden können.

Um die Enumerationsreihenfolge zu steuern, verwaltet Media Foundation zwei prozessweite Listen von CLSIDs: eine bevorzugte Liste und eine Blockierte Liste. Ein Objekt, dessen CLSID in der bevorzugten Liste angezeigt wird, wird zuerst in der Enumerationsreihenfolge angezeigt. Ein Objekt, dessen CLSID in der Blockierten Liste angezeigt wird, wird nicht aufgelistet.

Die Listen werden zunächst aus der Registrierung aufgefüllt. Anwendungen können die IMFPluginControl-Schnittstelle verwenden, um die Listen für den aktuellen Prozess zu ändern.

Die bevorzugte Liste enthält eine Reihe von Schlüssel-Wert-Paaren, wobei die Schlüssel Zeichenfolgen und die Werte CLSIDs sind. Diese Schlüssel-Wert-Paare werden wie folgt definiert:

  • Für Medienquellen ist der Schlüsselname eine Dateinamenerweiterung, ein Protokollschema oder ein MIME-Typ. Der Wert ist die CLSID eines Schemahandlers oder Bytestreamhandlers für diese Medienquelle.
  • Bei Decodern ist der Schlüsselname eine Medienuntertyp-GUID in kanonischer Zeichenfolgenform. (Weitere Informationen zu Medienuntertypen finden Sie unter Medientypen.) Der Wert ist die CLSID der Media Foundation-Transformation (MFT), die den Decoder implementiert.
Die folgenden Beispiele zeigen die verschiedenen Schlüsseltypen:
  • Dateierweiterung: ".wmv"
  • Schema: "http:"
  • MIME-Typ: "video/mp4"
  • Medienuntertyp: "{47504A4D-0000-0010-8000-00AA00389B71}"
Um die bevorzugte Liste nach Schlüsselnamen zu durchsuchen, rufen Sie die METHODE IMFPluginControl::GetPreferredClsid auf. Um die gesamte Liste aufzulisten, rufen Sie die METHODE IMFPluginControl::GetPreferredClsidByIndex in einer Schleife auf.

Die Blockierte Liste enthält eine Liste von CLSIDs. Um die gesamte Liste aufzulisten, rufen Sie die METHODE IMFPluginControl::GetDisabledByIndex in einer Schleife auf. Um zu überprüfen, ob eine bestimmte CLSID in der Liste angezeigt wird, rufen Sie die IMFPluginControl::IsDisabled-Methode auf.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 7 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile mfobjects.h (include Mfidl.h)

Weitere Informationen

MFGetPluginControl

Media Foundation-Schnittstellen