aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
diff options
context:
space:
mode:
authorLuke <luke.pulverenti@gmail.com>2015-07-16 09:00:03 -0400
committerLuke <luke.pulverenti@gmail.com>2015-07-16 09:00:03 -0400
commit087b9c6fd2bfbbd10a4fcbfe335550beb9085a04 (patch)
treec474f1d70d4cdbc513034dc3832e4d266719ddea /MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
parent2022c5631fe18996b23330a58133cb18d1e9600e (diff)
parentc6a64efab781269f9dc512282f27f2a2d3fdb1f2 (diff)
Merge pull request #1140 from MediaBrowser/dev
3.0.5675.1
Diffstat (limited to 'MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs')
-rw-r--r--MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs21
1 files changed, 10 insertions, 11 deletions
diff --git a/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs b/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
index 33b703611..481ba0dda 100644
--- a/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
+++ b/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
@@ -439,7 +439,7 @@ namespace MediaBrowser.MediaEncoding.Probing
if (!string.IsNullOrWhiteSpace(artists))
{
- audio.Artists = artists.Split(new[] { '/' }, StringSplitOptions.RemoveEmptyEntries)
+ audio.Artists = SplitArtists(artists, new[] { '/' }, false)
.Distinct(StringComparer.OrdinalIgnoreCase)
.ToList();
}
@@ -452,7 +452,7 @@ namespace MediaBrowser.MediaEncoding.Probing
}
else
{
- audio.Artists = SplitArtists(artist)
+ audio.Artists = SplitArtists(artist, _nameDelimiters, true)
.Distinct(StringComparer.OrdinalIgnoreCase)
.ToList();
}
@@ -474,7 +474,7 @@ namespace MediaBrowser.MediaEncoding.Probing
}
else
{
- audio.AlbumArtists = SplitArtists(albumArtist)
+ audio.AlbumArtists = SplitArtists(albumArtist, _nameDelimiters, true)
.Distinct(StringComparer.OrdinalIgnoreCase)
.ToList();
@@ -552,10 +552,13 @@ namespace MediaBrowser.MediaEncoding.Probing
private const string ArtistReplaceValue = " | ";
- private IEnumerable<string> SplitArtists(string val)
+ private IEnumerable<string> SplitArtists(string val, char[] delimiters, bool splitFeaturing)
{
- val = val.Replace(" featuring ", ArtistReplaceValue, StringComparison.OrdinalIgnoreCase)
- .Replace(" feat. ", ArtistReplaceValue, StringComparison.OrdinalIgnoreCase);
+ if (splitFeaturing)
+ {
+ val = val.Replace(" featuring ", ArtistReplaceValue, StringComparison.OrdinalIgnoreCase)
+ .Replace(" feat. ", ArtistReplaceValue, StringComparison.OrdinalIgnoreCase);
+ }
var artistsFound = new List<string>();
@@ -570,11 +573,7 @@ namespace MediaBrowser.MediaEncoding.Probing
}
}
- // Only use the comma as a delimeter if there are no slashes or pipes.
- // We want to be careful not to split names that have commas in them
- var delimeter = _nameDelimiters;
-
- var artists = val.Split(delimeter, StringSplitOptions.RemoveEmptyEntries)
+ var artists = val.Split(delimiters, StringSplitOptions.RemoveEmptyEntries)
.Where(i => !string.IsNullOrWhiteSpace(i))
.Select(i => i.Trim());