diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-12-15 11:53:32 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-12-15 11:53:32 -0500 |
| commit | d8ce4141ff09d39f03fdf0bbc47fec953f3902e4 (patch) | |
| tree | bfa9b87131318b67c88acc9f8f39d832f2fe52b2 /MediaBrowser.Providers | |
| parent | 17c4a8461f308655dbd6a625a81565f2604787b9 (diff) | |
change chapter image location and cleanup dead files
Diffstat (limited to 'MediaBrowser.Providers')
| -rw-r--r-- | MediaBrowser.Providers/MediaInfo/AudioImageProvider.cs | 53 | ||||
| -rw-r--r-- | MediaBrowser.Providers/MediaInfo/VideoImageProvider.cs | 44 |
2 files changed, 65 insertions, 32 deletions
diff --git a/MediaBrowser.Providers/MediaInfo/AudioImageProvider.cs b/MediaBrowser.Providers/MediaInfo/AudioImageProvider.cs index 264b24b87..5782e3e63 100644 --- a/MediaBrowser.Providers/MediaInfo/AudioImageProvider.cs +++ b/MediaBrowser.Providers/MediaInfo/AudioImageProvider.cs @@ -1,6 +1,5 @@ -using MediaBrowser.Common.IO; +using MediaBrowser.Common.Extensions; using MediaBrowser.Common.MediaInfo; -using MediaBrowser.Controller; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; @@ -23,12 +22,6 @@ namespace MediaBrowser.Providers.MediaInfo public class AudioImageProvider : BaseMetadataProvider { /// <summary> - /// Gets or sets the image cache. - /// </summary> - /// <value>The image cache.</value> - public FileSystemRepository ImageCache { get; set; } - - /// <summary> /// The _locks /// </summary> private readonly ConcurrentDictionary<string, SemaphoreSlim> _locks = new ConcurrentDictionary<string, SemaphoreSlim>(); @@ -48,8 +41,6 @@ namespace MediaBrowser.Providers.MediaInfo : base(logManager, configurationManager) { _mediaEncoder = mediaEncoder; - - ImageCache = new FileSystemRepository(Kernel.Instance.FFMpegManager.AudioImagesDataPath); } /// <summary> @@ -113,7 +104,7 @@ namespace MediaBrowser.Providers.MediaInfo return ItemUpdateType.ImageUpdate; } } - + /// <summary> /// Fetches metadata and returns true or false indicating if any work that requires persistence was done /// </summary> @@ -154,13 +145,7 @@ namespace MediaBrowser.Providers.MediaInfo { cancellationToken.ThrowIfCancellationRequested(); - var album = item.Parent as MusicAlbum; - - var filename = item.Album ?? string.Empty; - filename += item.Artists.FirstOrDefault() ?? string.Empty; - filename += album == null ? item.Id.ToString("N") + item.DateModified.Ticks : album.Id.ToString("N") + album.DateModified.Ticks; - - var path = ImageCache.GetResourcePath(filename + "_primary", ".jpg"); + var path = GetAudioImagePath(item); if (!File.Exists(path)) { @@ -196,6 +181,38 @@ namespace MediaBrowser.Providers.MediaInfo } /// <summary> + /// Gets the audio image path. + /// </summary> + /// <param name="item">The item.</param> + /// <returns>System.String.</returns> + private string GetAudioImagePath(Audio item) + { + var album = item.Parent as MusicAlbum; + + var filename = item.Album ?? string.Empty; + filename += item.Artists.FirstOrDefault() ?? string.Empty; + filename += album == null ? item.Id.ToString("N") + item.DateModified.Ticks : album.Id.ToString("N") + album.DateModified.Ticks + "_primary"; + + filename = filename.GetMD5() + ".jpg"; + + var prefix = filename.Substring(0, 1); + + return Path.Combine(AudioImagesPath, prefix, filename); + } + + /// <summary> + /// Gets the audio images data path. + /// </summary> + /// <value>The audio images data path.</value> + public string AudioImagesPath + { + get + { + return Path.Combine(ConfigurationManager.ApplicationPaths.DataPath, "extracted-audio-images"); + } + } + + /// <summary> /// Gets the lock. /// </summary> /// <param name="filename">The filename.</param> diff --git a/MediaBrowser.Providers/MediaInfo/VideoImageProvider.cs b/MediaBrowser.Providers/MediaInfo/VideoImageProvider.cs index 2864983ce..b35d5e07e 100644 --- a/MediaBrowser.Providers/MediaInfo/VideoImageProvider.cs +++ b/MediaBrowser.Providers/MediaInfo/VideoImageProvider.cs @@ -1,6 +1,5 @@ -using MediaBrowser.Common.IO; +using MediaBrowser.Common.Extensions; using MediaBrowser.Common.MediaInfo; -using MediaBrowser.Controller; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; @@ -12,7 +11,6 @@ using MediaBrowser.Model.Logging; using System; using System.Collections.Concurrent; using System.IO; -using System.Linq; using System.Threading; using System.Threading.Tasks; @@ -21,12 +19,6 @@ namespace MediaBrowser.Providers.MediaInfo class VideoImageProvider : BaseMetadataProvider { /// <summary> - /// Gets or sets the image cache. - /// </summary> - /// <value>The image cache.</value> - public FileSystemRepository ImageCache { get; set; } - - /// <summary> /// The _locks /// </summary> private readonly ConcurrentDictionary<string, SemaphoreSlim> _locks = new ConcurrentDictionary<string, SemaphoreSlim>(); @@ -42,8 +34,6 @@ namespace MediaBrowser.Providers.MediaInfo { _mediaEncoder = mediaEncoder; _isoManager = isoManager; - - ImageCache = new FileSystemRepository(Kernel.Instance.FFMpegManager.VideoImagesDataPath); } /// <summary> @@ -206,9 +196,7 @@ namespace MediaBrowser.Providers.MediaInfo { cancellationToken.ThrowIfCancellationRequested(); - var filename = item.Path + "_" + item.DateModified.Ticks + "_primary"; - - var path = ImageCache.GetResourcePath(filename, ".jpg"); + var path = GetVideoImagePath(item); if (!File.Exists(path)) { @@ -310,5 +298,33 @@ namespace MediaBrowser.Providers.MediaInfo { return _locks.GetOrAdd(filename, key => new SemaphoreSlim(1, 1)); } + + /// <summary> + /// Gets the video images data path. + /// </summary> + /// <value>The video images data path.</value> + public string VideoImagesPath + { + get + { + return Path.Combine(ConfigurationManager.ApplicationPaths.DataPath, "extracted-video-images"); + } + } + + /// <summary> + /// Gets the audio image path. + /// </summary> + /// <param name="item">The item.</param> + /// <returns>System.String.</returns> + private string GetVideoImagePath(Video item) + { + var filename = item.Path + "_" + item.DateModified.Ticks + "_primary"; + + filename = filename.GetMD5() + ".jpg"; + + var prefix = filename.Substring(0, 1); + + return Path.Combine(VideoImagesPath, prefix, filename); + } } } |
