aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MediaBrowser.Controller/Entities/CollectionFolder.cs2
-rw-r--r--MediaBrowser.Model/Configuration/LibraryOptions.cs2
-rw-r--r--MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs9
-rw-r--r--MediaBrowser.Server.Implementations/MediaEncoder/EncodingManager.cs37
4 files changed, 36 insertions, 14 deletions
diff --git a/MediaBrowser.Controller/Entities/CollectionFolder.cs b/MediaBrowser.Controller/Entities/CollectionFolder.cs
index 597ecf973..30ea26eb6 100644
--- a/MediaBrowser.Controller/Entities/CollectionFolder.cs
+++ b/MediaBrowser.Controller/Entities/CollectionFolder.cs
@@ -106,7 +106,7 @@ namespace MediaBrowser.Controller.Entities
{
LibraryOptions[path] = options;
- options.SchemaVersion = 1;
+ options.SchemaVersion = 2;
XmlSerializer.SerializeToFile(options, GetLibraryOptionsPath(path));
}
}
diff --git a/MediaBrowser.Model/Configuration/LibraryOptions.cs b/MediaBrowser.Model/Configuration/LibraryOptions.cs
index 3fe694553..551363223 100644
--- a/MediaBrowser.Model/Configuration/LibraryOptions.cs
+++ b/MediaBrowser.Model/Configuration/LibraryOptions.cs
@@ -6,6 +6,8 @@
public bool EnablePhotos { get; set; }
public bool EnableRealtimeMonitor { get; set; }
public int SchemaVersion { get; set; }
+ public bool EnableChapterImageExtraction { get; set; }
+ public bool ExtractChapterImagesDuringLibraryScan { get; set; }
public LibraryOptions()
{
diff --git a/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs b/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs
index c20823535..0f8cf93fb 100644
--- a/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs
+++ b/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs
@@ -261,11 +261,18 @@ namespace MediaBrowser.Providers.MediaInfo
NormalizeChapterNames(chapters);
+ var libraryOptions = _libraryManager.GetLibraryOptions(video);
+ var extractDuringScan = chapterOptions.ExtractDuringLibraryScan;
+ if (libraryOptions != null && libraryOptions.SchemaVersion >= 2)
+ {
+ extractDuringScan = libraryOptions.ExtractChapterImagesDuringLibraryScan;
+ }
+
await _encodingManager.RefreshChapterImages(new ChapterImageRefreshOptions
{
Chapters = chapters,
Video = video,
- ExtractImages = chapterOptions.ExtractDuringLibraryScan,
+ ExtractImages = extractDuringScan,
SaveChapters = false
}, cancellationToken).ConfigureAwait(false);
diff --git a/MediaBrowser.Server.Implementations/MediaEncoder/EncodingManager.cs b/MediaBrowser.Server.Implementations/MediaEncoder/EncodingManager.cs
index 67ddcc5cc..0ba3ba344 100644
--- a/MediaBrowser.Server.Implementations/MediaEncoder/EncodingManager.cs
+++ b/MediaBrowser.Server.Implementations/MediaEncoder/EncodingManager.cs
@@ -14,6 +14,7 @@ using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using CommonIO;
+using MediaBrowser.Controller.Library;
namespace MediaBrowser.Server.Implementations.MediaEncoder
{
@@ -24,6 +25,7 @@ namespace MediaBrowser.Server.Implementations.MediaEncoder
private readonly ILogger _logger;
private readonly IMediaEncoder _encoder;
private readonly IChapterManager _chapterManager;
+ private readonly ILibraryManager _libraryManager;
public EncodingManager(IFileSystem fileSystem,
ILogger logger,
@@ -57,27 +59,38 @@ namespace MediaBrowser.Server.Implementations.MediaEncoder
return false;
}
- var options = _chapterManager.GetConfiguration();
-
- if (video is Movie)
+ var libraryOptions = _libraryManager.GetLibraryOptions(video);
+ if (libraryOptions != null && libraryOptions.SchemaVersion >= 2)
{
- if (!options.EnableMovieChapterImageExtraction)
+ if (!libraryOptions.EnableChapterImageExtraction)
{
return false;
}
}
- else if (video is Episode)
+ else
{
- if (!options.EnableEpisodeChapterImageExtraction)
+ var options = _chapterManager.GetConfiguration();
+
+ if (video is Movie)
{
- return false;
+ if (!options.EnableMovieChapterImageExtraction)
+ {
+ return false;
+ }
}
- }
- else
- {
- if (!options.EnableOtherVideoChapterImageExtraction)
+ else if (video is Episode)
{
- return false;
+ if (!options.EnableEpisodeChapterImageExtraction)
+ {
+ return false;
+ }
+ }
+ else
+ {
+ if (!options.EnableOtherVideoChapterImageExtraction)
+ {
+ return false;
+ }
}
}