次の方法で共有


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_DESCRIPTIONKSPROPERTY_MEMBERSHEADERに記載されているように、ステップデータ範囲のKSPROPERTY_MEMBERSHEADERとミュートが続きます。

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

出力バッファーの長さ

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

状態ブロック

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

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

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

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

備考

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

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

必要条件

要件 価値
ヘッダー sidebandaudio.h

関連項目

KSPROPERTY_AUDIO_MUTE

KSNODEPROPERTY_AUDIO_CHANNEL

IMiniportAudioEngineNode::GetDeviceChannelCount

I/O 制御コードの概要

sidebandaudio.h する