aboutsummaryrefslogtreecommitdiff
path: root/src/Jellyfin.MediaEncoding.Hls/ScheduledTasks/KeyframeExtractionScheduledTask.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Jellyfin.MediaEncoding.Hls/ScheduledTasks/KeyframeExtractionScheduledTask.cs')
-rw-r--r--src/Jellyfin.MediaEncoding.Hls/ScheduledTasks/KeyframeExtractionScheduledTask.cs23
1 files changed, 9 insertions, 14 deletions
diff --git a/src/Jellyfin.MediaEncoding.Hls/ScheduledTasks/KeyframeExtractionScheduledTask.cs b/src/Jellyfin.MediaEncoding.Hls/ScheduledTasks/KeyframeExtractionScheduledTask.cs
index d0e3b00d0..4b7b3c20b 100644
--- a/src/Jellyfin.MediaEncoding.Hls/ScheduledTasks/KeyframeExtractionScheduledTask.cs
+++ b/src/Jellyfin.MediaEncoding.Hls/ScheduledTasks/KeyframeExtractionScheduledTask.cs
@@ -63,32 +63,27 @@ public class KeyframeExtractionScheduledTask : IScheduledTask
var videos = _libraryManager.GetItemList(query);
var numberOfVideos = videos.Count;
- var numComplete = 0;
// TODO parallelize with Parallel.ForEach?
for (var i = 0; i < numberOfVideos; i++)
{
var video = videos[i];
// Only local files supported
- if (!video.IsFileProtocol || !File.Exists(video.Path))
+ if (video.IsFileProtocol && File.Exists(video.Path))
{
- continue;
- }
-
- for (var j = 0; j < _keyframeExtractors.Length; j++)
- {
- var extractor = _keyframeExtractors[j];
- // The cache decorator will make sure to save them in the data dir
- if (extractor.TryExtractKeyframes(video.Path, out _))
+ for (var j = 0; j < _keyframeExtractors.Length; j++)
{
- break;
+ var extractor = _keyframeExtractors[j];
+ // The cache decorator will make sure to save them in the data dir
+ if (extractor.TryExtractKeyframes(video.Path, out _))
+ {
+ break;
+ }
}
}
// Update progress
- numComplete++;
- double percent = (double)numComplete / numberOfVideos;
-
+ double percent = (double)(i + 1) / numberOfVideos;
progress.Report(100 * percent);
}