AcxStreamBridgeAddStream 函数 (acxstreams.h)

AcxStreamBridgeAddStream 函数将现有的 ACXSTREAM 添加到现有的 ACXSTREAMBRIDGE。 有关 ACX 对象的详细信息,请参阅 ACX - ACX 对象的摘要

语法

NTSTATUS AcxStreamBridgeAddStream(
  ACXSTREAMBRIDGE Bridge,
  ACXSTREAM       Stream
);

参数

Bridge

ACXSTREAMBRIDGE 对象由线路用来传播流创建、流的状态转换和终结点线路流段之间的 DRM 设置。 此对象仅在多线路(音频复合)方案中使用。

Stream

ACXSTREAM 对象表示线路创建的音频流。 该流由基于父线路的元素创建的元素列表组成。

返回值

如果调用成功,则返回 STATUS_SUCCESS。 否则,它将返回适当的错误代码。 有关详细信息,请参阅 使用 NTSTATUS 值

言论

驱动程序在以下方案中调用 AcxStreamBridgeAddStream:

(a) 驱动程序希望手动选择要用于当前 ACXSTREAM 的 ACXSTREAMBRIDGE。

(b) 驱动程序(及其硬件要求)需要下层 ACXCIRCUIT,即靠近设备网桥引脚的线路,在上层 ACXCIRCUIT 采取行动之前采取作。

(c) 驱动程序需要在下层 ACXCIRCUIT 前后采取行动。

对于 AcxStreamBridgeMux 类型,仅创建一个下层 ACXSTREAM,而与添加到此桥的输入 ACXSTREAM 的数量无关。 这意味着,输出 ACXSTREAM(对于本地线路,该流使用 ACXTARGETSTREAM 表示),仅为添加到 ACXSTREAMBRIDGE 的第一个 ACXSTREAM 创建。 任何其他输入 ACXSTREAM,只需引用此现有的 ACXTARGETSTREAM。

对于 AcxSTreamBridgeMux 类型,当最后一个输入 ACXSTREAM 与 AcxStreamBridgeRemoveStream 从 ACXSTREAMBRIDGE 中删除时,将删除输出 ACXTARGETSTREAM。

示例用法如下所示。 未显示错误处理代码。

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

        // Pin ID 1 is the bridge pin in this example.
        bridgePin = AcxCircuitGetPinById(Circuit, 1);
        
        status = AcxPinAddStreamBridges(bridgePin, &bridge, 1);

        status = AcxStreamBridgeAddStream(bridge, stream);

ACX 要求

最低 ACX 版本: 1.0

有关 ACX 版本的详细信息,请参阅 ACX 版本概述

要求

要求 价值
标头 acxstreams.h
IRQL PASSIVE_LEVEL

另请参阅