Costruttore COutputQueue.COutputQueue

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, IMFMediaEngine 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, IMFMediaEngine e Audio/Video Capture in Media Foundation invece di DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

Metodo del costruttore.

Sintassi

COutputQueue(
   IPin    *pInputPin,
   HRESULT *phr,
   BOOL    bAuto = TRUE,
   BOOL    bQueue = TRUE,
   LONG    lBatchSize = 1,
   BOOL    bBatchExact = FALSE,
   LONG    lListSize = DEFAULTCACHE,
   DWORD   dwPriority = THREAD_PRIORITY_NORMAL
);

Parametri

pInputPin

Puntatore all'interfaccia IPin del pin di input. L'oggetto fornirà campioni a questo pin.

Phr

Puntatore a un codice restituito HRESULT . Impostare il valore su S_OK prima di chiamare questo metodo. In caso di restituzione, phr riceve un valore che indica l'esito positivo o negativo del metodo.

bAuto

Flag che specifica se l'oggetto decide quando creare una coda. Se TRUE, l'oggetto crea una coda solo se il pin di input potrebbe bloccarsi. Se FALSE, il parametro bQueue specifica se creare una coda.

bQueue

Se bAuto è TRUE, questo parametro viene ignorato. Se bAuto è FALSE, questo flag specifica se creare una coda.

lBatchSize

Numero massimo di campioni da distribuire in un batch.

bBatchExact

Flag che specifica se usare dimensioni batch esatte. Se TRUE, l'oggetto attende gli esempi lBatchSize prima di recapitarli al pin di input. Se FALSE, l'oggetto fornisce campioni man mano che li riceve.

lListSize

Dimensioni della cache per la coda. Il valore predefinito DEFAULTCACHE è una costante definita per la classe CBaseList .

dwPriority

Priorità del thread che fornisce esempi.

Commenti

Se bAuto è TRUE, l'oggetto chiama il metodo IMemInputPin::ReceiveCanBlock sul pin downstream. Se ReceiveCanBlock restituisce S_OK ,vale a dire che il pin potrebbe bloccarsi nelle chiamate IMemInputPin::Receive , l'oggetto crea un thread per il recapito degli esempi. In caso contrario, non crea un thread.

Se bAuto è FALSE, il valore di bQueue determina se creare un thread.

Se l'oggetto crea un thread, assegna l'handle di thread alla variabile membro COutputQueue::m_hThread . La procedura thread è COutputQueue::InitialThreadProc e il parametro thread è un puntatore a questo. L'oggetto crea anche una coda per contenere campioni, che viene fornita dalla variabile membro COutputQueue::m_List .

Requisiti

Requisito Valore
Intestazione
Outputq.h (include Streams.h)
Libreria
Strmbase.lib (build retail);
Strmbasd.lib (build di debug)

Vedi anche

Classe COutputQueue