首页 > 解决方案 > WAV 文件:如何存储数据子块

问题描述

我目前正在尝试了解如何处理和存储 WAV 文件。我看过的大多数资源都清楚地解释了如何处理头块,但没有解释数据(是我发现最有用的资源)。从我正在检查的 WAV 文件中,我得到:

NumChannels = 2
SampleRate = 44100 BitsPerSample
= 16
Subchunk2Size = 2056192(11.65s 音频文件)。
NumSamples = 514048

所以据我了解,每秒播放 44100 个样本,每个样本都是 16 位的。本次录音共有 514048 个样本。但是频道的数量呢?这对读取数据有何影响?我提到的资源显示: 在此处输入图像描述

但我不太明白这是什么意思。这不是显示样本是 32 位的吗?那么左右声道呢?他们不会交替吗?为什么他们在切换到另一个频道之前是 2 人一组?

标签: audiobinaryhexwav

解决方案


该图有些不清楚,但这是我从中了解到的,以及您提供的其他信息:

  • 每个椭圆包含 16 位(两个字节,四个十六进制数字),所以一个样本;
  • 有成对的样本;
  • 标签“右通道样本”指向每对的右侧样本;
  • 同样,“左通道样本”指向左侧样本。

所以在我看来左右通道样本确实交替出现。

至于编号,我想是为了表明第一对样本在各自的通道中都是“样本 2”,然后是“样本 3”对,依此类推。我会将它们标记为“样本对 2”等。


推荐阅读