Microsoft WASAPI -做不同的音频格式需要不同的数据在缓冲区中,为同一波



假设我想使用WASAPI播放正弦波

我输入AudioClient缓冲区的数据是否总是介于-1和1之间的样本,或者PCM和IEEE_Float格式以及其他格式之间是否会有所不同?

谢谢。

现在我只是使用1到-1,但我想知道我是否需要为每种格式编写不同的缓冲区输入代码。

MEDIASUBTYPE_IEEE_FLOAT/WAVE_FORMAT_IEEE_FLOAT音频类型使用[-1,+1]范围内的浮点值。

MEDIASUBTYPE_PCM/WAVE_FORMAT_PCM有整数值,

8位采样以无符号字节存储,取值范围为0 ~ 255。16位采样被存储为2补位有符号整数,范围从-32768到32767。

你也可以在这里找到很好的参考:如何处理WAV数据的不对称?

最新更新