次の方法で共有


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 の数とは無関係に、1 つのダウンレベル 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

関連項目

  • acxstreams.h ヘッダー する