如何在 C 中获取 WAV 文件的持续时间?

How to get a WAV file duration in C?

我正在使用 SIGIL API 和 windows.h 库在 C 中编写一个 WAV 播放器,我正在使用 windows.h 库中的 GetOpenFileName 打开文件,我需要"read"WAV文件时长的程序,有什么函数可以做到吗?

据我所知:

时间 = [文件大小]/[字节率]

你可能还有一些因素:

  • 每秒的频率;

  • 通道数(1、2、4、8...);

  • 确定每个周期分辨率的位值(8、16 等);

此信息应在 header。