Shadowghost
3c9727d36c
Always inherit from owner item and add tests
2026-07-25 17:17:30 +02:00
Shadowghost
6382563440
Prefer null checks over HasValue everywhere
2026-07-22 08:09:33 +02:00
dkanada
9e996d612c
extract page count from archives and PDFs
2026-07-12 19:46:56 +09:00
theguymadmax
c6c72f30ec
Fix embedded lyrics not updating on replace-all refresh
2026-06-18 18:14:10 -04:00
Shadowghost
dee63ef3f1
Fix data extraction for alternative versions
2026-06-07 23:06:48 +02:00
Gabriel Luci
6f2e42c20c
Fix use of thread-unsafe List<T>.Sort()
2026-05-04 23:46:00 -04:00
Niels van Velzen
d87e9f9622
Merge pull request #16695 from ExpctING/fix_dummy_chapter
...
Fix dummy chapter handling for videos with a single chapter or short duration.
2026-05-04 18:02:16 +02:00
Niels van Velzen
b7d0301099
Merge pull request #16747 from MBR-0001/fix-ffprobe-subs
...
Fix FFProbeVideoInfo downloading subtitles without considering internal streams
2026-05-04 17:57:49 +02:00
Seven Rats
f5f75ed2e1
feat/audiobook_chapters ( #16518 )
...
feat/audiobook_chapters
2026-05-03 12:18:20 +02:00
MBR#0001
19b756a507
Fix FFProbeVideoInfo downloading subtitles without considering internal streams
...
Currently "Skip if the video already contains embedded subtitles" and "Skip if the default audio track matches the download language" are ignored because the internal tracks are not loaded before downloading
This method is also triggered by the missing subtitles task (whenever a subtitle is downloaded) so if there are multiple languages configured, after first one is downloaded (valid) it runs it for other languages which might be internal
2026-05-02 21:07:13 +02:00
ExpctING
1dd8541ed5
fix ci failed
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-25 21:10:47 +08:00
ExpctING
857e730168
Fix dummy chapter handling for videos with a single chapter.
2026-04-25 03:30:55 +08:00
MBR-0001
a2eff41d66
Merge branch 'master' into removeGlobalSubtitleConfiguration
2026-04-18 17:14:31 +02:00
KGT1
1d44899606
Remove global subtitle configuration ( #14957 )
2026-04-18 17:06:46 +02:00
MBR-0001
d4a46bc629
Fix comparison
2026-04-16 22:34:13 +02:00
Dominic DeMarco
22f0507258
Record missing information
...
Fixes tonemapping checks by recording previously missing information when gathering video stream information from videos in a BDMV structure
2026-04-10 00:21:52 -07:00
Joshua M. Boniface
8cecf53057
Fix GHSA-j2hf-x4q5-47j3 with improved sanitization
...
Co-Authored-By: Shadowghost <Ghost_of_Stone@web.de >
2026-04-06 11:37:45 +02:00
MBR#0001
73fd6721f6
Skip library if all subtitle providers are disabled
2025-11-22 17:39:43 +01:00
KGT1
41c1c5f7bf
remove global subtitle configuration
2025-11-22 17:15:09 +01:00
IceStormNG
26ac2ccd74
Backport pull request #15441 from jellyfin/release-10.11.z
...
Fix System.NullReferenceException when people's role is null (10.11.z)
Original-merge: 5a9a8363f4
Merged-by: Bond-009 <bond.009@outlook.com >
Backported-by: Bond_009 <bond.009@outlook.com >
2025-11-17 14:08:59 -05:00
gnattu
0a0aaefad5
Fix mka-style tagging key ( #14936 )
2025-10-02 17:33:31 -06:00
Corentin Malbet
71ebb1f456
Fixing the UFID field value giving a warning and not being correctly processed ( #14851 )
2025-09-26 14:24:59 -06:00
evan314159
e753adac2c
fix ProbeProvider.HasChanged: if file date changed ( #14674 )
2025-08-27 17:34:51 -06:00
evan314159
6f49782b7b
fix file modification date comparisons ( #14503 )
2025-07-27 20:08:06 -06:00
Nyanmisaka
25a362345d
Fix refreshing the library cannot delete old attachments ( #14461 )
2025-07-14 18:40:37 -06:00
renovate[bot]
8629831658
Update dependency z440.atl.core to v7 ( #14391 )
2025-07-07 18:10:48 -06:00
Shane Powell
8dcb0bfecb
Merge pull request #14309 from shanepowell/MediaInfoFixs
...
Fix PeopleHelper.AddPerson Exceptions due to bad meta-data extracts.
2025-07-04 19:22:27 +02:00
Evan
a4231bf428
Read ALBUMARTISTS in preference to ARTISTS when PreferNonstandardArtistsTag set
...
Jellyfin implemented ARTISTS multivalue tag but did not implement the equivalent ALBUMARTISTS multivalue tag. This change adds ALBUMARTISTS support. If present and PreferNonstandardArtistsTag is set, ALBUMARTISTS will be used in preference to ALBUMARTIST. As with ARTISTS, the intent is to offer support for multiple album artists without affecting software that does not read ALBUMARTIST as a multivalued tag.
Example album before/after:
ALBUM : Amici e Rivali
ARTIST : Lawrence Brownlee / Michael Spyres
album_artist : Lawrence Brownlee
ARTISTS : Lawrence Brownlee;Michael Spyres
ALBUMARTISTS : Lawrence Brownlee;Michael Spyres
Before ALBUMARTISTS support, Jellyfin reports:
Album Artist: Lawrence Brownlee [hyperlinked]
On each track Artist: Lawrence Brownlee, Michael Spyres
After ALBUMARTISTS support, Jellyfin reoprts:
Album Artist: Lawrence Brownlee [hyperlinked], Michael Spyres [hyperlinked]
On each track Artist: none shown (no other artists in source metadata)
This is ideal as both key artists are hyperlinkable from their albums.
References to other products implementing ALBUMARTISTS:
- Navidrome: https://www.navidrome.org/docs/usage/tagging-guidelines/#handling-multiple-artists-and-collaborations
- Kodi: https://kodi.wiki/view/Music_tagging#albumartists
- MusicBrainz Picard: https://picard-docs.musicbrainz.org/en/variables/variables_basic.html (_albumartists tag)
2025-07-02 07:55:24 +08:00
theguymadmax
b528c1100f
Fix missing music genre metadata ( #14332 )
2025-06-23 08:30:59 -06:00
gnattu
9d601f8e9b
Terminate at null char for audio tags ( #14100 )
2025-05-18 18:40:18 -06:00
theguymadmax
6c57ad4772
Fix Blu-ray metadata processing: preserve external streams and language metadata ( #14077 )
2025-05-09 08:35:54 -06:00
gnattu
140de04f94
Reject invalid replaygain tag value ( #14082 )
2025-05-09 08:35:41 -06:00
Tim Eisele
d976f13970
Recognize file changes and remove data on change ( #13839 )
2025-05-04 21:21:44 -06:00
Tim Eisele
df5671263f
Merge pull request #13847 from Shadowghost/rework-chapter-management
...
Rework chapter management
2025-04-26 14:01:12 +02:00
Tim Eisele
61cb53999e
Safeguard against null value trimming in tag results ( #13908 )
2025-04-13 07:43:06 -06:00
Marc Brooks
a5f3d942f6
Merge branch 'master' into sort-nfo-data
2025-03-12 10:33:27 -05:00
gnattu
237e7bd44b
Backport pull request #13694 from jellyfin/release-10.10.z
...
Clone fallback audio tags instead of use ATL.Track.set
Original-merge: 9eb2044eae
Merged-by: Bond-009 <bond.009@outlook.com >
Backported-by: Bond_009 <bond.009@outlook.com >
2025-03-12 08:40:33 -04:00
Dominik Krivohlavek
93dd5551df
Add support for reading and storing Recording MBIDs from file metadata ( #12173 )
...
* Add recording metadata provider
* Add recording MBID
* Save recording MBID during probing
* Set recording ID in probe result normalizer
* Add recording external media type
* Reimplement after changes in upstream
* Rename variable
* Rename variable
* Revert "Set recording ID in probe result normalizer"
This reverts commit 9dd18c8aba3f970a5816a13a33acf3d58b0e440f.
* Fix setting provider ID
* Simplify code
* Fix comment
* Add missing using
2025-02-28 23:00:52 -07:00
Marc Brooks
114591c1aa
Clean up usings and honor SortName
2025-02-25 01:51:38 -06:00
Cody Robibero
712908d53c
Revert nullability of MediaStream.IsHearingImpaired ( #13573 )
2025-02-17 19:20:18 -07:00
choyakawa
fb69b976bf
Fix the issue where the external audio track always defaults. ( #13132 )
2025-02-13 20:24:39 -07:00
gnattu
f4a2679177
Backport pull request #13490 from jellyfin/release-10.10.z
...
Correctly handle audio number tag fallbacks
Original-merge: 117d2082aa
Merged-by: joshuaboniface <joshua@boniface.me >
Backported-by: Bond_009 <bond.009@outlook.com >
2025-02-09 08:39:56 -05:00
Marc Brooks
4e64b261a8
Moved Trimmed to Jellyfin.Extensions.StringExtensions
2025-02-05 18:13:28 -06:00
Marc Brooks
e8cbcde02e
Merge branch 'master' into sort-nfo-data
2025-02-03 19:48:59 -06:00
gnattu
4c17498369
Backport pull request #13182 from jellyfin/release-10.10.z
...
Don't fall back to ffprobe results for multi-value audio tags
Original-merge: f97f38585b
Merged-by: Bond-009 <bond.009@outlook.com >
Backported-by: Bond_009 <bond.009@outlook.com >
2025-02-03 16:55:56 -05:00
Bond-009
bcdffa74a8
Remove useless checks and dead code ( #13405 )
...
* Remove useless checks and dead code
* Enable adaptive bitrate streaming again
* Disable adaptive bitrate streaming by default
2025-01-28 11:29:22 +01:00
Josh Soref
40da2ccac5
Fix spelling ( #13444 )
...
* spelling: anamorphic
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
* spelling: associated
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
* spelling: channelinfo
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
* spelling: eagerly
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
* spelling: enumerable
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
* spelling: greater than/less than
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
* spelling: greater
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
* spelling: lineup
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
* spelling: logs out
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
* spelling: names
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
* spelling: paging
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
* spelling: playlist
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
* spelling: sanitized
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
* spelling: saving
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
---------
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com >
2025-01-28 11:27:34 +01:00
Bond_009
47f798827b
Remove useless checks and dead code
2025-01-22 17:31:52 +01:00
JPVenson
56a4aa180b
Fixed codesmell
2025-01-18 16:22:05 +00:00
JPVenson
2f306358c0
applied review comments
2025-01-18 16:17:26 +00:00