Metodo CTransInPlaceFilter.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 del pin di output.
Sintassi
HRESULT DecideBufferSize(
IMemAllocator *pAlloc,
ALLOCATOR_PROPERTIES *pProperties
);
Parametri
-
pAlloc
-
Puntatore all'oggetto IMemAllocator usato dal pin di output.
-
pProperties
-
Puntatore alle proprietà dell'allocatore richieste per conteggio, dimensioni e allineamento, come specificato dalla struttura ALLOCATOR_PROPERTIES .
Valore restituito
Restituisce un valore HRESULT . I valori possibili includono quelli visualizzati nella tabella seguente.
Codice restituito | Descrizione |
---|---|
|
Operazione riuscita |
|
Operazioni non riuscite |
Commenti
Questo metodo viene chiamato quando la classe CTransInPlaceFilter deve fornire una dimensione del buffer al filtro downstream. Se il filtro CTransInPlaceFilter è già connesso a upstream, usa le proprietà allocator nella connessione pin upstream. In caso contrario, imposta le dimensioni del buffer su 1 byte come valore temporaneo del segnaposto. Quando il filtro upstream si connette, la classe CTransInPlaceFilter rinegotizza l'allocatore downstream. Per altre informazioni sul processo di connessione pin in questa classe, vedere Classe CTransInPlaceFilter.
Requisiti
Requisito | Valore |
---|---|
Intestazione |
|
Libreria |
|