aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2013-12-26 01:17:19 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2013-12-26 01:17:19 -0500
commit25db52003c20473e94e07fb02adf43549a4ba213 (patch)
tree7685fa52ad45b9142ec247c65160699c0a5b4942
parent7c8424bf611b90cf27ce8d8d94b26f0da612d114 (diff)
added more metadata control
-rw-r--r--MediaBrowser.Model.Portable/MediaBrowser.Model.Portable.csproj6
-rw-r--r--MediaBrowser.Model.net35/MediaBrowser.Model.net35.csproj6
-rw-r--r--MediaBrowser.Model/Configuration/ImageDownloadOptions.cs (renamed from MediaBrowser.Model/Entities/ImageDownloadOptions.cs)18
-rw-r--r--MediaBrowser.Model/Configuration/ServerConfiguration.cs44
-rw-r--r--MediaBrowser.Model/MediaBrowser.Model.csproj2
-rw-r--r--MediaBrowser.Providers/Movies/FanArtMovieProvider.cs2
-rw-r--r--MediaBrowser.Providers/Movies/MovieDbImagesProvider.cs8
-rw-r--r--MediaBrowser.Providers/Music/FanArtArtistProvider.cs2
-rw-r--r--MediaBrowser.Providers/TV/FanArtTVProvider.cs2
-rw-r--r--MediaBrowser.Providers/TV/TvdbSeriesImageProvider.cs4
-rw-r--r--MediaBrowser.Server.Implementations/Drawing/ImageProcessor.cs7
-rw-r--r--MediaBrowser.WebDashboard/Api/DashboardService.cs3
-rw-r--r--MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj10
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>