diff options
Diffstat (limited to 'MediaBrowser.Providers/MediaInfo/FFProbeAudioInfoProvider.cs')
| -rw-r--r-- | MediaBrowser.Providers/MediaInfo/FFProbeAudioInfoProvider.cs | 35 |
1 files changed, 22 insertions, 13 deletions
diff --git a/MediaBrowser.Providers/MediaInfo/FFProbeAudioInfoProvider.cs b/MediaBrowser.Providers/MediaInfo/FFProbeAudioInfoProvider.cs index 8a91525079..8b59291a30 100644 --- a/MediaBrowser.Providers/MediaInfo/FFProbeAudioInfoProvider.cs +++ b/MediaBrowser.Providers/MediaInfo/FFProbeAudioInfoProvider.cs @@ -107,17 +107,20 @@ namespace MediaBrowser.Providers.MediaInfo audio.Name = title; } - var composer = GetDictionaryValue(tags, "composer"); - - if (!string.IsNullOrWhiteSpace(composer)) + if (!audio.LockedFields.Contains(MetadataFields.Cast)) { - foreach (var person in Split(composer)) - { - var name = person.Trim(); + var composer = GetDictionaryValue(tags, "composer"); - if (!string.IsNullOrEmpty(name)) + if (!string.IsNullOrWhiteSpace(composer)) + { + foreach (var person in Split(composer)) { - audio.AddPerson(new PersonInfo { Name = name, Type = PersonType.Composer }); + var name = person.Trim(); + + if (!string.IsNullOrEmpty(name)) + { + audio.AddPerson(new PersonInfo { Name = name, Type = PersonType.Composer }); + } } } } @@ -148,12 +151,18 @@ namespace MediaBrowser.Providers.MediaInfo audio.ProductionYear = audio.PremiereDate.Value.ToLocalTime().Year; } - FetchGenres(audio, tags); + if (!audio.LockedFields.Contains(MetadataFields.Genres)) + { + FetchGenres(audio, tags); + } - // There's several values in tags may or may not be present - FetchStudios(audio, tags, "organization"); - FetchStudios(audio, tags, "ensemble"); - FetchStudios(audio, tags, "publisher"); + if (!audio.LockedFields.Contains(MetadataFields.Studios)) + { + // There's several values in tags may or may not be present + FetchStudios(audio, tags, "organization"); + FetchStudios(audio, tags, "ensemble"); + FetchStudios(audio, tags, "publisher"); + } } /// <summary> |
