_WAVEFORMATEX结构

_WAVEFORMATEX结构定义波形音频数据的格式。

语法

typedef struct _tWAVEFORMATEX {
  WORD  wFormatTag;
  WORD  nChannels;
  DWORD nSamplesPerSec;
  DWORD nAvgBytesPerSec;
  WORD  nBlockAlign;
  WORD  wBitsPerSample;
  WORD  cbSize;
} _WAVEFORMATEX;

成员

wFormatTag

必须设置为设备支持的格式或格式。 请注意,建议使用WMDM_WAVE_FORMAT_ALL来指示对所有格式的支持,Windows媒体的早期版本设备管理器。 但是,不再建议这样做,因为不同的媒体播放器会以不同的方式解释这一点,很少有设备可以真正播放任何文件格式。 现在建议使用WMDM_ENUM_PROP_VALID_VALUES_FORM枚举的 WMDM_ENUM_PROP_VALID_VALUES_ANY 值,或者更适合使用 WMDM_PROP_VALUES_RANGE 结构指定一系列格式。

nChannels

波形音频数据中的通道数。 Monaural 数据使用一个通道,立体声数据使用两个通道。

nSamplesPerSec

采样率,以每秒样本 (赫茨) ,每个通道必须播放或录制。 nSamplesPerSec 的常见值为 8.0 千赫 (kHz) 、11.025 kHz、22.05 kHz 和 44.1 kHz。

nAvgBytesPerSec

格式标记所需的平均数据传输速率(以字节/秒为单位)。 播放和录制软件可以使用 nAvgBytesPerSec 成员估计缓冲区大小。

nBlockAlign

块对齐方式(以字节为单位)。 块对齐是 wFormatTag 格式类型的最小原子单元数据。 播放和录制软件一次必须处理多个 nBlockAlign 字节的数据。 从设备写入和读取的数据必须始终从块的开头开始。 例如,在未阻止对齐) 的边界上,无法正确开始在示例 (中间播放 PCM 数据。

wBitsPerSample

wFormatTag 格式类型的每个样本的位数。

cbSize

忽略此成员。

要求

要求 Value
标头
Wmdm.idl

另请参阅

IMDSPDevice::GetFormatSupport

IMDSPStorage::CreateStorage

IMDSPStorage::GetAttributes

IWMDMDevice::GetFormatSupport

IWMDMOperation::GetObjectAttributes

IWMDMOperation::SetObjectAttributes

IWMDMStorage::GetAttributes

结构