Ejemplo n.º 1
0
        public override async void Execute(object parameter)
        {
            var items = (ObservableCollection <IStorageItem>)parameter;
            var files = new List <StorageFile>();

            foreach (var item in items)
            {
                var file = item as StorageFile;
                if (file != null && VLCFileExtensions.Supported.Contains(file.FileType.ToLower()))
                {
                    files.Add((StorageFile)item);
                }
            }
            var playlist = new ObservableCollection <IVLCMedia>();

            foreach (var file in files)
            {
                if (VLCFileExtensions.AudioExtensions.Contains(file.FileType.ToLower()))
                {
                    var trackItem = await MusicLibraryManagement.GetTrackItemFromFile(file);

                    playlist.Add(trackItem);
                }
                else if (VLCFileExtensions.VideoExtensions.Contains(file.FileType.ToLower()))
                {
                    var videoVm = new VideoItem();
                    await videoVm.Initialize(file);

                    playlist.Add(videoVm);
                }
            }
            await PlaylistHelper.AddTrackCollectionToPlaylistAndPlay(playlist, true, 0);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Navigates to the Audio Player screen with the requested file a parameter.
        /// </summary>
        /// <param name="file">The file to be played.</param>
        public async Task PlayAudioFile(StorageFile file)
        {
            Locator.NavigationService.Go(VLCPage.MusicPlayerPage);
            var trackItem = await MusicLibraryManagement.GetTrackItemFromFile(file);

            await PlaylistHelper.PlayTrackFromFilePicker(trackItem);
        }