IAudioStreamVolume::SetAllVolumes 方法 (audioclient.h)

SetAllVolumes 方法设置音频流中所有通道的单个音量级别。

语法

HRESULT SetAllVolumes(
  [in] UINT32      dwCount,
  [in] const float *pfVolumes
);

参数

[in] dwCount

pfVolumes 数组中的元素数。 此参数必须等于流格式中的通道数。 若要获取通道数,请调用 IAudioStreamVolume::GetChannelCount 方法。

[in] pfVolumes

指向音频流中通道音量级别的数组的指针。 pfVolumes 数组中的元素数由 dwCount 参数指定。 调用方将每个通道的音量级别写入其索引与通道号匹配的数组元素。 如果流格式具有 N 个通道,则通道的编号从 0 到 N – 1。 有效卷级别介于 0.0 到 1.0 范围内。

返回值

如果该方法成功,则它会返回 S_OK。 如果失败,可能的返回代码包括但不限于下表中显示的值。

返回代码 说明
E_INVALIDARG
参数 dwCount 不等于流中的通道数,或者 pfVolumes 数组元素的值不在 0.0 到 1.0 的范围内。
E_POINTER
参数 pfVolumesNULL
AUDCLNT_E_DEVICE_INVALIDATED
音频终结点设备已拔出,或者音频硬件或关联的硬件资源已重新配置、禁用、删除或以其他方式不可用。
AUDCLNT_E_SERVICE_NOT_RUNNING
Windows 音频服务未运行。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 audioclient.h

另请参阅

IAudioStreamVolume 接口

IAudioStreamVolume::GetChannelCount