Merge pull request #9787 from TheMelmacian/feature/language_filters

New filters for audio and subtitle languages
This commit is contained in:
Bond-009
2026-05-15 15:44:22 +02:00
committed by GitHub
12 changed files with 177 additions and 9 deletions

View File

@@ -58,6 +58,8 @@ namespace MediaBrowser.Controller.Entities
VideoTypes = [];
Years = [];
SkipDeserialization = false;
AudioLanguages = [];
SubtitleLanguages = [];
}
public InternalItemsQuery(User? user)
@@ -387,6 +389,10 @@ namespace MediaBrowser.Controller.Entities
public bool IncludeExtras { get; set; }
public IReadOnlyList<string> AudioLanguages { get; set; }
public IReadOnlyList<string> SubtitleLanguages { get; set; }
public void SetUser(User user)
{
var maxRating = user.MaxParentalRatingScore;

View File

@@ -784,5 +784,12 @@ namespace MediaBrowser.Controller.Library
/// <param name="query">The query filter.</param>
/// <returns>Aggregated filter values.</returns>
QueryFiltersLegacy GetQueryFiltersLegacy(InternalItemsQuery query);
/// <summary>
/// Gets a list of all language codes of the provided stream type.
/// </summary>
/// <param name="mediaStreamType">The stream type.</param>
/// <returns>List of language codes.</returns>
IReadOnlyList<string> GetMediaStreamLanguages(MediaStreamType mediaStreamType);
}
}

View File

@@ -21,6 +21,13 @@ public interface IMediaStreamRepository
/// <returns>IEnumerable{MediaStream}.</returns>
IReadOnlyList<MediaStream> GetMediaStreams(MediaStreamQuery filter);
/// <summary>
/// Gets all language codes of the provided stream type.
/// </summary>
/// <param name="mediaStreamType">The type of the media stream.</param>
/// <returns>IEnumerable{string}.</returns>
IReadOnlyList<string> GetMediaStreamLanguages(MediaStreamType mediaStreamType);
/// <summary>
/// Saves the media streams.
/// </summary>