Metodo CBaseOutputPin.DecideBufferSize

[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 DecideBufferSize metodo imposta i requisiti del buffer.

Sintassi

virtual HRESULT DecideBufferSize(
   IMemAllocator        *pAlloc,
   ALLOCATOR_PROPERTIES *ppropInputRequest
) = 0;

Parametri

pAlloc

Puntatore all'interfaccia IMemAllocator dell'allocatore.

ppropInputRequest

Puntatore a una struttura ALLOCATOR_PROPERTIES che contiene i requisiti del buffer del pin di input. Se il pin di input non ha requisiti, il chiamante deve zero i membri di questa struttura prima di chiamare il metodo.

Valore restituito

Restituisce S_OK se ha esito positivo o un valore HRESULT che indica la causa dell'errore.

Commenti

Eseguire l'override di questo metodo nella classe derivata. Chiamare il metodo IMemAllocator::SetProperties per specificare i requisiti del buffer. In genere, la classe derivata rispetta i requisiti del buffer del pin di input, ma non è necessario.

Requisiti

Requisito Valore
Intestazione
Amfilter.h (include Streams.h)
Libreria
Strmbase.lib (build al dettaglio);
Strmbasd.lib (build di debug)

Vedi anche

Classe CBaseOutputPin