IAMDevMemoryAllocator::GetDevMemoryObject-Methode (strmif.h)
[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde von MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation abgelöst. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code mediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet, wenn möglich. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet werden.]
Syntax
HRESULT GetDevMemoryObject(
[out] IUnknown **ppUnkInnner,
[in] IUnknown *pUnkOuter
);
Parameter
[out] ppUnkInnner
Adresse eines Zeigers auf die eigene IUnknown des neu erstellten Steuerelementobjekts. Diese innere IUnknown-Schnittstelle sollte freigegeben werden, wenn das äußere Objekt zerstört wird. Die benutzerdefinierte Zuweisung sollte die QueryInterface-Methode für diesen Zeiger aufrufen, um die IAMDevMemoryControl-Schnittstelle abzurufen.
[in] pUnkOuter
Zeiger auf die eigene IUnknown-Schnittstelle der benutzerdefinierten Zuweisung. Diese Schnittstelle aggregiert das Gerätespeichersteuerungsobjekt innerhalb der benutzerdefinierten Zuweisung.
Rückgabewert
Gibt einen HRESULT-Wert zurück.
Bemerkungen
Das Gerätespeichersteuerungsobjekt ist erforderlich, um mit der benutzerdefinierten Zuweisung zu aggregieren, da Renderer, die die Verwendung des on-board-Arbeitsspeichers erfordern, IAMDevMemoryControl abfragen, wenn sie eine neue Zuweisung erhalten, um zu überprüfen, ob der Speicher vom gleichen Gerät stammt. Dies liegt daran, dass der Hardwarefilter ein IMemAllocator-Objekt empfängt, das den onboard-Arbeitsspeicher verwenden kann oder nicht. Um zu entscheiden, ob es sich um eine kompatible Zuweisung handelt, fragt das Objekt die IAMDevMemoryControl-Schnittstelle ab, um auf bestimmte Methoden zuzugreifen. IAMDevMemoryControl erstellt ein aggregiertes Objekt, das die Methoden von IAMDevMemoryControl implementiert (diese sind häufig hardwarespezifisch).
Regeln zur Implementierung der Aggregation durch das äußere Objekt finden Sie in der COM-Dokumentation.
Requirements (Anforderungen)
Zielplattform | Windows |
Kopfzeile | strmif.h (include Dshow.h) |