private double GetFrameRate(string filename)
{
IMediaDet md = new MediaDet() as IMediaDet;
Guid streamType;
AMMediaType mt = new AMMediaType();
int hr, nStreams;
md.put_Filename(filename);
md.get_OutputStreams(out nStreams);
for (int i = 0; i < nStreams; i++)
{
hr = md.put_CurrentStream(i);
DsError.ThrowExceptionForHR(hr);
hr = md.get_StreamType(out streamType);
DsError.ThrowExceptionForHR(hr);
if (streamType == MediaType.Video)
{
md.put_CurrentStream(0);
double frate = 30;
md.get_FrameRate(out frate);
return frate;
}
}
return 30;
}