mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-12-17 06:23:03 +03:00
Minor improvements
This commit is contained in:
@@ -26,14 +26,20 @@ namespace Emby.Server.Implementations.MediaEncoder
|
||||
private readonly IChapterManager _chapterManager;
|
||||
private readonly ILibraryManager _libraryManager;
|
||||
|
||||
/// <summary>
|
||||
/// The first chapter ticks.
|
||||
/// </summary>
|
||||
private static readonly long _firstChapterTicks = TimeSpan.FromSeconds(15).Ticks;
|
||||
|
||||
public EncodingManager(
|
||||
ILogger<EncodingManager> logger,
|
||||
IFileSystem fileSystem,
|
||||
ILoggerFactory loggerFactory,
|
||||
IMediaEncoder encoder,
|
||||
IChapterManager chapterManager, ILibraryManager libraryManager)
|
||||
IChapterManager chapterManager,
|
||||
ILibraryManager libraryManager)
|
||||
{
|
||||
_logger = logger;
|
||||
_fileSystem = fileSystem;
|
||||
_logger = loggerFactory.CreateLogger(nameof(EncodingManager));
|
||||
_encoder = encoder;
|
||||
_chapterManager = chapterManager;
|
||||
_libraryManager = libraryManager;
|
||||
@@ -97,12 +103,7 @@ namespace Emby.Server.Implementations.MediaEncoder
|
||||
return video.DefaultVideoStreamIndex.HasValue;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The first chapter ticks
|
||||
/// </summary>
|
||||
private static readonly long FirstChapterTicks = TimeSpan.FromSeconds(15).Ticks;
|
||||
|
||||
public async Task<bool> RefreshChapterImages(Video video, IDirectoryService directoryService, List<ChapterInfo> chapters, bool extractImages, bool saveChapters, CancellationToken cancellationToken)
|
||||
public async Task<bool> RefreshChapterImages(Video video, IDirectoryService directoryService, IReadOnlyList<ChapterInfo> chapters, bool extractImages, bool saveChapters, CancellationToken cancellationToken)
|
||||
{
|
||||
if (!IsEligibleForChapterImageExtraction(video))
|
||||
{
|
||||
@@ -135,7 +136,7 @@ namespace Emby.Server.Implementations.MediaEncoder
|
||||
try
|
||||
{
|
||||
// Add some time for the first chapter to make sure we don't end up with a black image
|
||||
var time = chapter.StartPositionTicks == 0 ? TimeSpan.FromTicks(Math.Min(FirstChapterTicks, video.RunTimeTicks ?? 0)) : TimeSpan.FromTicks(chapter.StartPositionTicks);
|
||||
var time = chapter.StartPositionTicks == 0 ? TimeSpan.FromTicks(Math.Min(_firstChapterTicks, video.RunTimeTicks ?? 0)) : TimeSpan.FromTicks(chapter.StartPositionTicks);
|
||||
|
||||
var protocol = MediaProtocol.File;
|
||||
|
||||
@@ -152,9 +153,9 @@ namespace Emby.Server.Implementations.MediaEncoder
|
||||
{
|
||||
_fileSystem.DeleteFile(tempFile);
|
||||
}
|
||||
catch
|
||||
catch (IOException ex)
|
||||
{
|
||||
|
||||
_logger.LogError(ex, "Error deleting {Path}", tempFile);
|
||||
}
|
||||
|
||||
chapter.ImagePath = path;
|
||||
@@ -184,7 +185,7 @@ namespace Emby.Server.Implementations.MediaEncoder
|
||||
|
||||
if (saveChapters && changesMade)
|
||||
{
|
||||
_chapterManager.SaveChapters(video.Id.ToString(), chapters);
|
||||
_chapterManager.SaveChapters(video.Id, chapters);
|
||||
}
|
||||
|
||||
DeleteDeadImages(currentImages, chapters);
|
||||
@@ -199,22 +200,21 @@ namespace Emby.Server.Implementations.MediaEncoder
|
||||
return Path.Combine(GetChapterImagesPath(video), filename);
|
||||
}
|
||||
|
||||
private static List<string> GetSavedChapterImages(Video video, IDirectoryService directoryService)
|
||||
private static IReadOnlyList<string> GetSavedChapterImages(Video video, IDirectoryService directoryService)
|
||||
{
|
||||
var path = GetChapterImagesPath(video);
|
||||
if (!Directory.Exists(path))
|
||||
{
|
||||
return new List<string>();
|
||||
return Array.Empty<string>();
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
return directoryService.GetFilePaths(path)
|
||||
.ToList();
|
||||
return directoryService.GetFilePaths(path);
|
||||
}
|
||||
catch (IOException)
|
||||
{
|
||||
return new List<string>();
|
||||
return Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -227,7 +227,7 @@ namespace Emby.Server.Implementations.MediaEncoder
|
||||
|
||||
foreach (var image in deadImages)
|
||||
{
|
||||
_logger.LogDebug("Deleting dead chapter image {path}", image);
|
||||
_logger.LogDebug("Deleting dead chapter image {Path}", image);
|
||||
|
||||
try
|
||||
{
|
||||
@@ -235,7 +235,7 @@ namespace Emby.Server.Implementations.MediaEncoder
|
||||
}
|
||||
catch (IOException ex)
|
||||
{
|
||||
_logger.LogError(ex, "Error deleting {path}.", image);
|
||||
_logger.LogError(ex, "Error deleting {Path}.", image);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user