aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Providers
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Providers')
-rw-r--r--MediaBrowser.Providers/Manager/ItemImageProvider.cs13
-rw-r--r--MediaBrowser.Providers/MediaInfo/AudioImageProvider.cs32
-rw-r--r--MediaBrowser.Providers/MediaInfo/FFProbeProvider.cs6
3 files changed, 38 insertions, 13 deletions
diff --git a/MediaBrowser.Providers/Manager/ItemImageProvider.cs b/MediaBrowser.Providers/Manager/ItemImageProvider.cs
index 4419b48cbb..1d432463bd 100644
--- a/MediaBrowser.Providers/Manager/ItemImageProvider.cs
+++ b/MediaBrowser.Providers/Manager/ItemImageProvider.cs
@@ -412,7 +412,18 @@ namespace MediaBrowser.Providers.Manager
}
else
{
- currentImage.DateModified = _fileSystem.GetLastWriteTimeUtc(image.FileInfo);
+
+ var newDateModified = _fileSystem.GetLastWriteTimeUtc(image.FileInfo);
+
+ // If date changed then we need to reset saved image dimensions
+ if (currentImage.DateModified != newDateModified && (currentImage.Width > 0 || currentImage.Height > 0))
+ {
+ currentImage.Width = 0;
+ currentImage.Height = 0;
+ changed = true;
+ }
+
+ currentImage.DateModified = newDateModified;
}
}
else
diff --git a/MediaBrowser.Providers/MediaInfo/AudioImageProvider.cs b/MediaBrowser.Providers/MediaInfo/AudioImageProvider.cs
index 3499d5d3f8..1a650082c2 100644
--- a/MediaBrowser.Providers/MediaInfo/AudioImageProvider.cs
+++ b/MediaBrowser.Providers/MediaInfo/AudioImageProvider.cs
@@ -92,24 +92,34 @@ namespace MediaBrowser.Providers.MediaInfo
private string GetAudioImagePath(Audio item)
{
- var filename = item.Album ?? string.Empty;
- filename += string.Join(",", item.Artists);
+ string filename;
- if (!string.IsNullOrWhiteSpace(item.Album))
+ if (item.GetType() == typeof(Audio))
{
- filename += "_" + item.Album;
- }
- else if (!string.IsNullOrWhiteSpace(item.Name))
- {
- filename += "_" + item.Name;
+ filename = item.Album ?? string.Empty;
+ filename += string.Join(",", item.Artists);
+
+ if (!string.IsNullOrWhiteSpace(item.Album))
+ {
+ filename += "_" + item.Album;
+ }
+ else if (!string.IsNullOrWhiteSpace(item.Name))
+ {
+ filename += "_" + item.Name;
+ }
+ else
+ {
+ filename += "_" + item.Id.ToString("N");
+ }
+
+ filename = filename.GetMD5() + ".jpg";
}
else
{
- filename += "_" + item.Id.ToString("N");
+ // If it's an audio book or audio podcast, allow unique image per item
+ filename = item.Id.ToString("N") + ".jpg";
}
- filename = filename.GetMD5() + ".jpg";
-
var prefix = filename.Substring(0, 1);
return Path.Combine(AudioImagesPath, prefix, filename);
diff --git a/MediaBrowser.Providers/MediaInfo/FFProbeProvider.cs b/MediaBrowser.Providers/MediaInfo/FFProbeProvider.cs
index bce4219019..e79aec33c1 100644
--- a/MediaBrowser.Providers/MediaInfo/FFProbeProvider.cs
+++ b/MediaBrowser.Providers/MediaInfo/FFProbeProvider.cs
@@ -163,7 +163,11 @@ namespace MediaBrowser.Providers.MediaInfo
private void FetchShortcutInfo(Video video)
{
- video.ShortcutPath = _fileSystem.ReadAllText(video.Path);
+ video.ShortcutPath = _fileSystem.ReadAllText(video.Path)
+ .Replace("\t", string.Empty)
+ .Replace("\r", string.Empty)
+ .Replace("\n", string.Empty)
+ .Trim();
}
public Task<ItemUpdateType> FetchAudioInfo<T>(T item, CancellationToken cancellationToken)