Поделиться через


Функция AcxTargetStreamCreate (acxtargets.h)

Функция AcxTargetStreamCreate используется для создания целевого потока.

Синтаксис

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

Параметры

Device

Объект WDFDEVICE ( описанный в разделе Сводка объектов платформы), связанный с текущим ACXCIRCUIT.

Attributes

Дополнительные атрибуты, определенные с помощью структуры WDF_OBJECT_ATTRIBUTES , которые используются для задания различных значений объекта: очистки и уничтожения обратных вызовов, типа контекста и указания его родительского объекта.

Config

Инициализированная структура ACX_TARGET_STREAM_CONFIG , описывающая конфигурацию целевого потока.

TargetStream

Указатель на расположение, которое получает дескриптор нового объекта ACXTARGETSTREAM. Дополнительные сведения об объектах ACX см. в разделе Сводка по объектам ACX.

Возвращаемое значение

Возвращает значение STATUS_SUCCESS , если вызов был успешным. В противном случае возвращается соответствующий код ошибки. Дополнительные сведения см. в разделе Использование значений NTSTATUS.

Комментарии

Драйверы должны использовать ACXSTREAMBRIDGE для автоматического распространения звукового потока вниз на другие подключенные каналы.

Пример


    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]);

Требования ACX

Минимальная версия ACX: 1.0

Дополнительные сведения о версиях ACX см. в статье Обзор версий ACX.

Требования

Требование Значение
Заголовок acxtargets.h
IRQL PASSIVE_LEVEL

См. также раздел