确定没有第三方组件的音频文件的持续时间

时间:2014-12-09 14:14:07

标签: c# .net audio

说明

我尝试确定音频文件的持续时间,例如以秒为单位的歌曲持续时间。我发现了很多关于该主题的文章,但我找不到一个不使用a)第三方或b)已经死了的旧Microsoft库的解决方案。没有找到这样的解决方案并不意味着没有解决方案,它只是意味着我没有深入挖掘或者合适的人没有遇到这样的问题。所以我希望我会找到一个可以帮助我解决这个问题的人,或者把我推荐给某个/那些可以的人。

1 个答案:

答案 0 :(得分:1)

如果是波形文件,您只需要将其打开,解析标题,然后在其中找到音频数据的长度。关于格式的SO有很多问题。

基本上你需要Subchunk2Size,它以字节除以NumChannels除以每个样本的数字字节(BitsPerSample / 8)。这将给你样本的长度。如果您需要以秒为单位的时间除以采样率。

enter image description here