public VideoPlayerViewModel(INavigationService navigationService, MediaPlayerService playerService, IVideoLibrary videoLibrary, IVolumeService volumeController, IBrightnessService brightnessController, IOrientationService orientationService, IStatusBarService statusBarService) { App.DebugLog(""); this.navigationService = navigationService; this.playerService = playerService; this.videoLibrary = videoLibrary; this.volumeController = volumeController; this.brightnessController = brightnessController; this.orientationService = orientationService; this.statusBarService = statusBarService; PlayPauseCommand = new DelegateCommand(TogglePlayPause); ToggleFavoriteCommand = new DelegateCommand(ToggleFavorite); ToggleControlsVisibilityCommand = new DelegateCommand(ToggleControlsVisibility); ToggleAudioTracksCommand = new DelegateCommand(ToggleAudioTracks); ToggleSubtitlesCommand = new DelegateCommand(ToggleSubtitles); ToggleMediaInfoCommand = new DelegateCommand(ToggleMediaInfo); SelectSubtitlesCommand = new DelegateCommand <object>(SelectSubtitles, (e) => canChangeSubtitles); SelectAudioTrackCommand = new DelegateCommand <object>(SelectAudioTrack, (e) => canChangeAudioTrack); MaxVolume = volumeController.GetMaxVolume(); Volume = volumeController.GetVolume(); volumeController.VolumeChanged += VolumeController_VolumeChanged; Brightness = Settings.VideoBrightness; favoriteScenes = new FavoritesCollection(favoriteSceneDuration); }
public FoldersViewModel(IVideoLibrary videoLibrary) { App.DebugLog(""); this.videoLibrary = videoLibrary; Folders = new ObservableCollection <FolderItem>(); ItemTappedCommand = new AsyncCommand <object>((item) => NavigateToVideosPage(item)); }
public VideoPlayerViewModel(MediaPlayerBuilder playerService, IVideoLibrary videoLibrary, IVolumeService volumeController, IBrightnessService brightnessController, IOrientationService orientationService, IStatusBarService statusBarService, IFileService fileService) { App.DebugLog(""); this.videoLibrary = videoLibrary; this.orientationService = orientationService; this.statusBarService = statusBarService; FilePickerVM = new FilePickerViewModel(fileService); FilePickerVM.SubtitleFileTappedCommand = new Command <object>(o => SubtitleFileTapped(o)); ToggleFavoriteCommand = new Command(ToggleFavorite); ToggleControlsVisibilityCommand = new Command(ToggleControlsVisibility); ToggleAudioTracksCommand = new Command(ToggleAudioTracks); ToggleSubtitlesCommand = new Command(ToggleSubtitles); ToggleMediaInfoCommand = new Command(ToggleMediaInfo); SelectSubtitlesCommand = new Command <object>(SelectSubtitles, (e) => canChangeSubtitles); SelectAudioTrackCommand = new Command <object>(SelectAudioTrack, (e) => canChangeAudioTrack); OpenSubtitlesFromFileCommand = new Command(OpenSubtitlesFilePicker); volumeViewModel = new VolumeViewModel(volumeController); brightnessViewModel = new BrightnessViewModel(brightnessController); favoriteScenes = new FavoritesCollection(favoriteSceneDuration); VlcPlayerHelper = new VlcPlayerHelper(playerService); }
public ConverterHelper(IVideoLibrary videoLibrary, IFFmpegConverter fFmpegConverter, MediaPlayerBuilder playerService) { _videoLibrary = videoLibrary; _fFmpegConverter = fFmpegConverter; _playerService = playerService; _fFmpegConverter.ConversionProgressChanged += FFmpegConverter_ProgressChanged; _fFmpegConverter.ConversionStarted += FFmpegConverter_ConversionStarted; _fFmpegConverter.ConversionEnded += FFmpegConverter_ConversionEnded; }
public FoldersViewModel(INavigationService navigationService, IVideoLibrary videoLibrary) { this.navigationService = navigationService; this.videoLibrary = videoLibrary; Folders = new ObservableCollection <FolderItem>(); ItemTappedCommand = new Command <FolderItem>(async(item) => await NavigateToVideosPage(item)); if (Xamarin.Forms.DesignMode.IsDesignModeEnabled) { Folders.Add(new FolderItem() { FolderName = "Folder1" }); Folders.Add(new FolderItem() { FolderName = "Folder2" }); } }
public TrimmerViewModel(IVideoLibrary videoLibrary, MediaPlayerBuilder playerService, ConverterHelper converterHelper, IFileService fileService) { App.DebugLog(""); _videoLibrary = videoLibrary; _converterHelper = converterHelper; _fileService = fileService; _converterHelper.ConversionStarted += ConversionStarted; _converterHelper.ConversionProgress += ConversionProgress; _converterHelper.ConversionEnded += ConversionEnded; FilePickerVM = new FilePickerViewModel(fileService); FilePickerVM.SubtitleFileTappedCommand = new Command <object>(o => SubtitleFileTapped(o)); VlcPlayerHelper = new VlcPlayerHelper(playerService); vlcPlayerHelper.PlayerReady += VlcPlayerHelper_PlayerReady; GoToNextFavSceneCommand = new Command(GoToNextFavScene); GoToPrevFavSceneCommand = new Command(GoToPrevFavScene); IncrementPositionCommand = new Command <object>((e) => IncrementPosition(e)); DecrementPositionCommand = new Command <object>((e) => DecrementPosition(e)); JumpToStartCommand = new Command(() => JumpToStart()); ChooseSubtitlesCommand = new Command(ChooseSubtitles); ClearSubtitlesCommand = new Command(ClearSubtitles); OffsetOptions = new ObservableCollection <OffsetOption>() { new OffsetOption("1 sec", TimeSpan.FromSeconds(1)), new OffsetOption("10 sec", TimeSpan.FromSeconds(10)), new OffsetOption("1 min", TimeSpan.FromMinutes(1)), new OffsetOption("10 min", TimeSpan.FromMinutes(10)), }; SelectedOffsetOption = OffsetOptions.First(); EndPosition = TimeSpan.FromMinutes(1); TotalDuration = EndPosition; }
public TrimmerViewModel(IVideoLibrary videoLibrary, INavigationService navigationService, MediaPlayerService playerService, IFFmpegConverter fFmpegConverter) { App.DebugLog(""); this.videoLibrary = videoLibrary; this.navigationService = navigationService; this.playerService = playerService; this.fFmpegConverter = fFmpegConverter; fFmpegConverter.ConversionProgressChanged += FFmpegConverter_ProgressChanged; fFmpegConverter.ConversionStarted += FFmpegConverter_ConversionStarted; fFmpegConverter.ConversionEnded += FFmpegConverter_ConversionEnded; MediaHelper = new MediaPlayerHelper(playerService); MediaHelper.IsPausedByUser = true; MediaHelper.MediaPlayerReady += MediaPlayerHelper_MediaPlayerReady; MediaHelper.PlaybackStateChanged += MediaHelper_PlaybackStateChanged; GoToNextFavSceneCommand = new DelegateCommand(GoToNextFavScene); GoToPrevFavSceneCommand = new DelegateCommand(GoToPrevFavScene); IncrementPositionCommand = new DelegateCommand <object>((e) => IncrementPosition(e)); DecrementPositionCommand = new DelegateCommand <object>((e) => DecrementPosition(e)); JumpToStartCommand = new DelegateCommand(() => JumpToStart()); TogglePlayPauseCommand = new DelegateCommand(TogglePlayPause); OffsetOptions = new ObservableCollection <OffsetOption>() { new OffsetOption("1 sec", TimeSpan.FromSeconds(1)), new OffsetOption("10 sec", TimeSpan.FromSeconds(10)), new OffsetOption("1 min", TimeSpan.FromMinutes(1)), new OffsetOption("10 min", TimeSpan.FromMinutes(10)), }; SelectedOffsetOption = OffsetOptions.First(); EndPosition = TimeSpan.FromMinutes(1); TotalDuration = EndPosition; }
public FavoriteScenesViewModel(IVideoLibrary videoLibrary) { this.videoLibrary = videoLibrary; ItemTappedCommand = new AsyncCommand <object>((e) => OnItemClicked(e)); }
public VideosViewModel(IVideoLibrary videoLibrary) { App.DebugLog(""); this.videoLibrary = videoLibrary; ItemTappedCommand = new AsyncCommand <object>((item) => NavigateToPlayerPage(item)); }
public VideosViewModel(INavigationService navigationService, IVideoLibrary videoLibrary) { this.navigationService = navigationService; this.videoLibrary = videoLibrary; ItemTappedCommand = new Command <VideoItem>(async(item) => await NavigateToPlayerPage(item)); }
public FavoriteScenesViewModel(INavigationService navigationService, IVideoLibrary videoLibrary) { this.navigationService = navigationService; this.videoLibrary = videoLibrary; ItemTappedCommand = new DelegateCommand <object>((e) => OnItemClicked(e)); }