static void Main(string[] args) { MediaType media = MediaType.MusicalClip; if (media.HasFlag(MediaType.DrawedPicture)) { Console.WriteLine("Contient des images dessinées"); } if (media.HasFlag(MediaType.RealisticPicture)) { Console.WriteLine("Contient des photos"); } if (media.HasFlag(MediaType.Audio)) { Console.WriteLine("contient du son"); } if (media.HasFlag(MediaType.Music)) { Console.WriteLine("Contient de la musique"); } //1 2 4 8 16 //Picture Audio }
private string[] OpenFiles(MediaType type) { var extsVideo = "All video types|*.mkv;*.mp4;*.m4v;*.ts;*.mts;*.m2ts;*.flv;*.webm;*.ogv;*.avi;*.divx;*.wmv;*.mpg;*.mpeg;*.mpv;*.m1v;*.dat;*.vob;*.avs|"; var extsAudio = "All audio types|*.mp2;*.mp3;*.mp4;*.m4a;*.aac;*.ogg;*.opus;*.flac;*.wav|"; var extsSub = "All subtitle types|*.ssa;*.ass;*.srt|"; var extsAtt = "All font types|*.ttf;*.otf;*.woff;*.woff2;*.eot|"; string exts = string.Empty; if (type.HasFlag(MediaType.Video)) { exts += extsVideo; } if (type.HasFlag(MediaType.Audio)) { exts += extsAudio; } if (type.HasFlag(MediaType.Subtitle)) { exts += extsSub; } if (type.HasFlag(MediaType.Attachment)) { exts += extsAtt; } var ofd = new OpenFileDialog { Filter = exts += "All types|*.*", FilterIndex = 1, Multiselect = true }; if (ofd.ShowDialog() == DialogResult.OK) { return(ofd.FileNames); } return(Array.Empty <string>()); }
private MediaItem GetMediaItem(string file) { if (MovieFileExtensions.Any(ex => file.ToLower().EndsWith(ex, StringComparison.Ordinal)) && _mediaTypes.HasFlag(MediaType.Video)) { return new MediaItem { MediaType = MediaType.Video, Path = "file://" + file } } ; if (ImageFileExtensions.Any(ex => file.ToLower().EndsWith(ex, StringComparison.Ordinal)) && _mediaTypes.HasFlag(MediaType.Image)) { return new MediaItem { MediaType = MediaType.Image, Path = file } } ; return(null); }
private void OnAuthorized() { DispatchQueue.MainQueue.DispatchAsync(() => { _imageManager = new PHCachingImageManager(); var options = new PHFetchOptions { SortDescriptors = new[] { new NSSortDescriptor("creationDate", false) } }; var assets = new List <PHAsset>(); if (_mediaTypes.HasFlag(MediaType.Image)) { _images = PHAsset.FetchAssets(PHAssetMediaType.Image, options); assets.AddRange(_images.OfType <PHAsset>()); } if (_mediaTypes.HasFlag(MediaType.Video)) { _videos = PHAsset.FetchAssets(PHAssetMediaType.Video, options); assets.AddRange(_videos.OfType <PHAsset>()); } foreach (var asset in assets.OrderByDescending(a => a.CreationDate.SecondsSinceReferenceDate)) { AllAssets.Add(asset); } ShowFirstImage(); AllAssets.CollectionChanged += AssetsCollectionChanged; PHPhotoLibrary.SharedPhotoLibrary.RegisterChangeObserver(this); }); }