public TimeSpan DurationOfMediaFile(string FilePath) { Version v = Environment.OSVersion.Version; // WIN7 APIs if (Environment.OSVersion.Version >= new Version(6, 1)) { using (ShellFile sf = ShellFile.FromFilePath(FilePath)) { ShellProperties props = sf.Properties; ShellProperties.PropertySystem psys = props.System; ulong?duration = psys.Media.Duration.Value; if (duration.HasValue) { return(TimeSpan.FromTicks((long)duration.Value)); } } } else { // LEGACY *** (XP and Vista) LegacyMediaDuration lmd = new LegacyMediaDuration(); return(lmd.GetMediaDuration(FilePath)); } return(TimeSpan.FromSeconds(0)); }
public TimeSpan DurationOfMediaFile(string FilePath) { Version v = Environment.OSVersion.Version; // WIN7 APIs if (Environment.OSVersion.Version >= new Version(6, 1)) { using (ShellFile sf = ShellFile.FromFilePath(FilePath)) { ShellProperties props = sf.Properties; ShellProperties.PropertySystem psys = props.System; ulong? duration = psys.Media.Duration.Value; if (duration.HasValue) return TimeSpan.FromTicks((long)duration.Value); } } else { // LEGACY *** (XP and Vista) LegacyMediaDuration lmd = new LegacyMediaDuration(); return lmd.GetMediaDuration(FilePath); } return TimeSpan.FromSeconds(0); }
public TimeSpan DurationOfMediaFile(string FilePath, Boolean forceLegacy) { // LEGACY *** (XP and Vista) LegacyMediaDuration lmd = new LegacyMediaDuration(); return lmd.GetMediaDuration(FilePath); }
public TimeSpan DurationOfMediaFile(string FilePath, Boolean forceLegacy) { // LEGACY *** (XP and Vista) LegacyMediaDuration lmd = new LegacyMediaDuration(); return(lmd.GetMediaDuration(FilePath)); }