如何从wav文件中获取采样率?

How to get sample rate from wav file?

本文关键字:获取 采样率 文件 wav      更新时间:2023-10-16

我正在使用双簧管库进行声音播放

https://github.com/google/oboe/blob/master/docs/FullGuide.md

作为我正在使用的声音文件.wav文件。据我所知,有一种方法可以从.wav文件头中获取 - 采样率。

所以,问题是 - 如何从任意.wav文件中C++语法上读取采样率?

C++中没有用于解析 wav 文件的标准功能。

标头索引 24-27 处的字节表示一个 32 位整数,即以 Hz 为单位的采样率。

如果你想编写自己的WAV解析器,也许看看这个问题(注意代码中的一个错误,在我的答案中得到了纠正(: 在 C 中打印 WAV 标头

但可能使用库更方便。例如,libsndfile 有一个 APIsf_open,它返回一个包含采样率的SF_INFO结构。