Commit Graph

95 Commits

Author SHA1 Message Date
Bond-009
1a6f019cfd Merge pull request #17121 from theguymadmax/fix-date-offset
Fix episode air date offset after initial scan
2026-06-18 17:46:07 +02:00
Rant423
5036bf7db0 Fetch TV Shows creators from TMDB (#17107)
Fetch TV Shows creators from TMDB
2026-06-17 20:39:33 +02:00
theguymadmax
e525fc7c4b Fix episode air date offset after initial scan 2026-06-16 18:02:26 -04:00
Bond-009
8e602f982f Merge pull request #15970 from Shadowghost/similarity
Implement similarity providers
2026-05-15 10:00:53 +02:00
Shadowghost
ae7a8c418b Make Cache duration user configurable 2026-05-14 07:56:19 +02:00
Erik W
e1e18e8da0 Add OriginalLanguage as option to PreferredAudioLanguage (#12579)
* Add OriginalLanguage as option to PreferredAudioLanguage

* Support for multiple original languages

* Add original audio stream indicator

* Fetch OriginalLanguage from TMDB

* Adapt to EFCore refactor

* Fix PlayDefaultAudioTrack OriginalLanguage behavior

* Fix better PlayDefaultAudioTrack OriginalLanguage behavior

* Add comment to ItemFields

* Improved PlayDefaultAudioTrack behavior

* Add migration for original language

* Use sting.Equals for string comparisons

* Always set dto OriginalLanguage

* Remove OriginalLanguage from ItemFields

---------

Co-authored-by: Lampan-git <lampan-git@users.noreply.github.com>
2026-05-07 20:07:23 +02:00
Shadowghost
4ebce39070 Implement Similarity providers 2026-05-03 23:43:01 +02:00
Marc Brooks
aa96ff42e6 Parse provider IDs from season and episode folder/file names
Season and episode directories/files can now include provider ID
attributes in their names (e.g. "Season 01 [tvdbid=22222]" or
"Show S01E01 [tmdbid=99999].mkv"), consistent with the existing
behavior for series folders.

Supported providers: imdbid, tvdbid, tvmazeid, tmdbid.

Adds TmdbSeasonExternalId and TmdbEpisodeExternalId so that
the TMDB season and episode IDs are surfaced in the metadata editor.

Seasons do not have their own IMDb IDs, so we don't support imdbid parsing
in SeasonResolver. Instead, generate IMDb season URLs via
ImdbExternalUrlProvider using the parent series' IMDb ID and the
season number, matching the IMDb URL format:
imdb.com/title/{seriesId}/episodes/?season={N}

Add tests for the ExternalUrlProviders.
2026-03-25 18:47:40 -05:00
Bond_009
b346370dfc Fix build 2026-02-15 11:28:42 +01:00
DerMaddis
e73ebc9741 TmdbSeriesProvider: Set ProductionYear in SearchResult mappers 2026-02-13 12:03:58 +01:00
DerMaddis
0a1dd56af6 TmdbSeriesProvider: Set ProductionYear field 2026-01-30 14:24:11 +01:00
Shadowghost
f9fd34b11e Backport pull request #15872 from jellyfin/release-10.11.z
Be more strict about PersonType assignment

Original-merge: b56de6493f

Merged-by: crobibero <cody@robibe.ro>

Backported-by: Bond_009 <bond.009@outlook.com>
2026-01-18 11:30:37 -05:00
ivanjx
3f2ebc4179 Backport pull request #15113 from jellyfin/release-10.11.z
Add season number fallback for OMDB and TMDB plugins

Original-merge: 618ec4543e

Merged-by: crobibero <cody@robibe.ro>

Backported-by: Bond_009 <bond.009@outlook.com>
2025-10-27 15:43:14 -04:00
Erik W
2c7d2d4719 Handle es-419 in TMDb (#14946) 2025-10-13 13:47:16 -06:00
theguymadmax
7d18f3d6ed Improve cast and crew handling (#14370)
Some checks are pending
CodeQL / Analyze (csharp) (push) Waiting to run
OpenAPI / OpenAPI - HEAD (push) Waiting to run
OpenAPI / OpenAPI - BASE (push) Waiting to run
OpenAPI / OpenAPI - Difference (push) Blocked by required conditions
OpenAPI / OpenAPI - Publish Unstable Spec (push) Blocked by required conditions
OpenAPI / OpenAPI - Publish Stable Spec (push) Blocked by required conditions
Tests / run-tests (macos-latest) (push) Waiting to run
Tests / run-tests (ubuntu-latest) (push) Waiting to run
Tests / run-tests (windows-latest) (push) Waiting to run
Project Automation / Project board (push) Waiting to run
Merge Conflict Labeler / Labeling (push) Waiting to run
2025-06-24 17:48:36 -06:00
Joshua M. Boniface
79437f85c5 Merge pull request #13175 from Shadowghost/external-url-providers
Migrate to IExternalUrlProvider
2025-03-13 21:08:18 -04:00
Marc Brooks
a5f3d942f6 Merge branch 'master' into sort-nfo-data 2025-03-12 10:33:27 -05:00
Shadowghost
06be4998e1 Backport pull request #13611 from jellyfin/release-10.10.z
Remove empty ParentIndexNumber workaround

Original-merge: 1daf761aec

Merged-by: Bond-009 <bond.009@outlook.com>

Backported-by: Bond_009 <bond.009@outlook.com>
2025-02-25 15:26:47 -05:00
Shadowghost
5303445c9b Migrate to IExternalUrlProvider 2025-02-20 10:13:27 +01:00
Marc Brooks
6dc61a430b Sort embedded collections in Nfo files
Because the Nfo files emit the collections as they are in-memory, the
files are not stable in format, genres, tags, albums, people, etc. are emitted in random orders. Add ordering of the collections when emitting the Nfo files so the file remains stable (unchanged) when underlying media information doesn't change.

In the process of this, it became clear that most of the providers and probes don't trim the strings like people's names, genre names, etc. so did a pass of Trim cleanup too.

Specific ordering: (alphabetical/numeric ascending after trimming blanks and defaulting to zero for missing numbers)

BaseItem: Directors, Writers, Trailers (by Url), Production Locations, Genres, Studios, Tags, Custom Provider Data (by key), Linked Children  (by Path>LibraryItemId), Backdrop Images (by path), Actors (by SortOrder>Name)

AlbumNfo: Artists, Album Artists, Tracks (by ParentIndexNumber>IndexNumber>Name)

ArtistNfo: Albums (by Production Year>SortName>Name)

MovieNfo: Artists

Fix Debug build lint


Fix CI debug build lint issue.


Fix review issues

Fixed debug-build lint issues.
Emits the `disc` number to NFO for tracks with a non-zero ParentIndexNumber and only emit `position` if non-zero.
Removed the exception filtering I put in for testing.

Don't emit actors for MusicAlbums or MusicArtists


Swap from String.Trimmed() to ?.Trim()
Addressing PR feedback

Can't use ReadOnlySpan in an async method

Removed now-unused namespace
2024-09-18 20:33:18 -05:00
Bond_009
ecd2dab0a2 Add TrySetProviderId extension 2024-07-17 15:48:21 +02:00
Shadowghost
b063dfd2e3 Backport pull request #11648 from jellyfin/release-10.9.z
Fix series status parsing

Original-merge: c6c48a2b47

Merged-by: nielsvanvelzen <nielsvanvelzen@users.noreply.github.com>

Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-05-17 13:51:42 -04:00
Cody Robibero
c8d93d9352 Return backdrops with text as thumb for tmdb (#11078) 2024-02-28 17:39:31 -07:00
Bond-009
5e48278e2a Merge pull request #10078 from scampower3/master
Combine Title and Overview for multi-episodes files for the TMDB provider
2023-11-08 11:18:12 +01:00
LJQ
1d19fe50b4 Deep copy instead of Shallow copy 2023-10-16 21:18:25 +08:00
LJQ
298a7488a3 Applied 2nd Round of Suggested Changes 2023-10-16 19:48:01 +08:00
Stepan Goremykin
3f9ee316d5 Use non nullable property type when possible 2023-10-08 00:22:36 +02:00
LJQ
136a4abbd3 Applied Suggested Changes 2023-09-11 20:29:49 +08:00
LJQ
0676b878f3 Removed unused imports 2023-08-04 21:25:43 +08:00
LJQ
28a6694f6e Combined Title and Overview for multi-episodes files for the TMDB provider 2023-08-04 21:19:08 +08:00
Cody Robibero
89be3aa37f Convert Person.Type to use PersonKind enum (#9487) 2023-03-25 11:52:02 -06:00
Bond_009
4b01aaa0f7 Allocate less Lists 2023-03-01 00:44:57 +01:00
Bond_009
e35119987a Enable nullable for more files 2023-02-25 17:20:53 +01:00
Bond-009
eaeb65f94d Update MediaBrowser.Providers/Plugins/Tmdb/TV/TmdbEpisodeImageProvider.cs
Co-authored-by: Cody Robibero <cody@robibe.ro>
2023-02-24 16:22:30 +01:00
Bond_009
ab24c0e2cf Enable nullable for more files 2023-02-23 19:09:16 +01:00
Bond_009
b934b346e1 Fix all warnings in MediaBrowser.Providers 2023-01-11 10:36:18 +01:00
Bond_009
52194f56b5 Replace != null with is not null 2022-12-05 15:01:13 +01:00
Bond_009
c7d50d640e Replace == null with is null 2022-12-05 15:00:20 +01:00
Shadowghost
2e639c77c7 Apply review suggestions 2022-11-17 18:54:35 +01:00
Shadowghost
072651c4be Add xmldocs for TMDb provider, correct provider spelling 2022-11-17 11:16:20 +01:00
Cody Robibero
0e2b20e6d6 tmdb - update available series end status 2022-03-18 18:49:12 -06:00
Joe Rogers
239b516659 Add TMDb logo handling 2022-01-19 09:54:52 +01:00
SenorSmartyPants
c32db3ea26 Fix build error 2022-01-13 22:51:38 -06:00
SenorSmartyPants
a19b6a7f61 Config option to import season name from TMDB 2022-01-13 22:31:37 -06:00
cvium
b880dc8a4a Use our own Contains extension 2021-12-20 13:31:07 +01:00
Joe Rogers
c8eba90c17 Add cast limit to tmdb plugin settings 2021-11-05 00:38:50 +01:00
Joe Rogers
4fc0521d69 Move ConvertToRemoteImage to TmdbClientManager 2021-11-03 17:16:40 +01:00
Joe Rogers
2b283d249f Switch to method per image conversion 2021-11-02 21:12:13 +01:00
Joe Rogers
4a5e8b99a0 Extract duplicate code, add test 2021-11-01 23:17:00 +01:00
Bond_009
f5ca9cbc3b Enable nullable for MediaBrowser.Providers 2021-10-26 15:49:01 +02:00