diff options
| author | dkanada <dkanada@users.noreply.github.com> | 2019-12-14 15:01:43 +0900 |
|---|---|---|
| committer | dkanada <dkanada@users.noreply.github.com> | 2020-06-04 21:30:23 +0900 |
| commit | aa66444264fe0f76349316496fd5a6e8d3431b7d (patch) | |
| tree | fb5c6d0409ce622ade8e98eab0545075bcc226fb | |
| parent | 8d7e9ab5152a1f17d746c770cc3fec6374dd4a34 (diff) | |
add image provider for artists
| -rw-r--r-- | Emby.Server.Implementations/Images/BaseDynamicImageProvider.cs | 2 | ||||
| -rw-r--r-- | Emby.Server.Implementations/Playlists/PlaylistImageProvider.cs | 24 |
2 files changed, 25 insertions, 1 deletions
diff --git a/Emby.Server.Implementations/Images/BaseDynamicImageProvider.cs b/Emby.Server.Implementations/Images/BaseDynamicImageProvider.cs index 9bbd71b96..23cef216c 100644 --- a/Emby.Server.Implementations/Images/BaseDynamicImageProvider.cs +++ b/Emby.Server.Implementations/Images/BaseDynamicImageProvider.cs @@ -215,7 +215,7 @@ namespace Emby.Server.Implementations.Images if (imageType == ImageType.Primary) { - if (item is UserView || item is Playlist || item is MusicGenre || item is Genre || item is PhotoAlbum) + if (item is UserView || item is Playlist || item is MusicGenre || item is Genre || item is PhotoAlbum || item is MusicArtist) { return CreateSquareCollage(item, itemsWithImages, outputPath); } diff --git a/Emby.Server.Implementations/Playlists/PlaylistImageProvider.cs b/Emby.Server.Implementations/Playlists/PlaylistImageProvider.cs index f8a2d9741..b8944e06a 100644 --- a/Emby.Server.Implementations/Playlists/PlaylistImageProvider.cs +++ b/Emby.Server.Implementations/Playlists/PlaylistImageProvider.cs @@ -67,6 +67,30 @@ namespace Emby.Server.Implementations.Playlists } } + public class MusicArtistImageProvider : BaseDynamicImageProvider<MusicArtist> + { + private readonly ILibraryManager _libraryManager; + + public MusicArtistImageProvider(IFileSystem fileSystem, IProviderManager providerManager, IApplicationPaths applicationPaths, IImageProcessor imageProcessor, ILibraryManager libraryManager) : base(fileSystem, providerManager, applicationPaths, imageProcessor) + { + _libraryManager = libraryManager; + } + + protected override IReadOnlyList<BaseItem> GetItemsWithImages(BaseItem item) + { + return _libraryManager.GetItemList(new InternalItemsQuery + { + ArtistIds = new[] { item.Id }, + IncludeItemTypes = new[] { typeof(MusicAlbum).Name }, + OrderBy = new[] { (ItemSortBy.Random, SortOrder.Ascending) }, + Limit = 4, + Recursive = true, + ImageTypes = new[] { ImageType.Primary }, + DtoOptions = new DtoOptions(false) + }); + } + } + public class MusicGenreImageProvider : BaseDynamicImageProvider<MusicGenre> { private readonly ILibraryManager _libraryManager; |
