aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMBR#0001 <mbr@mbr.pw>2025-11-22 17:39:43 +0100
committerMBR#0001 <mbr@mbr.pw>2025-11-22 17:39:43 +0100
commit73fd6721f62056bfaabd43b75d286c140a353657 (patch)
tree76dd8ec9f0a803e59b6679fed5cc88ca6796c22e
parent41c1c5f7bf71552b2babbd7c0066c9057c970559 (diff)
Skip library if all subtitle providers are disabled
-rw-r--r--MediaBrowser.Providers/MediaInfo/SubtitleScheduledTask.cs14
1 files changed, 13 insertions, 1 deletions
diff --git a/MediaBrowser.Providers/MediaInfo/SubtitleScheduledTask.cs b/MediaBrowser.Providers/MediaInfo/SubtitleScheduledTask.cs
index 7188e9804e..8073919182 100644
--- a/MediaBrowser.Providers/MediaInfo/SubtitleScheduledTask.cs
+++ b/MediaBrowser.Providers/MediaInfo/SubtitleScheduledTask.cs
@@ -12,6 +12,7 @@ using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Dto;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Library;
+using MediaBrowser.Controller.Providers;
using MediaBrowser.Controller.Subtitles;
using MediaBrowser.Model.Globalization;
using MediaBrowser.Model.Tasks;
@@ -26,19 +27,24 @@ namespace MediaBrowser.Providers.MediaInfo
private readonly ISubtitleManager _subtitleManager;
private readonly ILogger<SubtitleScheduledTask> _logger;
private readonly ILocalizationManager _localization;
+ private readonly ISubtitleProvider[] _subtitleProviders;
public SubtitleScheduledTask(
ILibraryManager libraryManager,
IServerConfigurationManager config,
ISubtitleManager subtitleManager,
ILogger<SubtitleScheduledTask> logger,
- ILocalizationManager localization)
+ ILocalizationManager localization,
+ IEnumerable<ISubtitleProvider> subtitleProviders)
{
_libraryManager = libraryManager;
_config = config;
_subtitleManager = subtitleManager;
_logger = logger;
_localization = localization;
+ _subtitleProviders = subtitleProviders
+ .OrderBy(i => i is IHasOrder hasOrder ? hasOrder.Order : 0)
+ .ToArray();
}
public string Name => _localization.GetLocalizedString("TaskDownloadMissingSubtitles");
@@ -76,6 +82,12 @@ namespace MediaBrowser.Providers.MediaInfo
continue;
}
+ if (_subtitleProviders.All(provider => libraryOptions.DisabledSubtitleFetchers.Contains(provider.Name)))
+ {
+ // Skip this library if all subtitle providers are disabled
+ continue;
+ }
+
subtitleDownloadLanguages = libraryOptions.SubtitleDownloadLanguages;
skipIfEmbeddedSubtitlesPresent = libraryOptions.SkipSubtitlesIfEmbeddedSubtitlesPresent;
skipIfAudioTrackMatches = libraryOptions.SkipSubtitlesIfAudioTrackMatches;