示例#1
0
 public void ImportPaths(params string[] paths)
 {
     if (paths.Any(p => checkExtension(Path.GetExtension(p))))
     {
         return;
     }
     foreach (string p in paths)
     {
         AudioMetadata meta = new AudioMetadata();
         using (var mp3 = new Mp3(p))
         {
             Id3Tag tag = mp3.GetTag(Id3TagFamily.Version2X);
             if (tag.CustomTexts.Count > 0 && tag.CustomTexts.Any(t => t.Value.StartsWith("DISPLAY ARTIST\0")))
             {
                 meta.Artist = meta.ArtistUnicode = tag.CustomTexts.First(t => t.Value.StartsWith("DISPLAY ARTIST\0")).Value.Split("DISPLAY ARTIST\0")[1];
             }
             else if (tag.Artists.Value.Count > 0)
             {
                 meta.Artist = meta.ArtistUnicode = tag.Artists.Value[0];
             }
             else
             {
                 meta.Artist = meta.ArtistUnicode = "Unkown Artist";
             }
             meta.Title = meta.TitleUnicode = tag.Title.Value ?? "Unkown Title";
         }
         playlist.AddSong(meta, p);
     }
 }