我需要找到一种方式来获得一个WMA文件的长度,而无需使用任何的Windows Media Player(WMP)的DLL。 我发现这样使用WMP的dll,你可以看到做这里 ,但由于另外一个问题,我宁可找到一种方法,我没有使用WMP。
使用一个有希望的方法n音讯与MP3音乐作品可以看到下面:
double GetMediaDuration(string MediaFilename)
{
double duration = 0.0;
using (FileStream fs = File.OpenRead(MediaFilename))
{
Mp3Frame frame = Mp3Frame.LoadFromStream(fs);
if (frame != null)
{
_sampleFrequency = (uint)frame.SampleRate;
}
while (frame != null)
{
if (frame.ChannelMode == ChannelMode.Mono)
{
duration += (double)frame.SampleCount * 2.0 / (double)frame.SampleRate;
}
else
{
duration += (double)frame.SampleCount * 4.0 / (double)frame.SampleRate;
}
frame = Mp3Frame.LoadFromStream(fs);
}
}
return duration;
}
有谁知道这超过了WMA文件,而不是工作的方式来港?
我看着来源为WindowsMediaFormat项目,但我无法找到一个WMAFrame类或任何可能明显让我换出一类为了得到这个为WMA格式的工作。