示例#1
0
        static Dictionary <MediaInfoFlags, string> FilterMediaFlags(MediaInfoFlagsType type)
        {
            Dictionary <MediaInfoFlags, string> _result = new Dictionary <MediaInfoFlags, string>();

            _result.Add(MediaInfoFlags.Unknown, MediaModel.MediaInfoText[MediaInfoFlags.Unknown]);

            foreach (string flag in Enum.GetNames(typeof(MediaInfoFlags)))
            {
                MediaInfoFlags _flag = (MediaInfoFlags)Enum.Parse(typeof(MediaInfoFlags), flag);

                switch (type)
                {
                case MediaInfoFlagsType.Resolution:
                    if (flag.Contains("Resolution"))
                    {
                        _result.Add(_flag, MediaModel.MediaInfoText[_flag]);
                    }
                    break;

                case MediaInfoFlagsType.Audio:
                    if (flag.Contains("Audio"))
                    {
                        _result.Add(_flag, MediaModel.MediaInfoText[_flag]);
                    }
                    break;

                case MediaInfoFlagsType.Format:
                    if (flag.Contains("Format"))
                    {
                        _result.Add(_flag, MediaModel.MediaInfoText[_flag]);
                    }
                    break;

                case MediaInfoFlagsType.Subtitles:
                    if (flag.Contains("Subtitle"))
                    {
                        _result.Add(_flag, MediaModel.MediaInfoText[_flag]);
                    }
                    break;

                case MediaInfoFlagsType.Video:
                    if (flag.Contains("Video"))
                    {
                        _result.Add(_flag, MediaModel.MediaInfoText[_flag]);
                    }
                    break;

                default:
                    break;
                }
            }

            return(_result);
        }
示例#2
0
 public static void SaveMediaFlagImageToDisk(MediaInfoFlags flag, string dest)
 {
     if (!string.IsNullOrEmpty(dest))
     {
         using (FileStream _fs = new FileStream(dest, FileMode.Create, FileAccess.Write))
         {
             PngBitmapEncoder _encoder = new PngBitmapEncoder();
             _encoder.Frames.Add(BitmapFrame.Create(new Uri(MediaModel.GetImagePath(flag))));
             _encoder.Save(_fs);
         }
     }
 }
示例#3
0
        public static string GetImagePath(MediaInfoFlags flag)
        {
            string _img = MediaInfoImages[flag];

            if (!string.IsNullOrEmpty(_img))
            {
                return(string.Format("pack://application:,,,/images/MediaFlags/{0}", _img));
            }
            else
            {
                return(null);
            }
        }
示例#4
0
 public MediaModel(MediaInfoFlags flag)
 {
     Flag = flag;
 }