From adfa570569521e2de69250ecb406393587d66ddb Mon Sep 17 00:00:00 2001 From: Martin Date: Wed, 10 Jun 2026 11:27:52 -0400 Subject: [PATCH] fix: pre-roll/feature pre-roll bumpers not found in library (v1.0.0.8) TopParentIds-based queries could fail to match Movie items in the configured pre-roll library even when they appear correctly in the Jellyfin UI. Look up the library Folder by ID and walk its recursive children directly instead, matching the path-based approach already used for the trailer pool. --- ...lyfin.Plugin.CinemaTrailers4Jellyfins.csproj | 4 ++-- .../Services/TrailerIntroProvider.cs | 17 ++++++++++------- build.yaml | 10 +++++----- 3 files changed, 17 insertions(+), 14 deletions(-) diff --git a/Jellyfin.Plugin.CinemaTrailers4Jellyfins/Jellyfin.Plugin.CinemaTrailers4Jellyfins.csproj b/Jellyfin.Plugin.CinemaTrailers4Jellyfins/Jellyfin.Plugin.CinemaTrailers4Jellyfins.csproj index 6d5d6e4..28adba8 100644 --- a/Jellyfin.Plugin.CinemaTrailers4Jellyfins/Jellyfin.Plugin.CinemaTrailers4Jellyfins.csproj +++ b/Jellyfin.Plugin.CinemaTrailers4Jellyfins/Jellyfin.Plugin.CinemaTrailers4Jellyfins.csproj @@ -3,8 +3,8 @@ net9.0 Jellyfin.Plugin.CinemaTrailers4Jellyfins - 1.0.0.7 - 1.0.0.7 + 1.0.0.8 + 1.0.0.8 enable false false diff --git a/Jellyfin.Plugin.CinemaTrailers4Jellyfins/Services/TrailerIntroProvider.cs b/Jellyfin.Plugin.CinemaTrailers4Jellyfins/Services/TrailerIntroProvider.cs index 1063781..24f614a 100644 --- a/Jellyfin.Plugin.CinemaTrailers4Jellyfins/Services/TrailerIntroProvider.cs +++ b/Jellyfin.Plugin.CinemaTrailers4Jellyfins/Services/TrailerIntroProvider.cs @@ -193,13 +193,16 @@ namespace Jellyfin.Plugin.CinemaTrailers4Jellyfins.Services return null; } - var movies = _libraryManager - .GetItemList(new InternalItemsQuery - { - IncludeItemTypes = new[] { BaseItemKind.Movie }, - TopParentIds = new[] { parsedId }, - Recursive = true, - }) + if (_libraryManager.GetItemById(parsedId) is not Folder folder) + { + _logger.LogWarning( + "|CinemaTrailers4Jellyfins| {Label} library {LibraryId} could not be found.", + label, + parsedId); + return null; + } + + var movies = folder.GetRecursiveChildren() .OfType() .Where(m => m.Id != excludeId) .ToList(); diff --git a/build.yaml b/build.yaml index 1e3f91c..6dfe2cf 100644 --- a/build.yaml +++ b/build.yaml @@ -1,5 +1,5 @@ --- -version: 1.0.0.7 +version: 1.0.0.8 name: CinemaTrailers4Jellyfins guid: b581493e-1046-40ed-b6dc-cb8027624984 description: > @@ -12,10 +12,10 @@ category: General owner: 514mart targetAbi: 10.11.0.0 changelog: - - Add Information-level diagnostic logging to IIntroProvider.GetIntros — logs - every call (item, path, and which features are enabled), why an item is - skipped, and the outcome of Trailer/Feature Pre-Roll lookups, to help - troubleshoot why a pre-roll bumper isn't playing + - Fix Trailer Pre-Roll / Feature Pre-Roll bumpers not being found — the + library lookup now walks the configured library folder's children + directly instead of relying on TopParentIds matching, which could fail + to match movies even when they appear correctly in the library dotnetProjects: - name: Jellyfin.Plugin.CinemaTrailers4Jellyfins