mirror of
				https://github.com/jellyfin/jellyfin.git
				synced 2025-11-04 03:27:21 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			47 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
using Emby.Drawing;
 | 
						|
using Emby.Drawing.Net;
 | 
						|
using Emby.Drawing.ImageMagick;
 | 
						|
using Emby.Server.Core;
 | 
						|
using MediaBrowser.Common.Net;
 | 
						|
using MediaBrowser.Controller.Configuration;
 | 
						|
using MediaBrowser.Controller.Drawing;
 | 
						|
using MediaBrowser.Model.IO;
 | 
						|
using MediaBrowser.Model.Logging;
 | 
						|
 | 
						|
namespace MediaBrowser.Server.Startup.Common
 | 
						|
{
 | 
						|
    public class ImageEncoderHelper
 | 
						|
    {
 | 
						|
        public static IImageEncoder GetImageEncoder(ILogger logger, 
 | 
						|
            ILogManager logManager, 
 | 
						|
            IFileSystem fileSystem, 
 | 
						|
            StartupOptions startupOptions, 
 | 
						|
            IHttpClient httpClient,
 | 
						|
            IServerConfigurationManager config)
 | 
						|
        {
 | 
						|
            if (!startupOptions.ContainsOption("-enablegdi"))
 | 
						|
            {
 | 
						|
                try
 | 
						|
                {
 | 
						|
                    return new ImageMagickEncoder(logManager.GetLogger("ImageMagick"), config.ApplicationPaths, httpClient, fileSystem, config);
 | 
						|
                }
 | 
						|
                catch
 | 
						|
                {
 | 
						|
                    logger.Error("Error loading ImageMagick. Will revert to GDI.");
 | 
						|
                }
 | 
						|
            }
 | 
						|
 | 
						|
            try
 | 
						|
            {
 | 
						|
                return new GDIImageEncoder(fileSystem, logManager.GetLogger("GDI"));
 | 
						|
            }
 | 
						|
            catch
 | 
						|
            {
 | 
						|
                logger.Error("Error loading GDI. Will revert to NullImageEncoder.");
 | 
						|
            }
 | 
						|
 | 
						|
            return new NullImageEncoder();
 | 
						|
        }
 | 
						|
    }
 | 
						|
}
 |