From 31237f778a0d73cf64f6d56a85cd9ba24d610f11 Mon Sep 17 00:00:00 2001 From: gnattu Date: Tue, 18 Jun 2024 10:08:11 +0800 Subject: [PATCH 1/2] Try to add extracted lyrics during scanning The extraction process does not add the extracted lyrics to the audio media streams. Try to add it when tryExtractEmbeddedLyrics is true. Signed-off-by: gnattu --- MediaBrowser.Providers/MediaInfo/AudioFileProber.cs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/MediaBrowser.Providers/MediaInfo/AudioFileProber.cs b/MediaBrowser.Providers/MediaInfo/AudioFileProber.cs index f23401bb82..21d2caae23 100644 --- a/MediaBrowser.Providers/MediaInfo/AudioFileProber.cs +++ b/MediaBrowser.Providers/MediaInfo/AudioFileProber.cs @@ -136,6 +136,10 @@ namespace MediaBrowser.Providers.MediaInfo if (!audio.IsLocked) { await FetchDataFromTags(audio, mediaInfo, options, tryExtractEmbeddedLyrics).ConfigureAwait(false); + if (tryExtractEmbeddedLyrics) + { + AddExternalLyrics(audio, mediaStreams, options); + } } audio.HasLyrics = mediaStreams.Any(s => s.Type == MediaStreamType.Lyric); From 10cd9a7f7914c671109473254ff7e359e1a50c79 Mon Sep 17 00:00:00 2001 From: gnattu Date: Sat, 22 Jun 2024 18:26:59 +0800 Subject: [PATCH 2/2] Only add first stream Signed-off-by: gnattu --- MediaBrowser.Providers/MediaInfo/AudioFileProber.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/MediaBrowser.Providers/MediaInfo/AudioFileProber.cs b/MediaBrowser.Providers/MediaInfo/AudioFileProber.cs index 21d2caae23..11f66bb3d8 100644 --- a/MediaBrowser.Providers/MediaInfo/AudioFileProber.cs +++ b/MediaBrowser.Providers/MediaInfo/AudioFileProber.cs @@ -5,6 +5,7 @@ using System.Linq; using System.Threading; using System.Threading.Tasks; using Jellyfin.Data.Enums; +using Jellyfin.Extensions; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Library; @@ -373,7 +374,10 @@ namespace MediaBrowser.Providers.MediaInfo var externalLyricFiles = _lyricResolver.GetExternalStreams(audio, startIndex, options.DirectoryService, false); audio.LyricFiles = externalLyricFiles.Select(i => i.Path).Distinct().ToArray(); - currentStreams.AddRange(externalLyricFiles); + if (externalLyricFiles.Count > 0) + { + currentStreams.Add(externalLyricFiles[0]); + } } } }