3.0.5597.1
This commit is contained in:
parent
88191e01da
commit
a75ce4197d
|
@ -53,11 +53,12 @@ namespace Emby.Drawing
|
|||
private readonly IImageEncoder _imageEncoder;
|
||||
private readonly SemaphoreSlim _imageProcessingSemaphore;
|
||||
|
||||
public ImageProcessor(ILogger logger,
|
||||
IServerApplicationPaths appPaths,
|
||||
IFileSystem fileSystem,
|
||||
IJsonSerializer jsonSerializer,
|
||||
IImageEncoder imageEncoder)
|
||||
public ImageProcessor(ILogger logger,
|
||||
IServerApplicationPaths appPaths,
|
||||
IFileSystem fileSystem,
|
||||
IJsonSerializer jsonSerializer,
|
||||
IImageEncoder imageEncoder,
|
||||
int maxConcurrentImageProcesses)
|
||||
{
|
||||
_logger = logger;
|
||||
_fileSystem = fileSystem;
|
||||
|
@ -93,8 +94,8 @@ namespace Emby.Drawing
|
|||
}
|
||||
|
||||
_cachedImagedSizes = new ConcurrentDictionary<Guid, ImageSize>(sizeDictionary);
|
||||
var count = Environment.ProcessorCount;
|
||||
_imageProcessingSemaphore = new SemaphoreSlim(count, count);
|
||||
_logger.Info("ImageProcessor started with {0} max concurrent image processes", maxConcurrentImageProcesses);
|
||||
_imageProcessingSemaphore = new SemaphoreSlim(maxConcurrentImageProcesses, maxConcurrentImageProcesses);
|
||||
}
|
||||
|
||||
public string[] SupportedInputFormats
|
||||
|
|
|
@ -100,7 +100,19 @@ namespace MediaBrowser.Controller.Entities.Movies
|
|||
/// <returns>System.String.</returns>
|
||||
protected override string CreateUserDataKey()
|
||||
{
|
||||
return this.GetProviderId(MetadataProviders.Tmdb) ?? this.GetProviderId(MetadataProviders.Imdb) ?? base.CreateUserDataKey();
|
||||
var key = this.GetProviderId(MetadataProviders.Tmdb);
|
||||
|
||||
if (string.IsNullOrWhiteSpace(key))
|
||||
{
|
||||
key = this.GetProviderId(MetadataProviders.Imdb);
|
||||
}
|
||||
|
||||
if (string.IsNullOrWhiteSpace(key))
|
||||
{
|
||||
key = base.CreateUserDataKey();
|
||||
}
|
||||
|
||||
return key;
|
||||
}
|
||||
|
||||
protected override async Task<bool> RefreshedOwnedItems(MetadataRefreshOptions options, List<FileSystemInfo> fileSystemChildren, CancellationToken cancellationToken)
|
||||
|
|
|
@ -61,7 +61,7 @@ namespace MediaBrowser.Controller.Entities.TV
|
|||
/// airdate, dvd or absolute
|
||||
/// </summary>
|
||||
public string DisplayOrder { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the status.
|
||||
/// </summary>
|
||||
|
@ -113,7 +113,19 @@ namespace MediaBrowser.Controller.Entities.TV
|
|||
/// <returns>System.String.</returns>
|
||||
protected override string CreateUserDataKey()
|
||||
{
|
||||
return this.GetProviderId(MetadataProviders.Tvdb) ?? this.GetProviderId(MetadataProviders.Tvcom) ?? base.CreateUserDataKey();
|
||||
var key = this.GetProviderId(MetadataProviders.Tvdb);
|
||||
|
||||
if (string.IsNullOrWhiteSpace(key))
|
||||
{
|
||||
key = this.GetProviderId(MetadataProviders.Imdb);
|
||||
}
|
||||
|
||||
if (string.IsNullOrWhiteSpace(key))
|
||||
{
|
||||
key = base.CreateUserDataKey();
|
||||
}
|
||||
|
||||
return key;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -188,7 +200,7 @@ namespace MediaBrowser.Controller.Entities.TV
|
|||
public IEnumerable<Episode> GetEpisodes(User user)
|
||||
{
|
||||
var config = user.Configuration;
|
||||
|
||||
|
||||
return GetEpisodes(user, config.DisplayMissingEpisodes, config.DisplayUnairedEpisodes);
|
||||
}
|
||||
|
||||
|
|
|
@ -439,7 +439,7 @@ namespace MediaBrowser.Server.Startup.Common
|
|||
var innerProgress = new ActionableProgress<double>();
|
||||
innerProgress.RegisterAction(p => progress.Report((.75 * p) + 15));
|
||||
|
||||
ImageProcessor = new ImageProcessor(LogManager.GetLogger("ImageProcessor"), ServerConfigurationManager.ApplicationPaths, FileSystemManager, JsonSerializer, GetImageEncoder());
|
||||
ImageProcessor = GetImageProcessor();
|
||||
RegisterSingleInstance(ImageProcessor);
|
||||
|
||||
TVSeriesManager = new TVSeriesManager(UserManager, UserDataManager, LibraryManager);
|
||||
|
@ -543,6 +543,18 @@ namespace MediaBrowser.Server.Startup.Common
|
|||
await ((UserManager)UserManager).Initialize().ConfigureAwait(false);
|
||||
}
|
||||
|
||||
private IImageProcessor GetImageProcessor()
|
||||
{
|
||||
var maxConcurrentImageProcesses = Math.Max(Environment.ProcessorCount, 4);
|
||||
|
||||
if (_startupOptions.ContainsOption("-imagethreads"))
|
||||
{
|
||||
int.TryParse(_startupOptions.GetOption("-imagethreads"), NumberStyles.Any, CultureInfo.InvariantCulture, out maxConcurrentImageProcesses);
|
||||
}
|
||||
|
||||
return new ImageProcessor(LogManager.GetLogger("ImageProcessor"), ServerConfigurationManager.ApplicationPaths, FileSystemManager, JsonSerializer, GetImageEncoder(), maxConcurrentImageProcesses);
|
||||
}
|
||||
|
||||
private IImageEncoder GetImageEncoder()
|
||||
{
|
||||
if (!_startupOptions.ContainsOption("-enablegdi"))
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
using System.Reflection;
|
||||
|
||||
//[assembly: AssemblyVersion("3.0.*")]
|
||||
[assembly: AssemblyVersion("3.0.5597.0")]
|
||||
[assembly: AssemblyVersion("3.0.5597.1")]
|
||||
|
|
Loading…
Reference in New Issue
Block a user