Condividi tramite


Metodo IMemAllocator::SetProperties (strmif.h)

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation anziché DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

Il SetProperties metodo specifica il numero di buffer da allocare e le dimensioni di ogni buffer.

Sintassi

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

Parametri

pRequest

Puntatore a una struttura ALLOCATOR_PROPERTIES che contiene i requisiti del buffer.

pActual

Puntatore a una struttura ALLOCATOR_PROPERTIES che riceve le proprietà effettive del buffer.

Valore restituito

Restituisce un valore HRESULT . I valori possibili includono quelli visualizzati nella tabella seguente.

Codice restituito Descrizione
S_OK
Operazione completata.
E_POINTER
Argomento puntatore NULL.
VFW_E_ALREADY_COMMITTED
Impossibile modificare la memoria allocata mentre il filtro è attivo.
VFW_E_BADALIGN
È stato specificato un allineamento non valido.
VFW_E_BUFFERS_OUTSTANDING
Uno o più buffer sono ancora attivi.

Commenti

Questo metodo specifica i requisiti del buffer, ma non alloca alcun buffer. Chiamare il metodo IMemAllocator::Commit per allocare i buffer.

Il chiamante alloca due strutture ALLOCATOR_PROPERTIES. Il parametro pRequest contiene i requisiti del buffer del chiamante, incluso il numero di buffer e le dimensioni di ogni buffer. Quando il metodo restituisce, il parametro pActual contiene le proprietà del buffer effettive, come impostato dall'allocatore.

Quando viene chiamato questo metodo, l'allocatore non deve essere eseguito il commit o avere buffer in sospeso.

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione strmif.h (include Dshow.h)
Libreria Strmiids.lib

Vedi anche

Codici errore e esito positivo

Interfaccia IMemAllocator