IOCTL_SBAUD_GET_VOLUMEPROPERTYVALUES IOCTL (sidebandaudio.h)

音频驱动程序可以调用此 IOCTL 来查询所有通道的音量阶梯数据范围和最小/最大值。 然后,应为KSPROPERTY_AUDIO_VOLUMELEVEL基本支持返回这些值。

主要代码

IRP_MJ_DEVICE_CONTROL

输入缓冲区

终结点索引。

输入缓冲区长度

ULONG 的大小。

输出缓冲区

KSPROPERTY_DESCRIPTION后跟KSPROPERTY_MEMBERSHEADER和卷阶梯数据范围,如KSPROPERTY_DESCRIPTION和KSPROPERTY_MEMBERSHEADER中所述。

输出缓冲区长度

除了所有KSPROPERTY_MEMBERSHEADER和步骤范围之外,KSPROPERTY_DESCRIPTION的大小。 此大小在 SIDEBANDAUDIO_ENDPOINT_DESCRIPTOR::VolumePropertyValuesSize 中返回。

输入/输出缓冲区

输入终结点索引和输出KSPROPERTY_DESCRIPTION共享相同的缓冲区。

输入/输出缓冲区长度

分配的缓冲区长度应为 SIDEBANDAUDIO_ENDPOINT_DESCRIPTOR::VolumePropertyValuesSize。

状态块

如果请求成功,则 Irp-IoStatus.Status> 设置为STATUS_SUCCESS。 否则,状态为相应的错误条件作为 NTSTATUS 代码。 有关详细信息,请参阅 NTSTATUS 值

要求

   
Header sidebandaudio.h

另请参阅

KSPROPERTY_AUDIO_VOLUMELEVEL

KSNODEPROPERTY_AUDIO_CHANNEL