Example #1
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));
        }
Example #2
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);
        }
Example #3
0
        public TimeSpan DurationOfMediaFile(string FilePath, Boolean forceLegacy)
        {
            // LEGACY ***  (XP and Vista)

                LegacyMediaDuration lmd = new LegacyMediaDuration();
                return lmd.GetMediaDuration(FilePath);
        }
Example #4
0
        public TimeSpan DurationOfMediaFile(string FilePath, Boolean forceLegacy)
        {
            // LEGACY ***  (XP and Vista)

            LegacyMediaDuration lmd = new LegacyMediaDuration();

            return(lmd.GetMediaDuration(FilePath));
        }