From 10f4f8b2ab727f6a0b30b7e8edcc6c9d47205add Mon Sep 17 00:00:00 2001 From: Bond-009 Date: Mon, 3 Feb 2025 17:07:12 -0500 Subject: Backport pull request #13425 from jellyfin/release-10.10.z Open files with FileShare.Read for BlurHash calculations Original-merge: bfe0fdbcdca03436a08430d723fc2b34a6016e25 Merged-by: crobibero Backported-by: Bond_009 --- src/Jellyfin.Drawing.Skia/SkiaEncoder.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/Jellyfin.Drawing.Skia/SkiaEncoder.cs b/src/Jellyfin.Drawing.Skia/SkiaEncoder.cs index c5aadc8901..2dac5598f0 100644 --- a/src/Jellyfin.Drawing.Skia/SkiaEncoder.cs +++ b/src/Jellyfin.Drawing.Skia/SkiaEncoder.cs @@ -195,8 +195,10 @@ public class SkiaEncoder : IImageEncoder return string.Empty; } + // Use FileStream with FileShare.Read instead of having Skia open the file to allow concurrent read access + using var fileStream = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.Read); // Any larger than 128x128 is too slow and there's no visually discernible difference - return BlurHashEncoder.Encode(xComp, yComp, path, 128, 128); + return BlurHashEncoder.Encode(xComp, yComp, fileStream, 128, 128); } private bool RequiresSpecialCharacterHack(string path) -- cgit v1.2.3