public CitpMediaServerService([NotNull] string nicIpAddress, bool useOriginalMulticastIp, [NotNull] ICitpMediaServerDevice device, bool isStreamingEnabled, ICitpLogService log = null) { if (nicIpAddress == null) { throw new ArgumentNullException(nameof(nicIpAddress)); } if (device == null) { throw new ArgumentNullException(nameof(device)); } _log = log ?? new CitpDebugLogger(CitpLoggerLevel.Info); _device = device; IpAddress ip; if (!IpAddress.TryParse(nicIpAddress, out ip)) { throw new ArgumentException("Not a valid IPv4 address", nameof(nicIpAddress)); } _networkService = new CitpNetworkService(_log, ip, useOriginalMulticastIp, _device); IsStreamingEnabled = isStreamingEnabled; if (isStreamingEnabled) { _streamingService = new CitpStreamingService(_log, _device, _networkService); } }
public void Dispose() { if (_networkService != null) { _networkService.Dispose(); _networkService = null; } }
public CitpStreamingService(ICitpLogService log, ICitpStreamProvider streamProvider, CitpNetworkService networkService) { _log = log; _streamProvider = streamProvider; _networkService = networkService; }