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


Функция AcxStreamBridgeCreate (acxstreams.h)

Функция AcxStreamBridgeCreate использует ACX_STREAM_BRIDGE_CONFIG для создания StreamBridge для канала.

ACXSTREAMBRIDGE используется каналом для распространения создания потока, переходов состояний потока и параметров DRM между сегментами потока канала конечной точки. Этот объект используется только в сценарии с несколькими каналами (составными аудио).

Синтаксис

NTSTATUS AcxStreamBridgeCreate(
  ACXCIRCUIT                AcxCircuit,
  PWDF_OBJECT_ATTRIBUTES    Attributes,
  PACX_STREAM_BRIDGE_CONFIG Config,
  ACXSTREAMBRIDGE           *StreamBridge
);

Параметры

AcxCircuit

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

Attributes

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

Config

Структура ACX_STREAM_BRIDGE_CONFIG , которая определяет конфигурацию.

StreamBridge

Указатель на расположение, которое получает дескриптор нового объекта ACXSTREAMBRIDGE.

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

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

Комментарии

Конечная точка звука — это коллекция из одного или нескольких звуковых каналов (объектов ACXCIRCUIT), которые собираются для создания полного звукового пути. Драйвер ACX обычно создает звуковые каналы для разных конечных точек звука, хотя ACX не запрещает каналы, созданные тем же драйвером, входить в коллекцию одной и той же аудиоконечной точки, если они принадлежат другому стеку устройств. Конечная точка звука — это коллекция звуковых каналов, созданных теми же или разными звуковыми драйверами.

По умолчанию родительским объектом нового объекта ACXSTREAMBRIDGE является указанный ACXCIRCUIT. Вы можете использовать элемент ParentObject структуры WDF_OBJECT_ATTRIBUTES, чтобы указать другой родительский объект с ACXCIRCUIT в качестве предка. Платформа удаляет объект ACXSTREAMBRIDGE при удалении родительского объекта.

Драйвер может удалить объект ACXSTREAMBRIDGE после завершения работы с объектом . В противном случае объект будет оставаться до тех пор, пока родительский объект не будет удален, что происходит при его создании во время инициализации или создания ACXCIRCUIT.

Контакт может быть связан с нулевым, одним или несколькими ACXSTREAMBRIDGEs. ACX выполняет поиск в связанном списке режимов обработки сигнала ACXPIN на соответствие режиму обработки потокового сигнала. Поиск останавливается при первом совпадении.

ACX создает acXSTREAMBRIDGE по умолчанию для моста ACXCIRCUIT в ACXCIRCUIT, если драйвер не создает его, и драйвер не отключает обработку моста потока по умолчанию с помощью функции AcxCircuitInitDisableDefaultStreamBridgeHandling.

Пример

Ниже приведен пример использования.

    ACX_STREAM_BRIDGE_CONFIG bridgeCfg;
    ACXSTREAMBRIDGE          bridge = NULL;
    
    ACX_STREAM_BRIDGE_CONFIG_INIT(&bridgeCfg);
    bridgeCfg.InModesCount = 1;
    bridgeCfg.InModes      = inModes; 
    bridgeCfg.OutMode      = &AUDIO_SIGNALPROCESSINGMODE_DEFAULT;

    status = AcxStreamBridgeCreate(circuit, &attributes, &bridgeCfg, &bridge);

Требования ACX

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

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

Требования

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

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