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);
        }
Exemplo n.º 2
0
        public VlcPlayerHelper(MediaPlayerBuilder mediaPlayerBuilder)
        {
            _mediaPlayerBuilder = mediaPlayerBuilder;

            PlayPauseCommand          = new Command(() => OnPlayPauseClicked());
            AspectRatioClickedCommand = new Command(() => OnAspectRatioClicked());
            SliderValueChangedCommand = new Command <TimeSpan>((val) => SeekTo(val));
        }
Exemplo n.º 3
0
        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;
        }