| Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
* Correct Album Artists merge logic and Artist equality checks
Correct Album Artists merge logic in MetadataService that causes empty
metadata sources to overwrite populated Album Artists arrays. This impacted
People-to-BaseItem relationships and caused orphaned records in Peoples.
Correct equality checks to be case-sensitive so Jelly metadata exactly
matches file metadata.
* use StringComparer.Ordinal
---------
Co-authored-by: Evan <evan@MacBook-Pro.local>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fix PeopleHelper.AddPerson Exceptions due to bad meta-data extracts.
|
|
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)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fix search for missing metadata overriding existing metadata
|
|
Add year parameter to TMDB series cache key
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
metadata (#14077)
|
|
|
|
|
|
|
|
|
|
|
|
Rework chapter management
|
|
|
|
* 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>
|
|
(#13852)
|
|
* Fix Tmdb external URL generation
* Update MediaBrowser.Providers/Plugins/Tmdb/TmdbExternalUrlProvider.cs
|
|
Fix the few that slipped through
|
|
|
|
|
|
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>
|
|
|
|
|
|
Migrate to IExternalUrlProvider
|
|
|
|
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>
|
|
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>
|