IAMBufferNegotiation::SuggestAllocatorProperties-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.]
Die SuggestAllocatorProperties
-Methode informiert den Pin über die bevorzugten Zuweisungseigenschaften der Anwendung. Rufen Sie diese Methode auf, bevor die Pin eine Verbindung herstellt.
Syntax
HRESULT SuggestAllocatorProperties(
[in] const ALLOCATOR_PROPERTIES *pprop
);
Parameter
[in] pprop
Zeiger auf eine ALLOCATOR_PROPERTIES-Struktur , die die angeforderten Eigenschaften enthält. Ein negativer Wert für jedes Element gibt an, dass der Pin seine Standardeinstellung für diese Eigenschaft verwenden soll.
Rückgabewert
Gibt einen HRESULT-Wert zurück. Die folgenden Werte sind möglich.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Erfolg. |
|
Fehler. |
|
NULL-Zeigerargument. |
|
Der Pin ist bereits verbunden. |
Hinweise
Wenn beide Pins in der Verbindung die IAMBufferNegotiation-Schnittstelle verfügbar machen, rufen Sie diese Methode für jeden Pin auf, um sicherzustellen, dass ein Pin die andere nicht überschreibt.
Um eine bestimmte Anzahl von Puffern anzufordern, legen Sie den cBuffers-Member der ALLOCATOR_PROPERTIES-Struktur fest. Um eine bestimmte Puffergröße anzufordern, legen Sie den cbBuffer-Member fest. Eine Anwendung sollte in der Regel die Ausrichtung oder das Präfix nicht angeben. Wenn die Anzahl der Puffer oder die Größe jedes Puffers zu klein ist, kann das Filterdiagramm Stichproben löschen.
Beispiele
C++ |
---|
ALLOCATOR_PROPERTIES AllocProp; AllocProp.cbAlign = -1; // -1 means no preference. AllocProp.cbBuffer = dwBytesPerSec * dwLatencyInMilliseconds / 1000; AllocProp.cbPrefix = -1; AllocProp.cBuffers = -1; pIAMBufferNegotiation->SuggestAllocatorProperties(&AllocProp); |
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | strmif.h (include Dshow.h) |
Bibliothek | Strmiids.lib |