private AudioMetaData ParseFromFilename(AudioMetaData metaData, FileInfo fileInfo) { if (this.DoParseFromFileName) { var filename = fileInfo.Name.Replace(fileInfo.Extension, ""); var mdFromFilename = this.FileNameHelper.MetaDataFromFilename(filename); if (mdFromFilename.ValidWeight < 32) { var mdFromFileInfo = FileNameHelper.MetaDataFromFileInfo(fileInfo); if (mdFromFileInfo.ValidWeight > mdFromFilename.ValidWeight) { mdFromFilename = mdFromFileInfo; } } if ((mdFromFilename.Year ?? 0) < 1) { mdFromFilename.Year = SafeParser.ToYear(fileInfo.Directory.Name.Substring(0, 4)); } return(MergeAudioData(this.Configuration, metaData, mdFromFilename)); } return(metaData); }