diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-12-26 01:17:19 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-12-26 01:17:19 -0500 |
| commit | 25db52003c20473e94e07fb02adf43549a4ba213 (patch) | |
| tree | 7685fa52ad45b9142ec247c65160699c0a5b4942 | |
| parent | 7c8424bf611b90cf27ce8d8d94b26f0da612d114 (diff) | |
added more metadata control
| -rw-r--r-- | MediaBrowser.Model.Portable/MediaBrowser.Model.Portable.csproj | 6 | ||||
| -rw-r--r-- | MediaBrowser.Model.net35/MediaBrowser.Model.net35.csproj | 6 | ||||
| -rw-r--r-- | MediaBrowser.Model/Configuration/ImageDownloadOptions.cs (renamed from MediaBrowser.Model/Entities/ImageDownloadOptions.cs) | 18 | ||||
| -rw-r--r-- | MediaBrowser.Model/Configuration/ServerConfiguration.cs | 44 | ||||
| -rw-r--r-- | MediaBrowser.Model/MediaBrowser.Model.csproj | 2 | ||||
| -rw-r--r-- | MediaBrowser.Providers/Movies/FanArtMovieProvider.cs | 2 | ||||
| -rw-r--r-- | MediaBrowser.Providers/Movies/MovieDbImagesProvider.cs | 8 | ||||
| -rw-r--r-- | MediaBrowser.Providers/Music/FanArtArtistProvider.cs | 2 | ||||
| -rw-r--r-- | MediaBrowser.Providers/TV/FanArtTVProvider.cs | 2 | ||||
| -rw-r--r-- | MediaBrowser.Providers/TV/TvdbSeriesImageProvider.cs | 4 | ||||
| -rw-r--r-- | MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs | 7 | ||||
| -rw-r--r-- | MediaBrowser.WebDashboard/Api/DashboardService.cs | 3 | ||||
| -rw-r--r-- | MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj | 10 |
13 files changed, 58 insertions, 56 deletions
diff --git a/MediaBrowser.Model.Portable/MediaBrowser.Model.Portable.csproj b/MediaBrowser.Model.Portable/MediaBrowser.Model.Portable.csproj index c89dcf4a5..36e666021 100644 --- a/MediaBrowser.Model.Portable/MediaBrowser.Model.Portable.csproj +++ b/MediaBrowser.Model.Portable/MediaBrowser.Model.Portable.csproj @@ -77,6 +77,9 @@ <Compile Include="..\MediaBrowser.Model\Configuration\BaseApplicationConfiguration.cs"> <Link>Configuration\BaseApplicationConfiguration.cs</Link> </Compile> + <Compile Include="..\MediaBrowser.Model\Configuration\ImageDownloadOptions.cs"> + <Link>Configuration\ImageDownloadOptions.cs</Link> + </Compile> <Compile Include="..\MediaBrowser.Model\Configuration\ManualLoginCategory.cs"> <Link>Configuration\ManualLoginCategory.cs</Link> </Compile> @@ -146,9 +149,6 @@ <Compile Include="..\MediaBrowser.Model\Entities\IHasProviderIds.cs"> <Link>Entities\IHasProviderIds.cs</Link> </Compile> - <Compile Include="..\MediaBrowser.Model\Entities\ImageDownloadOptions.cs"> - <Link>Entities\ImageDownloadOptions.cs</Link> - </Compile> <Compile Include="..\MediaBrowser.Model\Entities\ImageType.cs"> <Link>Entities\ImageType.cs</Link> </Compile> diff --git a/MediaBrowser.Model.net35/MediaBrowser.Model.net35.csproj b/MediaBrowser.Model.net35/MediaBrowser.Model.net35.csproj index 78f970969..7937bc403 100644 --- a/MediaBrowser.Model.net35/MediaBrowser.Model.net35.csproj +++ b/MediaBrowser.Model.net35/MediaBrowser.Model.net35.csproj @@ -64,6 +64,9 @@ <Compile Include="..\MediaBrowser.Model\Configuration\BaseApplicationConfiguration.cs"> <Link>Configuration\BaseApplicationConfiguration.cs</Link> </Compile> + <Compile Include="..\MediaBrowser.Model\Configuration\ImageDownloadOptions.cs"> + <Link>Configuration\ImageDownloadOptions.cs</Link> + </Compile> <Compile Include="..\MediaBrowser.Model\Configuration\ManualLoginCategory.cs"> <Link>Configuration\ManualLoginCategory.cs</Link> </Compile> @@ -133,9 +136,6 @@ <Compile Include="..\MediaBrowser.Model\Entities\IHasProviderIds.cs"> <Link>Entities\IHasProviderIds.cs</Link> </Compile> - <Compile Include="..\MediaBrowser.Model\Entities\ImageDownloadOptions.cs"> - <Link>Entities\ImageDownloadOptions.cs</Link> - </Compile> <Compile Include="..\MediaBrowser.Model\Entities\ImageType.cs"> <Link>Entities\ImageType.cs</Link> </Compile> diff --git a/MediaBrowser.Model/Entities/ImageDownloadOptions.cs b/MediaBrowser.Model/Configuration/ImageDownloadOptions.cs index 92e989a34..603112110 100644 --- a/MediaBrowser.Model/Entities/ImageDownloadOptions.cs +++ b/MediaBrowser.Model/Configuration/ImageDownloadOptions.cs @@ -1,5 +1,5 @@ -namespace MediaBrowser.Model.Entities +namespace MediaBrowser.Model.Configuration { /// <summary> /// Class ImageDownloadOptions @@ -62,4 +62,20 @@ namespace MediaBrowser.Model.Entities Banner = true; } } + + /// <summary> + /// Class MetadataOptions. + /// </summary> + public class MetadataOptions + { + public int MaxBackdrops { get; set; } + + public int MinBackdropWidth { get; set; } + + public MetadataOptions() + { + MaxBackdrops = 3; + MinBackdropWidth = 1280; + } + } } diff --git a/MediaBrowser.Model/Configuration/ServerConfiguration.cs b/MediaBrowser.Model/Configuration/ServerConfiguration.cs index 9527fcbf3..c8c205404 100644 --- a/MediaBrowser.Model/Configuration/ServerConfiguration.cs +++ b/MediaBrowser.Model/Configuration/ServerConfiguration.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Weather; +using MediaBrowser.Model.Weather; using System; namespace MediaBrowser.Model.Configuration @@ -88,12 +87,6 @@ namespace MediaBrowser.Model.Configuration public string MetadataCountryCode { get; set; } /// <summary> - /// Gets or sets the max backdrops. - /// </summary> - /// <value>The max backdrops.</value> - public int MaxBackdrops { get; set; } - - /// <summary> /// Options for specific art to download for movies. /// </summary> public ImageDownloadOptions DownloadMovieImages { get; set; } @@ -205,18 +198,6 @@ namespace MediaBrowser.Model.Configuration public ImageSavingConvention ImageSavingConvention { get; set; } /// <summary> - /// Gets or sets the width of the min movie backdrop. - /// </summary> - /// <value>The width of the min movie backdrop.</value> - public int MinMovieBackdropDownloadWidth { get; set; } - - /// <summary> - /// Gets or sets the width of the min series backdrop. - /// </summary> - /// <value>The width of the min series backdrop.</value> - public int MinSeriesBackdropDownloadWidth { get; set; } - - /// <summary> /// Gets or sets a value indicating whether [enable people prefix sub folders]. /// </summary> /// <value><c>true</c> if [enable people prefix sub folders]; otherwise, <c>false</c>.</value> @@ -232,6 +213,12 @@ namespace MediaBrowser.Model.Configuration public bool EnableEpisodeChapterImageExtraction { get; set; } public bool EnableOtherVideoChapterImageExtraction { get; set; } + public MetadataOptions MovieOptions { get; set; } + public MetadataOptions TvOptions { get; set; } + public MetadataOptions MusicOptions { get; set; } + public MetadataOptions GameOptions { get; set; } + public MetadataOptions BookOptions { get; set; } + /// <summary> /// Initializes a new instance of the <see cref="ServerConfiguration" /> class. /// </summary> @@ -272,7 +259,6 @@ namespace MediaBrowser.Model.Configuration }; DownloadMusicArtistImages = new ImageDownloadOptions(); DownloadMusicAlbumImages = new ImageDownloadOptions(); - MaxBackdrops = 3; SortReplaceCharacters = new[] { ".", "+", "%" }; SortRemoveCharacters = new[] { ",", "&", "-", "{", "}", "'" }; @@ -280,8 +266,20 @@ namespace MediaBrowser.Model.Configuration SeasonZeroDisplayName = "Specials"; - MinMovieBackdropDownloadWidth = 1280; - MinSeriesBackdropDownloadWidth = 1280; + MovieOptions = new MetadataOptions(); + TvOptions = new MetadataOptions(); + + MusicOptions = new MetadataOptions() + { + MaxBackdrops = 1 + }; + + GameOptions = new MetadataOptions(); + + BookOptions = new MetadataOptions + { + MaxBackdrops = 1 + }; } } diff --git a/MediaBrowser.Model/MediaBrowser.Model.csproj b/MediaBrowser.Model/MediaBrowser.Model.csproj index 2bebe7ee5..05bc0a40d 100644 --- a/MediaBrowser.Model/MediaBrowser.Model.csproj +++ b/MediaBrowser.Model/MediaBrowser.Model.csproj @@ -118,7 +118,7 @@ <Compile Include="Session\MessageCommand.cs" /> <Compile Include="Session\PlayRequest.cs" /> <Compile Include="Session\PlaystateCommand.cs" /> - <Compile Include="Entities\ImageDownloadOptions.cs" /> + <Compile Include="Configuration\ImageDownloadOptions.cs" /> <Compile Include="Logging\ILogManager.cs" /> <Compile Include="MediaInfo\BlurayDiscInfo.cs" /> <Compile Include="Entities\ChapterInfo.cs" /> diff --git a/MediaBrowser.Providers/Movies/FanArtMovieProvider.cs b/MediaBrowser.Providers/Movies/FanArtMovieProvider.cs index 3ee273145..2682cf3c0 100644 --- a/MediaBrowser.Providers/Movies/FanArtMovieProvider.cs +++ b/MediaBrowser.Providers/Movies/FanArtMovieProvider.cs @@ -300,7 +300,7 @@ namespace MediaBrowser.Providers.Movies cancellationToken.ThrowIfCancellationRequested(); - var backdropLimit = ConfigurationManager.Configuration.MaxBackdrops; + var backdropLimit = ConfigurationManager.Configuration.MovieOptions.MaxBackdrops; if (ConfigurationManager.Configuration.DownloadMovieImages.Backdrops && item.BackdropImagePaths.Count < backdropLimit) { diff --git a/MediaBrowser.Providers/Movies/MovieDbImagesProvider.cs b/MediaBrowser.Providers/Movies/MovieDbImagesProvider.cs index 6ea8e699a..4416671fa 100644 --- a/MediaBrowser.Providers/Movies/MovieDbImagesProvider.cs +++ b/MediaBrowser.Providers/Movies/MovieDbImagesProvider.cs @@ -132,8 +132,8 @@ namespace MediaBrowser.Providers.Movies } // Don't refresh if we already have both poster and backdrop and we're not refreshing images - if (item.HasImage(ImageType.Primary) && - item.BackdropImagePaths.Count >= ConfigurationManager.Configuration.MaxBackdrops && + if (item.HasImage(ImageType.Primary) && + item.BackdropImagePaths.Count >= ConfigurationManager.Configuration.MovieOptions.MaxBackdrops && !item.LockedFields.Contains(MetadataFields.Images)) { return false; @@ -211,10 +211,10 @@ namespace MediaBrowser.Providers.Movies cancellationToken.ThrowIfCancellationRequested(); var eligibleBackdrops = images - .Where(i => i.Type == ImageType.Backdrop && i.Width.HasValue && i.Width.Value >= ConfigurationManager.Configuration.MinMovieBackdropDownloadWidth) + .Where(i => i.Type == ImageType.Backdrop && i.Width.HasValue && i.Width.Value >= ConfigurationManager.Configuration.MovieOptions.MinBackdropWidth) .ToList(); - var backdropLimit = ConfigurationManager.Configuration.MaxBackdrops; + var backdropLimit = ConfigurationManager.Configuration.MovieOptions.MaxBackdrops; // backdrops - only download if earlier providers didn't find any (fanart) if (eligibleBackdrops.Count > 0 && diff --git a/MediaBrowser.Providers/Music/FanArtArtistProvider.cs b/MediaBrowser.Providers/Music/FanArtArtistProvider.cs index 454d56daf..b248fcb40 100644 --- a/MediaBrowser.Providers/Music/FanArtArtistProvider.cs +++ b/MediaBrowser.Providers/Music/FanArtArtistProvider.cs @@ -302,7 +302,7 @@ namespace MediaBrowser.Providers.Music { cancellationToken.ThrowIfCancellationRequested(); - var backdropLimit = ConfigurationManager.Configuration.MaxBackdrops; + var backdropLimit = ConfigurationManager.Configuration.MusicOptions.MaxBackdrops; if (ConfigurationManager.Configuration.DownloadMusicArtistImages.Backdrops && item.BackdropImagePaths.Count < backdropLimit) { diff --git a/MediaBrowser.Providers/TV/FanArtTVProvider.cs b/MediaBrowser.Providers/TV/FanArtTVProvider.cs index d939951fb..286702b8c 100644 --- a/MediaBrowser.Providers/TV/FanArtTVProvider.cs +++ b/MediaBrowser.Providers/TV/FanArtTVProvider.cs @@ -238,7 +238,7 @@ namespace MediaBrowser.Providers.TV { cancellationToken.ThrowIfCancellationRequested(); - var backdropLimit = ConfigurationManager.Configuration.MaxBackdrops; + var backdropLimit = ConfigurationManager.Configuration.TvOptions.MaxBackdrops; if (ConfigurationManager.Configuration.DownloadSeriesImages.Backdrops && item.BackdropImagePaths.Count < backdropLimit) { diff --git a/MediaBrowser.Providers/TV/TvdbSeriesImageProvider.cs b/MediaBrowser.Providers/TV/TvdbSeriesImageProvider.cs index 9220b8fa0..21a72dd57 100644 --- a/MediaBrowser.Providers/TV/TvdbSeriesImageProvider.cs +++ b/MediaBrowser.Providers/TV/TvdbSeriesImageProvider.cs @@ -137,7 +137,7 @@ namespace MediaBrowser.Providers.TV protected override bool NeedsRefreshInternal(BaseItem item, BaseProviderInfo providerInfo) { - if (item.HasImage(ImageType.Primary) && item.HasImage(ImageType.Banner) && item.BackdropImagePaths.Count >= ConfigurationManager.Configuration.MaxBackdrops) + if (item.HasImage(ImageType.Primary) && item.HasImage(ImageType.Banner) && item.BackdropImagePaths.Count >= ConfigurationManager.Configuration.TvOptions.MaxBackdrops) { return false; } @@ -196,7 +196,7 @@ namespace MediaBrowser.Providers.TV { foreach (var backdrop in images.Where(i => i.Type == ImageType.Backdrop && (!i.Width.HasValue || - i.Width.Value >= ConfigurationManager.Configuration.MinSeriesBackdropDownloadWidth))) + i.Width.Value >= ConfigurationManager.Configuration.TvOptions.MinBackdropWidth))) { var url = backdrop.Url; diff --git a/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs b/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs index 7ce0cad73..7ddf63cf8 100644 --- a/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs +++ b/MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs @@ -228,17 +228,12 @@ namespace MediaBrowser.Server.Implementations.Drawing // Graphics.FromImage will throw an exception if the PixelFormat is Indexed, so we need to handle that here using (var thumbnail = new Bitmap(newWidth, newHeight, PixelFormat.Format32bppPArgb)) { - #if __MonoCS__ // Mono throw an exeception if assign 0 to SetResolution - if (originalImage.HorizontalResolution != 0 && originalImage.VerticalResolution != 0) + if (originalImage.HorizontalResolution >= 0 && originalImage.VerticalResolution >= 0) { // Preserve the original resolution thumbnail.SetResolution(originalImage.HorizontalResolution, originalImage.VerticalResolution); } - #else - // Preserve the original resolution - thumbnail.SetResolution(originalImage.HorizontalResolution, originalImage.VerticalResolution); - #endif using (var thumbnailGraph = Graphics.FromImage(thumbnail)) { diff --git a/MediaBrowser.WebDashboard/Api/DashboardService.cs b/MediaBrowser.WebDashboard/Api/DashboardService.cs index e68abd23e..8c775fc15 100644 --- a/MediaBrowser.WebDashboard/Api/DashboardService.cs +++ b/MediaBrowser.WebDashboard/Api/DashboardService.cs @@ -472,7 +472,7 @@ namespace MediaBrowser.WebDashboard.Api "alphapicker.js", "addpluginpage.js", "advancedconfigurationpage.js", - "advancedmetadataconfigurationpage.js", + "metadataadvanced.js", "boxsets.js", "appsplayback.js", "appsweather.js", @@ -510,7 +510,6 @@ namespace MediaBrowser.WebDashboard.Api "mediaplayer.js", "metadataconfigurationpage.js", "metadataimagespage.js", - "metadataimageextraction.js", "moviegenres.js", "movies.js", "moviepeople.js", diff --git a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj index d441abfeb..3ae7e7f1d 100644 --- a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj +++ b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj @@ -154,9 +154,6 @@ <Content Include="dashboard-ui\livetvtimers.html">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\metadataimageextraction.html">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
<Content Include="dashboard-ui\musicalbumartists.html">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
@@ -436,9 +433,6 @@ <Content Include="dashboard-ui\scripts\livetvtimers.js">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
- <Content Include="dashboard-ui\scripts\metadataimageextraction.js">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
<Content Include="dashboard-ui\scripts\musicalbumartists.js">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
@@ -1531,12 +1525,12 @@ </Content>
</ItemGroup>
<ItemGroup>
- <Content Include="dashboard-ui\advancedmetadata.html">
+ <Content Include="dashboard-ui\metadataadvanced.html">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
- <Content Include="dashboard-ui\scripts\advancedmetadataconfigurationpage.js">
+ <Content Include="dashboard-ui\scripts\metadataadvanced.js">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
|
