From d4ef96f97b335159cbff44fff361b4ef883d81b7 Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Sat, 30 Apr 2011 16:25:35 -0700 Subject: [PATCH] Moved filename only piece to Parser. Added .mp4 to media file extensions. .mp4 will be treated as TV quality. --- NzbDrone.Core/Parser.cs | 12 +++--------- NzbDrone.Core/Providers/MediaFileProvider.cs | 5 ++--- 2 files changed, 5 insertions(+), 12 deletions(-) diff --git a/NzbDrone.Core/Parser.cs b/NzbDrone.Core/Parser.cs index 8ae8cb5b3..a9a57c77c 100644 --- a/NzbDrone.Core/Parser.cs +++ b/NzbDrone.Core/Parser.cs @@ -26,14 +26,6 @@ namespace NzbDrone.Core RegexOptions.IgnoreCase | RegexOptions.Compiled) //Supports Season only releases }; - private static readonly Regex[] SeasonReportTitleRegex = new[] - { - new Regex( - @"(?.+?)?\W?(?<year>\d{4}?)?\W(?:S|Season)?\W?(?<season>\d+)(?!\\)", - RegexOptions.IgnoreCase | - RegexOptions.Compiled), - }; - private static readonly Regex NormalizeRegex = new Regex(@"((^|\W)(a|an|the|and|or|of)($|\W))|\W|\b(?!(?:19\d{2}|20\d{2}))\d+\b", RegexOptions.IgnoreCase | RegexOptions.Compiled); @@ -50,7 +42,8 @@ namespace NzbDrone.Core { var simpleTitle = Regex.Replace(title, @"480[i|p]|720[i|p]|1080[i|p]|[x|h]264", String.Empty, RegexOptions.IgnoreCase | RegexOptions.Compiled); - var match = regex.Matches(simpleTitle); + //Use only the filename, not the entire path + var match = regex.Matches(new FileInfo(simpleTitle).Name); if (match.Count != 0) { @@ -250,6 +243,7 @@ namespace NzbDrone.Core case ".avi": case ".xvid": case ".wmv": + case ".mp4": { result = QualityTypes.TV; break; diff --git a/NzbDrone.Core/Providers/MediaFileProvider.cs b/NzbDrone.Core/Providers/MediaFileProvider.cs index 7948facf5..4ddb5de1a 100644 --- a/NzbDrone.Core/Providers/MediaFileProvider.cs +++ b/NzbDrone.Core/Providers/MediaFileProvider.cs @@ -12,7 +12,7 @@ namespace NzbDrone.Core.Providers public class MediaFileProvider { private static readonly Logger Logger = LogManager.GetCurrentClassLogger(); - private static readonly string[] MediaExtentions = new[] { "*.mkv", "*.avi", "*.wmv" }; + private static readonly string[] MediaExtentions = new[] { "*.mkv", "*.avi", "*.wmv", "*.mp4" }; private readonly DiskProvider _diskProvider; private readonly EpisodeProvider _episodeProvider; private readonly IRepository _repository; @@ -82,8 +82,7 @@ namespace NzbDrone.Core.Providers if (!_repository.Exists<EpisodeFile>(e => e.Path == Parser.NormalizePath(filePath))) { - //Use only the filename, not the entire path - var parseResult = Parser.ParseEpisodeInfo(new FileInfo(filePath).Name); + var parseResult = Parser.ParseEpisodeInfo(filePath); if (parseResult == null) return null;