Funzione AcxStreamBridgeRemoveStream (acxstreams.h)
La funzione AcxStreamBridgeRemoveStream rimuove l'ACXSTREAM specificato dall'oggetto ACXSTREAMBRIDGE. Per altre informazioni sugli oggetti ACX, vedere ACX - Riepilogo degli oggetti ACX.
Sintassi
NTSTATUS AcxStreamBridgeRemoveStream(
ACXSTREAMBRIDGE Bridge,
ACXSTREAM Stream
);
Parametri
Bridge
Un oggetto ACXSTREAMBRIDGE viene usato da un circuito per propagare la creazione del flusso, le transizioni degli stati del flusso e le impostazioni DRM tra i segmenti di flusso del circuito dell'endpoint. Questo oggetto viene usato solo in uno scenario multi-circuito (composito audio).
Stream
Handle per l'oggetto ACXSTREAM da rimuovere da ACXSTREAMBRIDGE.
Valore restituito
Restituisce STATUS_SUCCESS
se la chiamata ha avuto esito positivo. In caso contrario, restituisce un codice di errore appropriato. Per altre informazioni, vedere Uso dei valori NTSTATUS.
Commenti
Questo DDI può essere chiamato solo dal contesto del gestore di pulizia del flusso del driver. Il chiamante richiama questo DDI per separare manualmente un input ACXSTREAM dall'oggetto ACXSTREAMBRIDGE specificato.
I driver chiamano AcxStreamBridgeRemoveStream in questi scenari:
(a) i driver vogliono rimuovere manualmente ACXSTREAM da ACXSTREAMBRIDGE.
(b) i driver (e i requisiti h/w) devono essere necessari per gli ACXSTREAMs di livello superiore, ad esempio i flussi di circuito più vicini al pin del bridge di streaming, per eseguire l'azione prima di ridurre ACXSTREAMs.
(c) i driver devono intervenire prima e dopo l'uscita di ACXSTREAM a livello inferiore.
Per un tipo AcxStreamBridgeMux, viene creato un solo ACXSTREAM a livello inferiore indipendentemente dal numero di acXSTREAMs di input aggiunti a questo bridge. Ciò significa che l'output ACXSTREAM (che per il circuito locale viene rappresentato con un ACXTARGETSTREAM), viene creato solo per il primo ACXSTREAM aggiunto a ACXSTREAMBRIDGE. Tutti gli altri input ACXSTREAMs accettano solo un riferimento a questo ACXTARGETSTREAM esistente.
Per un tipo AcxStreamBridgeMux, l'output ACXTARGETSTREAM viene rimosso quando l'ultimo input ACXSTREAM viene rimosso da ACXSTREAMBRIDGE con AcxStreamBridgeRemoveStreamStream.
Esempio
Di seguito è riportato l'esempio di utilizzo.
status = AcxStreamBridgeAddStream(bridge, stream);
// Get I/O target to send I/O to the target stream.
targetStream = AcxStreamBridgeGetTargetStream(bridge, stream);
// Target stream is closed if this was last input ACXSTREAM removed.
status = AcxStreamBridgeRemoveStream(bridge, stream);
Requisiti ACX
Versione minima DI ACX: 1.0
Per altre informazioni sulle versioni ACX, vedere Panoramica della versione di ACX.
Requisiti
Requisito | Valore |
---|---|
Intestazione | acxstreams.h |
IRQL | PASSIVE_LEVEL |