aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Providers
AgeCommit message (Collapse)Author
2025-07-07Update dependency z440.atl.core to v7 (#14391)renovate[bot]
2025-07-04Merge pull request #14309 from shanepowell/MediaInfoFixsShane Powell
Fix PeopleHelper.AddPerson Exceptions due to bad meta-data extracts.
2025-07-02Read ALBUMARTISTS in preference to ARTISTS when PreferNonstandardArtistsTag setEvan
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-06-26Fix modification checks and make sure to use UTC (#14347)Tim Eisele
2025-06-24Improve cast and crew handling (#14370)theguymadmax
2025-06-24Adapt LrcLyricParser to new LrcParser version (#14263)Max Rumpf
2025-06-23Fix missing music genre metadata (#14332)theguymadmax
2025-06-15Always set update action when item does not exist (#14304)JPVenson
2025-06-12Fix People Issues (#14284)Tim Eisele
2025-06-11Properly handle file access issues in some cases (#14272)Tim Eisele
2025-06-07Merge pull request #12908 from scampower3/search-for-missing-overrides-existingv10.11.0-rc1Niels van Velzen
Fix search for missing metadata overriding existing metadata
2025-06-07Merge pull request #14209 from theguymadmax/themoviedb-year-cache-keyNiels van Velzen
Add year parameter to TMDB series cache key
2025-06-05Fix metadata not refreshing in negative UTC timezones (#14225)theguymadmax
2025-06-03Prune trickplay data on regenerate and scan (#14085)Tim Eisele
2025-06-03Add year parameter to TMDB series cache keytheguymadmax
2025-05-20Fix ArgumentNullException when downloading season logos (#14141)theguymadmax
2025-05-18Terminate at null char for audio tags (#14100)gnattu
2025-05-18Fix ArgumentNullException in TmdbExternalUrlProvider (#14130)theguymadmax
2025-05-11Fix extracted data cleanup in cleanup post scan task (#14083)Tim Eisele
2025-05-09Fix Blu-ray metadata processing: preserve external streams and language ↵theguymadmax
metadata (#14077)
2025-05-09Reject invalid replaygain tag value (#14082)gnattu
2025-05-09Cleanup external item data cleanup (#14072)Tim Eisele
2025-05-04Recognize file changes and remove data on change (#13839)Tim Eisele
2025-04-26Fix distinction queries (#14007)Tim Eisele
2025-04-26improved performance of save operations (#13889)JPVenson
2025-04-26Merge pull request #13847 from Shadowghost/rework-chapter-managementTim Eisele
Rework chapter management
2025-04-13Safeguard against null value trimming in tag results (#13908)Tim Eisele
2025-04-07Add API support for ELRC word-based lyrics (#12941)Alex
* Add API support for ELRC word-based lyrics Adds support for word-based timestamps from within ELRC files. * Create TimeTags object * redo TimeTag implementation Change TimeTag to long, redo TimeTag implementation Make timestamp not nullable Update MediaBrowser.Model/Lyrics/LyricLine.cs Make TimeTag list IReadOnlyList Remove nullable Timestamp Update TimeTag description Co-Authored-By: Cody Robibero <cody@robibe.ro> * Changes to LyricLineTimeTag Moved TimeTag to LyricLineTimeTag Change "timestamp" to "start" for consistency Change plural "TimeTags" to "Cues" Change comments * Change LyricLineTimeTag to LyricLineCue, include info about end times * Remove width * Remove width tag * Rewrite cue parser and add tests --------- Co-authored-by: Cody Robibero <cody@robibe.ro>
2025-04-06Returns album artists apart from artist names when doing a lyrics search ↵JQ
(#13852)
2025-03-31Fix Tmdb external URL generation (#13817)Tim Eisele
* Fix Tmdb external URL generation * Update MediaBrowser.Providers/Plugins/Tmdb/TmdbExternalUrlProvider.cs
2025-03-31Use pattern matching for null checks (#13793)Bond-009
Fix the few that slipped through
2025-03-30Rework parental ratings (#12615)Tim Eisele
2025-03-29rebaseLJQ
2025-03-20Backport pull request #13720 from jellyfin/release-10.10.zLampan-git
Fix regression where "Search for missing metadata" not handling cast having multiple roles Original-merge: 91ca81eca7d2c984a096a396cbd83d0111f41c9d Merged-by: Bond-009 <bond.009@outlook.com> Backported-by: Bond_009 <bond.009@outlook.com>
2025-03-16Fix IMDb URL for Peopletheguymadmax
2025-03-14Fix build and tests (#13718)Tim Eisele
2025-03-13Merge pull request #13175 from Shadowghost/external-url-providersJoshua M. Boniface
Migrate to IExternalUrlProvider
2025-03-12Merge branch 'master' into sort-nfo-dataMarc Brooks
2025-03-12Backport pull request #13694 from jellyfin/release-10.10.zgnattu
Clone fallback audio tags instead of use ATL.Track.set Original-merge: 9eb2044eae50c69be4cb3830887bdd5da15ee920 Merged-by: Bond-009 <bond.009@outlook.com> Backported-by: Bond_009 <bond.009@outlook.com>
2025-03-02Backport pull request #13618 from jellyfin/release-10.10.zLampan-git
Include Role and SortOrder in MergePeople to fix "Search for missing metadata" Original-merge: fcdef875a2b0e49bc0ebeec12797c91ddb8f9bdc Merged-by: Bond-009 <bond.009@outlook.com> Backported-by: Bond_009 <bond.009@outlook.com>
2025-02-28Add support for reading and storing Recording MBIDs from file metadata (#12173)Dominik Krivohlavek
* 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-25Backport pull request #13611 from jellyfin/release-10.10.zShadowghost
Remove empty ParentIndexNumber workaround Original-merge: 1daf761aece5114a6ac3b7b938f114e70b83d99e Merged-by: Bond-009 <bond.009@outlook.com> Backported-by: Bond_009 <bond.009@outlook.com>
2025-02-25Clean up usings and honor SortNameMarc Brooks
2025-02-22Apply suggestions from code reviewTim Eisele
Co-authored-by: Cody Robibero <cody@robibe.ro>
2025-02-21Use TryGetProviderId where possibleShadowghost
2025-02-20Migrate to IExternalUrlProviderShadowghost
2025-02-17Revert nullability of MediaStream.IsHearingImpaired (#13573)Cody Robibero
2025-02-13Fix the issue where the external audio track always defaults. (#13132)choyakawa
2025-02-09Backport pull request #13490 from jellyfin/release-10.10.zgnattu
Correctly handle audio number tag fallbacks Original-merge: 117d2082aa4f46f470c361c39f4a2189014260ee Merged-by: joshuaboniface <joshua@boniface.me> Backported-by: Bond_009 <bond.009@outlook.com>
2025-02-09Backport pull request #13439 from jellyfin/release-10.10.zBond-009
Fall back to calculating mime type from path when needed Original-merge: 8aa4e2e32037c15d4d08f40a776943a4d1575302 Merged-by: crobibero <cody@robibe.ro> Backported-by: Bond_009 <bond.009@outlook.com>