次の方法で共有


IOCTL_SBAUD_GET_MUTEPROPERTYVALUES IOCTL (sidebandaudio.h)

オーディオ ドライバーは 、IOCTL_SBAUD_GET_MUTEPROPERTYVALUES IOCTL を呼び出して、すべてのチャネルのミュートステップされたデータ範囲と最小値/最大値を照会できます。 これらの値は、基本的なサポート KSPROPERTY_AUDIO_MUTE 返される必要があります。

メジャー コード

IRP_MJ_DEVICE_CONTROL

[入力バッファー]

IOCTL_SBAUD_GET_DEVICE_DESCRIPTORによって報告されるオーディオ エンドポイントの数に基づく 0 ベースのエンドポイント インデックス値。 これは 0 から (N-1) までの ULONG 値です。N はデバイスのエンドポイントの数です。

入力バッファーの長さ

ULONG のサイズ。

出力バッファー

KSPROPERTY_DESCRIPTIONとKSPROPERTY_MEMBERSHEADERに記載されているように、KSPROPERTY_DESCRIPTIONの後にKSPROPERTY_MEMBERSHEADERとミュートのステップ付きデータ範囲が続きます。

NULL の場合、Irp-IoStatus.Information> は出力バッファーに必要なバイト数に設定されます。

出力バッファーの長さ

すべてのKSPROPERTY_MEMBERSHEADERとステップ範囲に加えて、KSPROPERTY_DESCRIPTIONのサイズ。 このサイズは、SIDEBANDAUDIO_ENDPOINT_DESCRIPTORで返されます。MutePropertyValuesSize。

ステータス ブロック

Irp-IoStatus.Status> は、要求が成功した場合はSTATUS_SUCCESSに設定されます。それ以外の場合は、NTSTATUS コードとして適切なエラー条件に Status が設定されます。

出力バッファーが NULL の場合、Irp-IoStatus.Status> はSTATUS_BUFFER_TOO_SMALLに設定され、Irp-IoStatus.Information> は出力バッファーに必要なバイト数に設定されます。

適切なサイズの出力バッファーが指定されている場合、Irp-IoStatus.Information> は出力バッファーに書き込まれたバイト数に設定されます。

詳細については、「 NTSTATUS 値」を参照してください。

注釈

この IOCTL はカーネル モードからのみ呼び出すことができます。

サイドバンド オーディオを実装するオーディオ ドライバーは、KS フィルターのミュート ノードまたはオーディオ エンジン ノードを介してエンドポイントのミュートをアドバタイズする必要があります。 どちらの方法でも、この IOCTL によって提供される基本的なサポート情報を利用できます。

要件

要件
Header sidebandaudio.h

こちらもご覧ください

KSPROPERTY_AUDIO_MUTE

KSNODEPROPERTY_AUDIO_CHANNEL

IMiniportAudioEngineNode::GetDeviceChannelCount

I/O 制御コードの概要

sidebandaudio.h