From e6ab05e1772eef30c0be27d47d3c9d7a5cf43627 Mon Sep 17 00:00:00 2001 From: Vito0912 <86927734+Vito0912@users.noreply.github.com> Date: Fri, 18 Apr 2025 07:29:34 +0200 Subject: [PATCH] update so also populates data if mediaMetadata is not null --- server/managers/PlaybackSessionManager.js | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/server/managers/PlaybackSessionManager.js b/server/managers/PlaybackSessionManager.js index dab142ab..beaa7207 100644 --- a/server/managers/PlaybackSessionManager.js +++ b/server/managers/PlaybackSessionManager.js @@ -176,11 +176,23 @@ class PlaybackSessionManager { session = new PlaybackSession(sessionJson) session.deviceInfo = deviceInfo // This makes sure that the client's metadata is preferred over the library's metadata, if available, to make a non-breaking change - if(session.mediaMetadata == null) { - // Only sync important metadata - const { title, subtitle, narrators, authors, author, series, genres, type } = libraryItem?.media?.metadata || {} - session.mediaMetadata = { title, subtitle, narrators, authors, author, series, genres, type } + if (session.mediaMetadata == null) { + session.mediaMetadata = {} } + + const { title, subtitle, narrators, authors, author, series, genres, type } = libraryItem?.media?.metadata || {} + session.mediaMetadata = { + title: session.mediaMetadata.title || title, + subtitle: session.mediaMetadata.subtitle || subtitle, + narrators: session.mediaMetadata.narrators || narrators, + authors: session.mediaMetadata.authors || authors, + author: session.mediaMetadata.author || author, + series: session.mediaMetadata.series || series, + genres: session.mediaMetadata.genres || genres, + type: session.mediaMetadata.type || type, + ...session.mediaMetadata + } + if(session.displayTitle == null || session.displayTitle === '') { session.displayTitle = libraryItem?.media?.metadata?.title ?? '' }