2012-04-20 26 views
6

Sto facendo il mio tagger mp3, e tutto è bene finora. Anche se sono bloccato a leggere il tag art album.C# ID tag mp3 con taglib - album art

Mi piacerebbe sapere come visualizzare la copertina in una casella di immagine C# .NET, ma tutto ciò che si vede su quel particolare tag mi confonde.

so di poter ottenere i tag dai file come questo

txtAlbum.Text = currentFile.Tag.Album; 

ma tutto quello che devo fare è prendere l'immagine dal file e colpite in un picturebox. Quindi mi piacerebbe sapere come scrivere un'immagine (jpg, png) nel file e sovrascrivere quella esistente.

Qualsiasi aiuto sarebbe molto apprezzato, e grazie per il vostro prezioso tempo.

risposta

10

Prova questa

TagLib.File tagFile = TagLib.File.Create(path); 
IPicture newArt = new Picture(tmpImg); 
tagFile.Tag.Pictures = new IPicture[1] {newArt}; 
tagFile.Save(); 

EDIT

var file = TagLib.File.Create(filename); 
     if (file.Tag.Pictures.Length >= 1) 
     { 
      var bin = (byte[])(file.Tag.Pictures[0].Data.Data); 
      PreviewPictureBox.Image = Image.FromStream(new MemoryStream(bin)).GetThumbnailImage(100, 100, null, IntPtr.Zero); 
     } 
+1

Nice one vi ringrazio per questo. Qualche idea su come leggere l'arte dell'album? – Purplebob

+0

Guarda la parte modificata – Likurg

+0

@Purplebob se ti aiuta ad accettare pls – Likurg

3

ecco la mia soluzione rapida e breve per quel problema:

var file = TagLib.File.Create(filename); 
var bin = (byte[])(file.Tag.Pictures[0].Data.Data); 
imageBox.Image = Image.FromStream(new MemoryStream(bin)); 
Problemi correlati