c# - 如何确定 C# 中 .wav 文件的长度(即持续时间)?

标签 c# audio compression

在未压缩的情况下,我知道我需要读取 wav header ,提取 channel 数、位数和采样率,然后从那里计算出来: ( channel )*(位)*(样本/秒)*(秒)=(文件大小)

有没有更简单的方法 - 免费库,或者 .net 框架中的东西?

如果 .wav 文件被压缩(例如使用 mpeg 编解码器),我将如何执行此操作?

最佳答案

下载 NAudio.dll 从链接 https://www.dll-files.com/naudio.dll.html

然后使用这个函数

public static TimeSpan GetWavFileDuration(string fileName)       
{     
    WaveFileReader wf = new WaveFileReader(fileName);
    return wf.TotalTime; 
}

你会得到持续时间

关于c# - 如何确定 C# 中 .wav 文件的长度(即持续时间)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/82319/

相关文章:

c# - 如何在场景之间保持值(value)?

matlab - 使用MATLAB将.mid转换为.wav

iphone - 如何将字节数组转换为 wav 文件 <OOURAFFT>

iphone - libarchive 解压到指定文件夹?

linux - 如何更新 tar(不附加)

c# - 使用未处理的异常而不是 Contains()?

c# - 当对象具有集合属性时投影 IQueryable<object> 时 Automapper 失败

compression - 压缩感知是否为数据压缩带来了新的东西?

c# - 来自 C# 代码的 Javascript 仅在 Google Chrome 中刷新

c# - CEFsharp 3 检索响应 header