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:
- Medienquellen werden über den Quelllöser aufgelistet.
- Transformationen, z. B. Decoder, werden über die Funktionen MFTEnum und MFTEnumEx aufgelistet.
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.
- Dateierweiterung: ".wmv"
- Schema: "http:"
- MIME-Typ: "video/mp4"
- Medienuntertyp: "{47504A4D-0000-0010-8000-00AA00389B71}"
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) |