From 0f743205c4835d828de9f28f6ab7d325209e83b2 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Sat, 12 Sep 2015 12:39:24 -0400 Subject: [PATCH] update external subs --- Emby.Drawing/ImageProcessor.cs | 3 +++ MediaBrowser.Model/Dlna/StreamBuilder.cs | 12 +++++------- .../Library/MediaSourceManager.cs | 7 +++++-- .../Sync/SyncManager.cs | 5 ----- 4 files changed, 13 insertions(+), 14 deletions(-) diff --git a/Emby.Drawing/ImageProcessor.cs b/Emby.Drawing/ImageProcessor.cs index 970b463cd1..231bfa2b47 100644 --- a/Emby.Drawing/ImageProcessor.cs +++ b/Emby.Drawing/ImageProcessor.cs @@ -227,6 +227,9 @@ namespace Emby.Drawing imageProcessingLockTaken = true; _imageEncoder.EncodeImage(originalImagePath, cacheFilePath, newWidth, newHeight, quality, options); + + // ImageMagick doesn't seem to always release it right away + await Task.Delay(100).ConfigureAwait(false); } } finally diff --git a/MediaBrowser.Model/Dlna/StreamBuilder.cs b/MediaBrowser.Model/Dlna/StreamBuilder.cs index e0cc1b705c..810d42a095 100644 --- a/MediaBrowser.Model/Dlna/StreamBuilder.cs +++ b/MediaBrowser.Model/Dlna/StreamBuilder.cs @@ -759,14 +759,12 @@ namespace MediaBrowser.Model.Dlna if (profile.Method == SubtitleDeliveryMethod.External && subtitleStream.IsTextSubtitleStream == MediaStream.IsTextFormat(profile.Format)) { - if (!requiresConversion) + if (subtitleStream.IsTextSubtitleStream || !requiresConversion) { - return profile; - } - - if (subtitleStream.SupportsExternalStream) - { - return profile; + if (subtitleStream.SupportsExternalStream) + { + return profile; + } } // For sync we can handle the longer extraction times diff --git a/MediaBrowser.Server.Implementations/Library/MediaSourceManager.cs b/MediaBrowser.Server.Implementations/Library/MediaSourceManager.cs index e3ec99392f..63067bf5a5 100644 --- a/MediaBrowser.Server.Implementations/Library/MediaSourceManager.cs +++ b/MediaBrowser.Server.Implementations/Library/MediaSourceManager.cs @@ -127,9 +127,12 @@ namespace MediaBrowser.Server.Implementations.Library { var supportsExternalStream = StreamSupportsExternalStream(subStream); - if (supportsExternalStream && videoBitrate >= maxAllowedBitrateForExternalSubtitleStream) + if (!subStream.IsExternal) { - supportsExternalStream = false; + if (supportsExternalStream && videoBitrate >= maxAllowedBitrateForExternalSubtitleStream) + { + supportsExternalStream = false; + } } subStream.SupportsExternalStream = supportsExternalStream; diff --git a/MediaBrowser.Server.Implementations/Sync/SyncManager.cs b/MediaBrowser.Server.Implementations/Sync/SyncManager.cs index 18fcb4e794..f7a87dad5e 100644 --- a/MediaBrowser.Server.Implementations/Sync/SyncManager.cs +++ b/MediaBrowser.Server.Implementations/Sync/SyncManager.cs @@ -539,11 +539,6 @@ namespace MediaBrowser.Server.Implementations.Sync return false; } - if (video.IsStacked) - { - return false; - } - if (video.IsShortcut) { return false;