|
|
@ -107,6 +107,8 @@ namespace MediaBrowser.Providers.MediaInfo
|
|
|
|
audio.Name = title;
|
|
|
|
audio.Name = title;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (!audio.LockedFields.Contains(MetadataFields.Cast))
|
|
|
|
|
|
|
|
{
|
|
|
|
var composer = GetDictionaryValue(tags, "composer");
|
|
|
|
var composer = GetDictionaryValue(tags, "composer");
|
|
|
|
|
|
|
|
|
|
|
|
if (!string.IsNullOrWhiteSpace(composer))
|
|
|
|
if (!string.IsNullOrWhiteSpace(composer))
|
|
|
@ -121,6 +123,7 @@ namespace MediaBrowser.Providers.MediaInfo
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
audio.Album = GetDictionaryValue(tags, "album");
|
|
|
|
audio.Album = GetDictionaryValue(tags, "album");
|
|
|
|
|
|
|
|
|
|
|
@ -148,13 +151,19 @@ namespace MediaBrowser.Providers.MediaInfo
|
|
|
|
audio.ProductionYear = audio.PremiereDate.Value.ToLocalTime().Year;
|
|
|
|
audio.ProductionYear = audio.PremiereDate.Value.ToLocalTime().Year;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (!audio.LockedFields.Contains(MetadataFields.Genres))
|
|
|
|
|
|
|
|
{
|
|
|
|
FetchGenres(audio, tags);
|
|
|
|
FetchGenres(audio, tags);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (!audio.LockedFields.Contains(MetadataFields.Studios))
|
|
|
|
|
|
|
|
{
|
|
|
|
// There's several values in tags may or may not be present
|
|
|
|
// There's several values in tags may or may not be present
|
|
|
|
FetchStudios(audio, tags, "organization");
|
|
|
|
FetchStudios(audio, tags, "organization");
|
|
|
|
FetchStudios(audio, tags, "ensemble");
|
|
|
|
FetchStudios(audio, tags, "ensemble");
|
|
|
|
FetchStudios(audio, tags, "publisher");
|
|
|
|
FetchStudios(audio, tags, "publisher");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// <summary>
|
|
|
|
/// Splits the specified val.
|
|
|
|
/// Splits the specified val.
|
|
|
|