查找 .wav 标头中的样本数
wav 文件有一个标头(44 字节)。在此标头中指定了信号的采样率、通道数等、音频文件的样本数。 我需要知道在哪里可以找到标题中的样本数量信息。
公式是什么。
The wav file has a header (44 bytes). In this header is specified the sample rate of the signal, number of channels and so on, number of samples from the audio file.
I need to know where can I find the number of samples information in the header.
What would be the formula.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
从第 40 个字节开始,接下来的 4 个字节(小端)是 Subchunk2 大小。这也可以从公式中推导出来:
NumChannels
从字节 22 开始,长度为 2 个字节(小尾数)。BitsPerSample
从第 34 个字节开始,长度为 2 个字节(小尾数)。替换所有这些,您可以得到 NumSamples,即样本数。例如:如果
Subchunksize2=2048、NumChannels=2 且 BitsPerSample=16
,您将得到2048 = NumSamples * 2 * 2
所以NumSamples=512
一个好的读物是 此处。
Starting at the 40th byte for the next 4 bytes (little endian) is the Subchunk2 size. This can also be deduced from the formula:
NumChannels
start at byte 22 and 2 bytes (little endian) in length.BitsPerSample
start at 34th byte and is 2 bytes (little endian) in length. Replacing all these you can get the NumSamples which is the number of samples.For example: if
Subchunksize2=2048, NumChannels=2 and BitsPerSample=16
, you get2048 = NumSamples * 2 * 2
soNumSamples=512
A good read is here.