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>
This commit is contained in:
Erik W
2026-05-07 20:07:23 +02:00
committed by GitHub
parent d636b82e83
commit e1e18e8da0
24 changed files with 2238 additions and 137 deletions

View File

@@ -67,6 +67,7 @@ namespace MediaBrowser.XbmcMetadata.Savers
"id",
"credits",
"originaltitle",
"originallanguage",
"watched",
"playcount",
"lastplayed",
@@ -376,6 +377,11 @@ namespace MediaBrowser.XbmcMetadata.Savers
writer.WriteElementString("default", stream.IsDefault.ToString(CultureInfo.InvariantCulture));
writer.WriteElementString("forced", stream.IsForced.ToString(CultureInfo.InvariantCulture));
if (stream.IsOriginal)
{
writer.WriteElementString("original", stream.IsOriginal.ToString(CultureInfo.InvariantCulture));
}
if (stream.Type == MediaStreamType.Video)
{
var runtimeTicks = item.RunTimeTicks;
@@ -484,6 +490,11 @@ namespace MediaBrowser.XbmcMetadata.Savers
writer.WriteElementString("originaltitle", item.OriginalTitle);
}
if (!string.IsNullOrWhiteSpace(item.OriginalLanguage))
{
writer.WriteElementString("originallanguage", item.OriginalLanguage);
}
var people = libraryManager.GetPeople(item);
var directors = people