Freigeben über


CMemAllocator.SetProperties-Methode

[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.]

Die SetProperties -Methode gibt die Anzahl der zuzuordnenden Puffer und die Größe der einzelnen Puffer an.

Syntax

HRESULT SetProperties(
   ALLOCATOR_PROPERTIES *pRequest,
   ALLOCATOR_PROPERTIES *pActual
);

Parameter

pRequest

Zeiger auf eine ALLOCATOR_PROPERTIES Struktur, die die Pufferanforderungen enthält.

pActual

Zeiger auf eine ALLOCATOR_PROPERTIES-Struktur , die die tatsächlichen Puffereigenschaften empfängt.

Rückgabewert

Gibt einen der in der folgenden Tabelle gezeigten HRESULT-Werte zurück.

Rückgabecode Beschreibung
S_OK
Erfolg.
E_POINTER
NULL-Zeigerargument.
VFW_E_ALREADY_COMMITTED
Der zugeordnete Arbeitsspeicher kann nicht geändert werden, während der Filter aktiv ist.
VFW_E_BADALIGN
Es wurde eine ungültige Ausrichtung angegeben.
VFW_E_BUFFERS_OUTSTANDING
Mindestens ein Puffer ist weiterhin aktiv.

Bemerkungen

Diese Methode überschreibt die CBaseAllocator::SetProperties-Methode .

Die Pufferausrichtung, die durch den cbAlign-Member der ALLOCATOR_PROPERTIES-Struktur angegeben wird, muss eine gerade Leistung von zwei aufweisen.

Anforderungen

Anforderung Wert
Header
Amfilter.h (streams.h einschließen)
Bibliothek
Strmbase.lib (Einzelhandelsbuilds);
Strmbasd.lib (Debugbuilds)

Siehe auch

CMemAllocator-Klasse