Condividi tramite


Funzione AcxTargetStreamCreate (acxtargets.h)

La funzione AcxTargetStreamCreate viene usata per creare un flusso di destinazione.

Sintassi

NTSTATUS AcxTargetStreamCreate(
  WDFDEVICE                 Device,
  PWDF_OBJECT_ATTRIBUTES    Attributes,
  PACX_TARGET_STREAM_CONFIG Config,
  ACXTARGETSTREAM           *TargetStream
);

Parametri

Device

Oggetto WDFDEVICE (descritto in Riepilogo degli oggetti framework) associato all'oggetto ACXCIRCUIT corrente.

Attributes

Attributi aggiuntivi definiti usando una struttura WDF_OBJECT_ATTRIBUTES utilizzata per impostare i valori di vari oggetti: pulizia ed eliminazione dei callback, tipo di contesto e per specificare il relativo oggetto padre.

Config

Struttura ACX_TARGET_STREAM_CONFIG inizializzata che descrive la configurazione del flusso di destinazione.

TargetStream

Puntatore a una posizione che riceve un handle per il nuovo oggetto ACXTARGETSTREAM. Per altre informazioni sugli oggetti ACX, vedere Riepilogo degli oggetti ACX.

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 di valori NTSTATUS.

Osservazioni

I driver devono usare ACXSTREAMBRIDGE per propagare automaticamente un flusso audio di livello inferiore agli altri circuiti connessi.

Esempio


    WDF_OBJECT_ATTRIBUTES               attributes;
    PAGGREGATOR_PIN_CONTEXT             pinCtx;
    ACXSTREAM                           stream;
    AGGREGATOR_STREAM_CONTEXT*          streamCtx;
    ACX_TARGET_STREAM_CONFIG            targetStreamCfg;

    streamCtx = GetAggregatorStreamContext(stream);
    ASSERT(streamCtx);
    streamCtx->StreamState = AcxStreamStateStop;

    pinCtx = GetAggregatorPinContext(Pin);

    WDF_OBJECT_ATTRIBUTES_INIT(&attributes);
    attributes.ParentObject = stream;

...

        ACX_TARGET_STREAM_CONFIG_INIT(&targetStreamCfg);
        targetStreamCfg.TargetCircuit = pinCtx->TargetPins[i]->TargetCircuit;
        targetStreamCfg.PinId = pinCtx->TargetPins[i]->TargetPinId;
        targetStreamCfg.DataFormat = StreamFormat;
        targetStreamCfg.SignalProcessingMode = SignalProcessingMode;
        targetStreamCfg.OptionalParameters = VarArguments;

...

        status = AcxTargetStreamCreate(Device, &attributes, &targetStreamCfg, &streamCtx->TargetStreams[i]);

Requisiti ACX

versione minima di ACX: 1.0

Per altre informazioni sulle versioni di ACX, vedere panoramica della versione ACX.

Fabbisogno

Requisito Valore
intestazione acxtargets.h
IRQL PASSIVE_LEVEL

Vedere anche