IOCTL_SBAUD_GET_MUTEPROPERTYVALUES IOCTL (sidebandaudio.h)
音频驱动程序可以调用 IOCTL_SBAUD_GET_MUTEPROPERTYVALUES IOCTL 来查询所有通道的静音步进数据范围和最小值/最大值。 然后,应返回这些值 以KSPROPERTY_AUDIO_MUTE 基本支持。
主要代码
输入缓冲区
基于 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 代码中的相应错误条件。
如果输出缓冲区为 NULL,则 Irp-IoStatus.Status> 设置为 STATUS_BUFFER_TOO_SMALL Irp-IoStatus.Information> 设置为输出缓冲区所需的字节数。
如果提供了正确大小的输出缓冲区,则 Irp-IoStatus.Information> 设置为写入输出缓冲区的字节数。
有关详细信息,请参阅 NTSTATUS 值。
注解
此 IOCTL 只能从内核模式调用。
实现旁带音频的音频驱动程序应通过其 KS 筛选器中的静音节点或通过音频引擎节点播发终结点静音。 这两种方法都可以利用此 IOCTL 提供的基本支持信息。
要求
要求 | 值 |
---|---|
Header | sidebandaudio.h |