IMFMediaEngineClassFactory::CreateInstance-Methode (mfmediaengine.h)
Erstellt eine neue instance der Medien-Engine.
Syntax
HRESULT CreateInstance(
[in] DWORD dwFlags,
[in] IMFAttributes *pAttr,
[out] IMFMediaEngine **ppPlayer
);
Parameter
[in] dwFlags
Ein bitweiser OR mit null oder mehr Flags aus der MF_MEDIA_ENGINE_CREATEFLAGS-Enumeration .
[in] pAttr
Ein Zeiger auf die IMFAttributes-Schnittstelle eines Attributspeichers .
Dieser Parameter gibt Konfigurationsattribute für die Medien-Engine an. Rufen Sie MFCreateAttributes auf, um den Attributspeicher zu erstellen. Legen Sie dann ein oder mehrere Attribute aus der Liste der Medienmodulattribute fest. Einzelheiten finden Sie unter "Hinweise".
[out] ppPlayer
Empfängt einen Zeiger auf die IMFMediaEngine-Schnittstelle . Der Aufrufer muss die Schnittstelle freigeben.
Rückgabewert
Diese Methode kann einen dieser Werte zurückgeben.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Erfolg. |
|
Ein erforderliches Attribut fehlte in pAttr, oder es wurde eine ungültige Kombination von Attributen verwendet. |
Hinweise
Bevor Sie diese Methode aufrufen, rufen Sie MFStartup auf.
Die Medien-Engine unterstützt drei verschiedene Modi:
Mode | BESCHREIBUNG |
---|---|
Frame-Server-Modus |
In diesem Modus liefert die Medien-Engine nicht komprimierte Videoframes an die Anwendung. Die Anwendung ist für die Anzeige der einzelnen Frames mit Microsoft Direct3D oder einer anderen Renderingtechnik verantwortlich.
Die Medien-Engine rendert das Audio; Die Anwendung ist nicht für das Audiorendering verantwortlich. Der Frame-Server-Modus ist der Standardmodus. |
Renderingmodus |
In diesem Modus rendert die Medien-Engine sowohl Audio als auch Video. Das Video wird in ein Fenster oder ein Microsoft DirectComposition-Visual gerendert, das von der Anwendung bereitgestellt wird.
Um den Renderingmodus zu aktivieren, legen Sie entweder das attribut MF_MEDIA_ENGINE_PLAYBACK_HWND oder das attribut MF_MEDIA_ENGINE_PLAYBACK_VISUAL fest. |
Audiomodus |
In diesem Modus rendert die Medien-Engine nur Audio ohne Video.
Um den Audiomodus zu aktivieren, legen Sie das flag MF_MEDIA_ENGINE_AUDIOONLY im dwFlags-Parameter fest. |
Initialisierungsattribute
Die folgenden Attribute werden für den pAttr-Parameter definiert. Einige sind erforderlich, andere sind optional, je nach gewünschtem Modus.Funktion | Attribute | Frameservermodus | Renderingmodus | Audiomodus |
---|---|---|---|---|
Ereignisrückruf | MF_MEDIA_ENGINE_CALLBACK | Erforderlich. | Erforderlich. | Erforderlich. |
Renderziel | Einer der folgenden: Diese Attribute schließen sich gegenseitig aus. Durch Festlegen eines dieser Attribute wird die Medien-Engine in den Renderingmodus versetzt. | Legen Sie keinen Wert fest. | Erforderlich. | Legen Sie keinen Wert fest. |
Direct3D-Format | MF_MEDIA_ENGINE_VIDEO_OUTPUT_FORMAT | Erforderlich. | Optional. | Legen Sie keinen Wert fest. |
DXGI-Geräte-Manager (Microsoft DirectX Graphics Infrastructure) | MF_MEDIA_ENGINE_DXGI_MANAGER | Optional. | Optional. | Legen Sie keinen Wert fest. |
Media Engine-Erweiterungen | MF_MEDIA_ENGINE_EXTENSION | Optional. | Optional. | Optional. |
Inhaltsschutz | Einer der folgenden Punkte trifft zu: | Optional. | Optional. | Optional. |
Audiowiedergabe | Einer der folgenden Punkte trifft zu: | Optional. | Optional. | Optional. |
Windows Phone 8
Diese API wird unterstützt.Auf dem Telefon unterstützt die Medien-Engine nur den Frame-Server-Modus. Beim Versuch, die Schnittstelle im Renderingmodus oder im Audiomodus zu initialisieren, tritt ein Fehler auf.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 8 [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2012 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | mfmediaengine.h |