共用方式為


IOCTL_SBAUD_GET_MUTEPROPERTYVALUES IOCTL (sidebandaudio.h)

音訊驅動程式可以呼叫 IOCTL_SBAUD_GET_MUTEPROPERTYVALUES IOCTL 來查詢所有通道的靜音階梯式數據範圍和最小值/最大值。 然後應該針對基本支持傳回這些值 KSPROPERTY_AUDIO_MUTE

主要程序代碼

IRP_MJ_DEVICE_CONTROL

輸入緩衝區

以 0 為基礎的端點索引值,根據 IOCTL_SBAUD_GET_DEVICE_DESCRIPTOR所報告的音訊端點數目。 這是從 0 到 (N-1) 的 ULONG 值,其中 N 是裝置的端點數目。

輸入緩衝區長度

ULONG 的大小。

輸出緩衝區

KSPROPERTY_DESCRIPTION後面接著 KSPROPERTY_MEMBERSHEADER 和 Mute 階梯狀數據範圍,如 KSPROPERTY_DESCRIPTIONKSPROPERTY_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