Commit Graph

76 Commits

Author SHA1 Message Date
Erik W 4af66c4e1a Improve OriginalLanguage normalization and inheritance (#16829)
Improve OriginalLanguage normalization and inheritance
2026-05-26 21:02:43 +02:00
Shadowghost 09e607db99 Fix integrated provider images 2026-05-15 18:42:11 +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
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
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
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 97a02f5803 Remove BOM from UTF-8 files
I think some people need to change their IDE configuration ;)
2024-08-30 15:29:48 +02:00
Bond_009 ecd2dab0a2 Add TrySetProviderId extension 2024-07-17 15:48:21 +02:00
Bond-009 ac108690a8 Use StringSplitOptions.TrimEntries where possible (#11421) 2024-04-24 08:35:15 -06:00
Niels van Velzen 407cf5d0bf Add MediaStreamProtocol enum (#10153)
* Add MediaStreamProtocol enum

* Add default handling for enum during deserialization

---------

Co-authored-by: Cody Robibero <cody@robibe.ro>
2024-03-04 16:44:54 -07:00
Bond_009 d7748cfa04 Multiple Stream changes
* Remove useless MemoryStream in DlnaHttpClient
* Use HttpContent.ReadFromJsonAsync extension
* Call ConfigureAwait for IAsyncDisposable
* Use HttpContent.CopyToAsync where possible
2023-10-11 18:32:57 +02: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
Shadowghost e7a7edbac0 Various fixes (#9361) 2023-02-20 08:04:30 -07:00
Bond_009 24a7e210c3 Optimize tryparse
* Don't check for null before
* Don't try different formats when not needed (NumberFormat.Integer is the fast path)
2023-02-19 16:52:29 +01:00
Bond_009 b934b346e1 Fix all warnings in MediaBrowser.Providers 2023-01-11 10:36:18 +01:00
Bond_009 b366dc2e6e Use ArgumentException.ThrowIfNullOrEmpty 2022-12-07 16:43:59 +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
David Ullmer abcb188916 Backport pull request #8667 from jellyfin/release-10.8.z
Enable OMDB plot for non-English languages as fallback

Original-merge: f83a24ec43

Merged-by: Cody Robibero <cody@robibe.ro>

Backported-by: Joshua M. Boniface <joshua@boniface.me>
2022-10-31 23:08:42 -04:00
cvium b880dc8a4a Use our own Contains extension 2021-12-20 13:31:07 +01:00
cvium 71a0abe211 Remove unnecessary N/A checks (converter changes them to null) 2021-11-20 08:32:07 +01:00
cvium d8c3b8e7f8 Don't use AppendFormat 2021-11-20 08:24:52 +01:00
cvium 96ea865681 Refactor omdb providers 2021-11-19 15:32:07 +01:00
cvium 24024706bf Fix release build 2021-11-16 12:55:35 +01:00
cvium 93fd1c7075 Fix 2021-11-16 12:27:27 +01:00
cvium b50c3852ef Remove unused dependencies 2021-11-16 12:24:17 +01:00
Bond_009 f5ca9cbc3b Enable nullable for MediaBrowser.Providers 2021-10-26 15:49:01 +02:00
Cody Robibero 9234e5bf80 Remove all instances of en-US culture 2021-09-26 09:11:25 -06:00
Bond_009 f31224fa8f Remove sync FileStream hack 2021-09-25 19:44:40 +02:00
Bond_009 13fbfe6091 Target net6.0 2021-09-24 20:15:46 +02:00
Bond_009 e3dac4fda2 Use async FileStreams where it makes sense 2021-09-02 14:02:04 +02:00
Rich Lander 927b003143 Fix remaining MediaBrowser.Providers warnings 2021-07-22 20:16:38 -07:00
Rich Lander fb92eab69b Fix analysis issues 2021-07-22 17:33:19 -07:00
Bond_009 cf061f7563 MediaBrowser.Providers: Remove some warnings 2021-06-27 02:00:27 +02:00
Bond_009 6f8ccab788 Move non-jellyfin extensions to separate project 2021-06-19 18:04:46 +02:00
BaronGreenback bc1cc2d04a Remove unused using directives 2021-04-17 11:37:55 +01:00
Bond_009 a8ed753f6c FxCop -> Net Analyzers (part 2) 2021-03-13 22:33:28 +01:00
Bond_009 eeff9f52c6 Fix Omdb caching 2021-01-12 16:27:38 +01:00
crobibero c1d1b6e9f4 Fix serialization loop 2021-01-04 07:52:44 -07:00
crobibero a3a31952f4 Fix OMDb converter 2021-01-03 09:35:22 -07:00
Cody Robibero 5c57569692 Merge branch 'master' into PluginDowngrade 2020-12-30 18:11:37 -07:00
David 9e0f425783 Make RootObject and SeasonRootObject internal again 2020-12-28 23:41:46 +01:00
David 21fd124bca Code revie 2020-12-27 11:15:46 +01:00
David f73bb92ce3 Remove manual N/A removal and write directly to stream 2020-12-26 20:00:54 +01:00
David e0499f8769 Remove attributes 2020-12-25 19:37:38 +01:00
crobibero fc212e5e5f Remove JsonOmdbNotAvailableConverterFactory 2020-12-25 14:43:10 +01:00
crobibero 6ddbe8420f Add tests for special Omdb json 2020-12-25 14:43:10 +01:00
David 043d045448 Put json serializer options in private field 2020-12-24 11:22:34 +01:00