Vb.net 为什么Windows Media Player库在不同的计算机上提供不同的文件持续时间?

Vb.net 为什么Windows Media Player库在不同的计算机上提供不同的文件持续时间?,vb.net,wmplib,Vb.net,Wmplib,我在vb.net中有一个应用程序,它使用WMPlib播放mp3文件。在我的系统上,文件持续时间读取正确。10分零几秒。在客户端系统上,它的读数为5分零几秒 当我远程进入客户机系统时,我可以在Windows Media player中打开文件,播放它,并在超过5:xx标记后继续播放。标记停止移动,秒停止变化,它继续播放。如果我在我的系统上打开相同的文件,它将读取正确的10:xx。真奇怪 这是怎么回事?为了让WMPlib读取正确的音频文件持续时间,我需要对客户端系统做什么 我知道这与\system3

我在vb.net中有一个应用程序,它使用WMPlib播放mp3文件。在我的系统上,文件持续时间读取正确。10分零几秒。在客户端系统上,它的读数为5分零几秒

当我远程进入客户机系统时,我可以在Windows Media player中打开文件,播放它,并在超过5:xx标记后继续播放。标记停止移动,秒停止变化,它继续播放。如果我在我的系统上打开相同的文件,它将读取正确的10:xx。真奇怪

这是怎么回事?为了让WMPlib读取正确的音频文件持续时间,我需要对客户端系统做什么

我知道这与\system32\WMP.dll有关,只是不确定是什么。dll文件大小在两个系统上匹配。我们都在运行windows 8.1


我的选择是什么?

我见过在文件头信息(或其他元数据)编码错误的情况下,媒体会出现这种情况。这个mp3文件是你自己制作的吗?也许可以尝试用不同的程序对其进行编码。原始文件来自记录电话的服务。有问题的文件以.WAV扩展名开头,windows media player声明文件格式与该扩展名不匹配。我使用sox.exe和ffmpeg.exe根据扩展名转换文件。我们有来自许多不同提供商的音频文件,无法控制原始格式。我用谷歌搜索出了这些问题的答案,并确定了最好的选择是纠正客户端系统,因为这不是文件转换工具的错误,而是音频文件提供商提供了一个困难的文件。