public ConsoleManager(Settings Settings,
                              RecordingModel RecordingModel,
                              MainModel MainModel,
                              ScreenShotModel ScreenShotModel,
                              VideoSourcesViewModel VideoSourcesViewModel,
                              IEnumerable <IVideoSourceProvider> VideoSourceProviders,
                              VideoWritersViewModel VideoWritersViewModel,
                              IPlatformServices PlatformServices,
                              WebcamModel WebcamModel,
                              IMessageProvider MessageProvider)
        {
            _settings              = Settings;
            _recordingModel        = RecordingModel;
            _mainModel             = MainModel;
            _screenShotModel       = ScreenShotModel;
            _videoSourcesViewModel = VideoSourcesViewModel;
            _videoSourceProviders  = VideoSourceProviders;
            _videoWritersViewModel = VideoWritersViewModel;
            _platformServices      = PlatformServices;
            _webcamModel           = WebcamModel;
            _messageProvider       = MessageProvider;

            // Hide on Full Screen Screenshot doesn't work on Console
            Settings.UI.HideOnFullScreenShot = false;
        }
Example #2
0
 public RememberByName(Settings Settings,
                       VideoSourcesViewModel VideoSourcesViewModel,
                       VideoWritersViewModel VideoWritersViewModel,
                       AudioSourceViewModel AudioSourceViewModel,
                       IEnumerable <IVideoSourceProvider> VideoSourceProviders)
 {
     _settings = Settings;
     _videoSourcesViewModel = VideoSourcesViewModel;
     _videoWritersViewModel = VideoWritersViewModel;
     _audioSourceViewModel  = AudioSourceViewModel;
     _videoSourceProviders  = VideoSourceProviders;
 }
Example #3
0
 public RememberByName(Settings Settings,
                       VideoSourcesViewModel VideoSourcesViewModel,
                       VideoWritersViewModel VideoWritersViewModel,
                       AudioSource AudioSource,
                       ScreenShotModel ScreenShotModel,
                       IEnumerable <IVideoSourceProvider> VideoSourceProviders,
                       WebcamModel WebcamModel)
 {
     _settings = Settings;
     _videoSourcesViewModel = VideoSourcesViewModel;
     _videoWritersViewModel = VideoWritersViewModel;
     _audioSource           = AudioSource;
     _screenShotModel       = ScreenShotModel;
     _videoSourceProviders  = VideoSourceProviders;
     _webcamModel           = WebcamModel;
 }
Example #4
0
 public RememberByName(Settings.Settings settings,
                       VideoSourcesViewModel videoSourcesViewModel,
                       VideoWritersViewModel videoWritersViewModel,
                       AudioSource audioSource,
                       IWebCamProvider webCamProvider,
                       ScreenShotModel screenShotModel,
                       IEnumerable <IVideoSourceProvider> videoSourceProviders)
 {
     _settings = settings;
     _videoSourcesViewModel = videoSourcesViewModel;
     _videoWritersViewModel = videoWritersViewModel;
     _audioSource           = audioSource;
     _webCamProvider        = webCamProvider;
     _screenShotModel       = screenShotModel;
     _videoSourceProviders  = videoSourceProviders;
 }
Example #5
0
 public RememberByName(Settings Settings,
                       VideoSourcesViewModel VideoSourcesViewModel,
                       VideoWritersViewModel VideoWritersViewModel,
                       AudioSource AudioSource,
                       IWebCamProvider WebCamProvider,
                       ScreenShotViewModel ScreenShotViewModel,
                       IEnumerable <IVideoSourceProvider> VideoSourceProviders)
 {
     _settings = Settings;
     _videoSourcesViewModel = VideoSourcesViewModel;
     _videoWritersViewModel = VideoWritersViewModel;
     _audioSource           = AudioSource;
     _webCamProvider        = WebCamProvider;
     _screenShotViewModel   = ScreenShotViewModel;
     _videoSourceProviders  = VideoSourceProviders;
 }
        //private readonly ServiceLocator serviceLocator;

        public RecordStreamViewModel(Settings Settings, ILocalizationProvider Loc,
                                     VideoSourcesViewModel VideoSourcesViewModel,
                                     VideoWritersViewModel VideoWritersViewModel,
                                     AudioSourceViewModel AudioSourceViewModel,
                                     RecordingViewModel RecordingViewModel) : base(Settings, Loc)
        {
            //Init();

            //serviceLocator = new ServiceLocator();
            //RecordCommand = serviceLocator.RecordingViewModel.RecordCommand;
            //PauseCommand = serviceLocator.RecordingViewModel.PauseCommand;

            //serviceLocator.VideoSourcesViewModel.SelectedVideoSourceKind =
            //    serviceLocator.VideoSourcesViewModel.VideoSources.FirstOrDefault(M => M is FullScreenSourceProvider);

            //serviceLocator.VideoWritersViewModel.SelectedVideoWriterKind =
            //    serviceLocator.VideoWritersViewModel.VideoWriterProviders.FirstOrDefault(M =>
            //        M is FFmpegWriterProvider);

            //serviceLocator.VideoWritersViewModel.SelectedVideoWriter =
            //    serviceLocator.VideoWritersViewModel.AvailableVideoWriters.FirstOrDefault(M => M is X264VideoCodec);

            //foreach (var availableSpeaker in serviceLocator.AudioSourceViewModel.AvailableSpeakers)
            //{
            //    Console.WriteLine("Speaker name: " + availableSpeaker.Name);
            //}

            //Console.WriteLine("Speaker : " + serviceLocator.AudioSourceViewModel.AvailableSpeakers[1].Name);
            //serviceLocator.RecordingViewModel.Settings.Audio.RecordSpeaker = true;
            //serviceLocator.AudioSourceViewModel.SelectedSpeaker =
            //    serviceLocator.AudioSourceViewModel.AvailableSpeakers[1];


            videoSourceViewModel   = VideoSourcesViewModel;
            videoWriterViewmoModel = VideoWritersViewModel;
            audioSourceViewModel   = AudioSourceViewModel;
            recordingViewModel     = RecordingViewModel;

            RecordCommand = RecordingViewModel.RecordCommand;
            PauseCommand  = RecordingViewModel.PauseCommand;

            ConfigDefault();
        }
Example #7
0
        public ConsoleManager(Settings Settings,
                              RecordingModel RecordingModel,
                              MainModel MainModel,
                              ScreenShotModel ScreenShotModel,
                              VideoSourcesViewModel VideoSourcesViewModel,
                              IEnumerable <IVideoSourceProvider> VideoSourceProviders,
                              IWebCamProvider WebCamProvider, VideoWritersViewModel VideoWritersViewModel)
        {
            _settings              = Settings;
            _recordingModel        = RecordingModel;
            _mainModel             = MainModel;
            _screenShotModel       = ScreenShotModel;
            _videoSourcesViewModel = VideoSourcesViewModel;
            _videoSourceProviders  = VideoSourceProviders;
            _webCamProvider        = WebCamProvider;
            _videoWritersViewModel = VideoWritersViewModel;

            // Hide on Full Screen Screenshot doesn't work on Console
            Settings.UI.HideOnFullScreenShot = false;
        }
Example #8
0
        static void HandleVideoEncoder(VideoWritersViewModel VideoWritersViewModel, StartCmdOptions StartOptions)
        {
            if (StartOptions.Encoder == null)
            {
                return;
            }

            // FFmpeg
            if (FFmpegService.FFmpegExists && Regex.IsMatch(StartOptions.Encoder, @"^ffmpeg:\d+$"))
            {
                var index = int.Parse(StartOptions.Encoder.Substring(7));

                VideoWritersViewModel.SelectedVideoWriterKind = ServiceProvider.Get <FFmpegWriterProvider>();

                if (index < VideoWritersViewModel.AvailableVideoWriters.Count)
                {
                    VideoWritersViewModel.SelectedVideoWriter = VideoWritersViewModel.AvailableVideoWriters[index];
                }
            }

            // SharpAvi
            else if (ServiceProvider.FileExists("SharpAvi.dll") && Regex.IsMatch(StartOptions.Encoder, @"^sharpavi:\d+$"))
            {
                var index = int.Parse(StartOptions.Encoder.Substring(9));

                VideoWritersViewModel.SelectedVideoWriterKind = ServiceProvider.Get <SharpAviWriterProvider>();

                if (index < VideoWritersViewModel.AvailableVideoWriters.Count)
                {
                    VideoWritersViewModel.SelectedVideoWriter = VideoWritersViewModel.AvailableVideoWriters[index];
                }
            }

            // Gif
            else if (StartOptions.Encoder == "gif")
            {
                VideoWritersViewModel.SelectedVideoWriterKind = ServiceProvider.Get <GifWriterProvider>();
            }
        }
Example #9
0
        public ConsoleManager(Settings settings,
                              RecordingModel recordingModel,
                              MainModel mainModel,
                              ScreenShotModel screenShotModel,
                              VideoSourcesViewModel videoSourcesViewModel,
                              IEnumerable <IVideoSourceProvider> videoSourceProviders,
                              IWebCamProvider webCamProvider,
                              VideoWritersViewModel videoWritersViewModel,
                              IPlatformServices platformServices)
        {
            _settings              = settings;
            _recordingModel        = recordingModel;
            _mainModel             = mainModel;
            _screenShotModel       = screenShotModel;
            _videoSourcesViewModel = videoSourcesViewModel;
            _videoSourceProviders  = videoSourceProviders;
            _webCamProvider        = webCamProvider;
            _videoWritersViewModel = videoWritersViewModel;
            _platformServices      = platformServices;

            // Hide on Full Screen Screenshot doesn't work on Console
            settings.Ui.HideOnFullScreenShot = false;
        }