0

我正在使用 NAdutio.dll 读取 mp3 文件的长度。我使用的代码示例在这里。我创建的应用程序是一个用 C# 4.0 构建的独立桌面应用程序,用于所有使用 windows server 2008 操作系统的计算机网络。并且这些计算机上都没有安装媒体播放器。当我在本地机器上运行应用程序时,它会正确返回 mp3 文件的长度,但是当它在该网络上的任何 pc 上运行时,它会为每个文件返回零。似乎 NAudio.dll 本身使用 wmp.dll 来读取音频。但我无法安装媒体播放器或无法将 dll 放置在每台计算机中。有什么办法可以通过安装程序或代码中的一些工作来解决这个 dll 问题?任何人请帮助我。


提前致谢

4

1 回答 1

1

尝试使用 NLayer读取文件。最新版本的 MpegFile 实现应该很好地为您提供长度信息。只需读取 .Length 并除以 .Channels * 4 (.Length 是字节,样本是 32 位浮点格式)。

请注意:我在这个库中做了很多工作,所以虽然我不是维护者,但它是我的项目之一。

于 2013-08-29T01:18:14.150 回答