瀏覽代碼

updated ImageMagickSharp

Luke Pulverenti 10 年之前
父節點
當前提交
db66b73a4f

+ 1 - 1
Emby.Drawing/Emby.Drawing.csproj

@@ -34,7 +34,7 @@
   <ItemGroup>
     <Reference Include="ImageMagickSharp, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\packages\ImageMagickSharp.1.0.0.15\lib\net45\ImageMagickSharp.dll</HintPath>
+      <HintPath>..\packages\ImageMagickSharp.1.0.0.16\lib\net45\ImageMagickSharp.dll</HintPath>
     </Reference>
     <Reference Include="System" />
     <Reference Include="System.Core" />

+ 1 - 0
Emby.Drawing/ImageMagick/ImageMagickEncoder.cs

@@ -63,6 +63,7 @@ namespace Emby.Drawing.ImageMagick
         {
             _logger.Info("ImageMagick version: " + Wand.VersionString);
             TestWebp();
+            Wand.SetMagickThreadCount(1);
         }
 
         private bool _webpAvailable = true;

+ 1 - 1
Emby.Drawing/packages.config

@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="ImageMagickSharp" version="1.0.0.15" targetFramework="net45" />
+  <package id="ImageMagickSharp" version="1.0.0.16" targetFramework="net45" />
 </packages>

+ 1 - 0
MediaBrowser.Api/StartupWizardService.cs

@@ -66,6 +66,7 @@ namespace MediaBrowser.Api
             _config.Configuration.EnableStandaloneMetadata = true;
             _config.Configuration.EnableLibraryMetadataSubFolder = true;
             _config.Configuration.EnableUserSpecificUserViews = true;
+            _config.Configuration.EnableCustomPathSubFolders = true;
             _config.SaveConfiguration();
         }
 

+ 16 - 3
MediaBrowser.Common.Implementations/Configuration/BaseConfigurationManager.cs

@@ -164,9 +164,22 @@ namespace MediaBrowser.Common.Implementations.Configuration
         /// </summary>
         private void UpdateCachePath()
         {
-            ((BaseApplicationPaths)CommonApplicationPaths).CachePath = string.IsNullOrEmpty(CommonConfiguration.CachePath) ?
-                null :
-                CommonConfiguration.CachePath;
+            string cachePath;
+
+            if (string.IsNullOrWhiteSpace(CommonConfiguration.CachePath))
+            {
+                cachePath = null;
+            }
+            else if (CommonConfiguration.EnableCustomPathSubFolders)
+            {
+                cachePath = Path.Combine(CommonConfiguration.CachePath, "cache");
+            }
+            else
+            {
+                cachePath = CommonConfiguration.CachePath;
+            }
+
+            ((BaseApplicationPaths)CommonApplicationPaths).CachePath = cachePath;
         }
 
         /// <summary>

+ 6 - 0
MediaBrowser.Model/Configuration/BaseApplicationConfiguration.cs

@@ -50,6 +50,12 @@ namespace MediaBrowser.Model.Configuration
         /// <value>The cache path.</value>
         public string CachePath { get; set; }
 
+        /// <summary>
+        /// Gets or sets a value indicating whether [enable custom path sub folders].
+        /// </summary>
+        /// <value><c>true</c> if [enable custom path sub folders]; otherwise, <c>false</c>.</value>
+        public bool EnableCustomPathSubFolders { get; set; }
+        
         /// <summary>
         /// Initializes a new instance of the <see cref="BaseApplicationConfiguration" /> class.
         /// </summary>

+ 0 - 2
MediaBrowser.Model/Configuration/ServerConfiguration.cs

@@ -185,8 +185,6 @@ namespace MediaBrowser.Model.Configuration
 
         public MetadataOptions[] MetadataOptions { get; set; }
 
-        public string TranscodingTempPath { get; set; }
-
         public bool EnableAutomaticRestart { get; set; }
 
         public bool EnableRealtimeMonitor { get; set; }

+ 17 - 4
MediaBrowser.Server.Implementations/Configuration/ServerConfigurationManager.cs

@@ -101,9 +101,22 @@ namespace MediaBrowser.Server.Implementations.Configuration
         /// </summary>
         private void UpdateMetadataPath()
         {
-            ((ServerApplicationPaths)ApplicationPaths).InternalMetadataPath = string.IsNullOrEmpty(Configuration.MetadataPath) ?
-                GetInternalMetadataPath() :
-                Configuration.MetadataPath;
+            string metadataPath;
+
+            if (string.IsNullOrWhiteSpace(Configuration.MetadataPath))
+            {
+                metadataPath = GetInternalMetadataPath();
+            }
+            else if (Configuration.EnableCustomPathSubFolders)
+            {
+                metadataPath = Path.Combine(Configuration.MetadataPath, "metadata");
+            }
+            else
+            {
+                metadataPath = Configuration.MetadataPath;
+            }
+
+            ((ServerApplicationPaths)ApplicationPaths).InternalMetadataPath = metadataPath;
 
             if (Configuration.MergeMetadataAndImagesByName)
             {
@@ -130,7 +143,7 @@ namespace MediaBrowser.Server.Implementations.Configuration
 
             ((ServerApplicationPaths)ApplicationPaths).TranscodingTempPath = string.IsNullOrEmpty(encodingConfig.TranscodingTempPath) ?
                 null :
-                encodingConfig.TranscodingTempPath;
+                Path.Combine(encodingConfig.TranscodingTempPath, "transcoding-temp");
         }
 
         protected override void OnNamedConfigurationUpdated(string key, object configuration)

+ 9 - 9
MediaBrowser.Server.Implementations/Sync/CloudSyncProfile.cs

@@ -1,5 +1,5 @@
-using System.Collections.Generic;
-using MediaBrowser.Model.Dlna;
+using MediaBrowser.Model.Dlna;
+using System.Collections.Generic;
 
 namespace MediaBrowser.Server.Implementations.Sync
 {
@@ -31,13 +31,13 @@ namespace MediaBrowser.Server.Implementations.Sync
 
             DirectPlayProfiles = new[]
             {
-                new DirectPlayProfile
-                {
-                    Container = "mkv",
-                    VideoCodec = "h264,mpeg4",
-                    AudioCodec = mkvAudio,
-                    Type = DlnaProfileType.Video
-                },
+                //new DirectPlayProfile
+                //{
+                //    Container = "mkv",
+                //    VideoCodec = "h264,mpeg4",
+                //    AudioCodec = mkvAudio,
+                //    Type = DlnaProfileType.Video
+                //},
                 new DirectPlayProfile
                 {
                     Container = "mp4,mov,m4v",

+ 1 - 4
MediaBrowser.Server.Startup.Common/ApplicationHost.cs

@@ -357,10 +357,7 @@ namespace MediaBrowser.Server.Startup.Common
 
         private void PerformPostInitMigrations()
         {
-            var migrations = new List<IVersionMigration>
-            {
-                new MigrateTranscodingPath(ServerConfigurationManager)
-            };
+            var migrations = new List<IVersionMigration>();
 
             foreach (var task in migrations)
             {

+ 0 - 1
MediaBrowser.Server.Startup.Common/MediaBrowser.Server.Startup.Common.csproj

@@ -66,7 +66,6 @@
     <Compile Include="Migrations\DeleteDlnaProfiles.cs" />
     <Compile Include="Migrations\DeprecatePlugins.cs" />
     <Compile Include="Migrations\IVersionMigration.cs" />
-    <Compile Include="Migrations\MigrateTranscodingPath.cs" />
     <Compile Include="Migrations\MigrateUserFolders.cs" />
     <Compile Include="Migrations\RenameXbmcOptions.cs" />
     <Compile Include="Migrations\RenameXmlOptions.cs" />

+ 0 - 30
MediaBrowser.Server.Startup.Common/Migrations/MigrateTranscodingPath.cs

@@ -1,30 +0,0 @@
-using MediaBrowser.Common.Configuration;
-using MediaBrowser.Controller.Configuration;
-using MediaBrowser.Model.Configuration;
-
-namespace MediaBrowser.Server.Startup.Common.Migrations
-{
-    public class MigrateTranscodingPath : IVersionMigration
-    {
-        private readonly IServerConfigurationManager _config;
-
-        public MigrateTranscodingPath(IServerConfigurationManager config)
-        {
-            _config = config;
-        }
-
-        public void Run()
-        {
-            if (!string.IsNullOrWhiteSpace(_config.Configuration.TranscodingTempPath))
-            {
-                var newConfig = _config.GetConfiguration<EncodingOptions>("encoding");
-
-                newConfig.TranscodingTempPath = _config.Configuration.TranscodingTempPath;
-                _config.SaveConfiguration("encoding", newConfig);
-
-                _config.Configuration.TranscodingTempPath = null;
-                _config.SaveConfiguration();
-            }
-        }
-    }
-}

+ 2 - 3
MediaBrowser.ServerApplication/MediaBrowser.ServerApplication.csproj

@@ -60,9 +60,8 @@
     <Prefer32Bit>true</Prefer32Bit>
   </PropertyGroup>
   <ItemGroup>
-    <Reference Include="ImageMagickSharp, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\packages\ImageMagickSharp.1.0.0.15\lib\net45\ImageMagickSharp.dll</HintPath>
+    <Reference Include="ImageMagickSharp">
+      <HintPath>..\packages\ImageMagickSharp.1.0.0.16\lib\net45\ImageMagickSharp.dll</HintPath>
     </Reference>
     <Reference Include="MediaBrowser.IsoMounter">
       <HintPath>..\packages\MediaBrowser.IsoMounting.3.0.69\lib\net45\MediaBrowser.IsoMounter.dll</HintPath>

+ 1 - 1
MediaBrowser.ServerApplication/packages.config

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <packages>
-  <package id="ImageMagickSharp" version="1.0.0.15" targetFramework="net45" />
+  <package id="ImageMagickSharp" version="1.0.0.16" targetFramework="net45" />
   <package id="MediaBrowser.IsoMounting" version="3.0.69" targetFramework="net45" />
   <package id="System.Data.SQLite.Core" version="1.0.94.0" targetFramework="net45" />
 </packages>