コード例 #1
0
        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;
        }
コード例 #2
0
        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;
        }