From ce1ed2bea7492a4e6c4dd26e1a8d73aa65a88236 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Wed, 15 Mar 2017 15:57:18 -0400 Subject: update hls to support mpeg2video --- Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs | 12 +++++++++++- Emby.Server.Implementations/LiveTv/LiveTvManager.cs | 4 ++-- 2 files changed, 13 insertions(+), 3 deletions(-) (limited to 'Emby.Server.Implementations') diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs index d18004f96..eea562524 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs @@ -2545,14 +2545,24 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV private const int TunerDiscoveryDurationMs = 3000; - public async Task> DiscoverTuners(CancellationToken cancellationToken) + public async Task> DiscoverTuners(bool newDevicesOnly, CancellationToken cancellationToken) { var list = new List(); + var configuredDeviceIds = GetConfiguration().TunerHosts + .Where(i => !string.IsNullOrWhiteSpace(i.DeviceId)) + .Select(i => i.DeviceId) + .ToList(); + foreach (var host in _liveTvManager.TunerHosts) { var discoveredDevices = await DiscoverDevices(host, TunerDiscoveryDurationMs, cancellationToken).ConfigureAwait(false); + if (newDevicesOnly) + { + discoveredDevices = discoveredDevices.Where(d => !configuredDeviceIds.Contains(d.DeviceId, StringComparer.OrdinalIgnoreCase)) + .ToList(); + } list.AddRange(discoveredDevices); } diff --git a/Emby.Server.Implementations/LiveTv/LiveTvManager.cs b/Emby.Server.Implementations/LiveTv/LiveTvManager.cs index 92ef24dea..8406d44a7 100644 --- a/Emby.Server.Implementations/LiveTv/LiveTvManager.cs +++ b/Emby.Server.Implementations/LiveTv/LiveTvManager.cs @@ -160,9 +160,9 @@ namespace Emby.Server.Implementations.LiveTv }).ToList(); } - public Task> DiscoverTuners(CancellationToken cancellationToken) + public Task> DiscoverTuners(bool newDevicesOnly, CancellationToken cancellationToken) { - return EmbyTV.EmbyTV.Current.DiscoverTuners(cancellationToken); + return EmbyTV.EmbyTV.Current.DiscoverTuners(newDevicesOnly, cancellationToken); } void service_DataSourceChanged(object sender, EventArgs e) -- cgit v1.2.3