C# 如何获取视频文件的总帧数?
如何获取视频文件的总帧数?我正在开发视频测速仪软件 计算视频中运动物体的平均速度,但问题是我无法计算出如何获得特定视频的总帧数 公式:C# 如何获取视频文件的总帧数?,c#,multimedia,C#,Multimedia,如何获取视频文件的总帧数?我正在开发视频测速仪软件 计算视频中运动物体的平均速度,但问题是我无法计算出如何获得特定视频的总帧数 公式: Total time= ObjectFrameRate (f/s) * (1/ TotalNumberOfFrame) AveVelocity=位移/总时间解决方案是使用“Dexter 1.0 TypeLib”。您需要首先添加对它的引用。它位于COM对象下(库由MS提供)。然后您可以使用以下代码: string filePath = "C:\\testVide
Total time= ObjectFrameRate (f/s) * (1/ TotalNumberOfFrame)
AveVelocity=位移/总时间解决方案是使用“Dexter 1.0 TypeLib”。您需要首先添加对它的引用。它位于COM对象下(库由MS提供)。然后您可以使用以下代码:
string filePath = "C:\\testVideo.avi";
MediaDet md = new MediaDetClass();
md.Filename = filePath;
md.CurrentStream = 0;
double FrameRate = md.FrameRate;
你称之为“总帧速率”是多少?我得到的帧速率,总帧数,但“总帧速率”?这在不同的视频文件和编解码器类型中是完全不同的。你需要更具体地了解你正在使用的视频类型。这就是我所说的总帧数?你是说总帧数吗?是的,这就是我的意思它返回总帧数?我得到了错误“DexterLib.MediaDetClass”没有定义构造函数这很奇怪,因为它对我来说工作得很好。但是你必须将帧率乘以视频的持续时间(以秒为单位)。