Example #1
0
 private OutputTrunkConfig RebuildRecordingOutput()
 {
     if (_coreData.Settings.IsRecordingRequested)
     {
         if (MainSettingsModel.IsValidRecordingPath(_coreData.ThisDevice.DeviceSettings.RecordingsPath))
         {
             var    now    = DateTime.Now;
             string format = _coreData.Settings.RecordingFormat == RecordingFormat.Flv ? "flv" : "mp4";
             _currentRecordingPath ??= Path.Combine(_coreData.ThisDevice.DeviceSettings.RecordingsPath, now.ToString("yyy_MM_dd__HH_mm_ss") + $".{format}");
             string output = _currentRecordingPath;
             return(new OutputTrunkConfig(OutputNameRecording, new OutputSetup
             {
                 Type = format,
                 Output = output,
                 Options = ""
             }, false));
         }
         else
         {
             Log.Warning($"Bad folder for recorrding: {_coreData.ThisDevice.DeviceSettings.RecordingsPath}");
         }
     }
     else
     {
         _currentRecordingPath = null;
     }
     return(null);
 }
Example #2
0
        public MainModel(RootModel root,
                         MainTargetsModel targets,
                         MainSettingsModel settings,
                         SourcesModel sources,
                         StreamSettingsModel streamSettings,
                         MainStreamerModel streamer,
                         MainIndicatorsModel indicators,
                         MainVpnModel vpn,
                         MainAboutModel about,
                         AudioModel audio,
                         HubConnectionService hubConnectionService,
                         IWindowStateManager windowStateManager,
                         IAppEnvironment environment,
                         CoreData coreData,
                         StateLoggerService stateLoggerService,
                         LocalSettingsService localSettingsService,
                         IUpdateManager updateManager,
                         TransientMessageModel transientMessageModel,
                         IAppResources appResources,
                         SceneEditingModel sceneEditingModel,
                         ResourceService resourceService)
        {
            Root                  = root;
            Targets               = targets;
            Settings              = settings;
            Sources               = sources;
            StreamSettings        = streamSettings;
            Streamer              = streamer;
            Indicators            = indicators;
            Vpn                   = vpn;
            About                 = about;
            Audio                 = audio;
            _hubConnectionService = hubConnectionService;
            _windowStateManager   = windowStateManager;
            _environment          = environment;
            _coreData             = coreData;
            _stateLoggerService   = stateLoggerService;
            _localSettingsService = localSettingsService;
            _updateManager        = updateManager;
            TransientMessage      = transientMessageModel;
            _appResources         = appResources;
            SceneEditing          = sceneEditingModel;
            _resourceService      = resourceService;
            _serverClient         = new ModelClient {
                Filter = new FilterConfigurator(true).Build()
            };
            _coreData.GetManager().Register(_serverClient);
            _serverClient.SerializeAndClearChanges();

            _coreData.Subscriptions.OnChangeForSubscriptions = async() => await ProcessLocalOrRemoteChange();

            _coreData.Subscriptions.OnLocalChange = async() => await ProcessLocalChange();
        }