Ali Yeşilkanat
Ali Yeşilkanat

Reputation: 607

TagLib sharp not editing artist

I'm trying to save new artist and title id3 tags into tracks. Loading tags from tracks working good, also editing title for track is working fine. But when i try to edit performer (artist) it didn't change anything. Here is the code

public void renameID3(string artist,string title)
{ 
   using (TagLib.File f = TagLib.File.Create(FInfo.FullName))
        {
            f.Tag.Artists[0] = artist; //Both of them are not ...
            f.Tag.Performers[0] = artist; //working


            f.Tag.Title = title; //This works fine
            f.Save();
        }
  }

Plus I looked the definiton of FirstPerformer and FirstPerformer members of TagLib class but they don't have any set method. Anyone know how to solve this?

Upvotes: 5

Views: 6628

Answers (3)

razz
razz

Reputation: 10110

This worked for me:

TagLib.File file = TagLib.File.Create (fname);
file.Tag.Performers = new String[1] { artist };
file.Save();

Upvotes: 0

Sledge
Sledge

Reputation: 11

TagLib.File f = TagLib.File.Create(yourFile);
f.Tag.AlbumArtists = new string[] { "Artist 1", "Artist 2", ... };

Upvotes: 1

Ilya Olkhovskiy
Ilya Olkhovskiy

Reputation: 106

Stuck with the very same problem. Found that clearing Performers first makes it work as intended:

using(TagLib.File tlFile = TagLib.File.Create(newFileName)){
    //tlFile.Tag.Performers = new []{translateDict[author]}; //doesn't work
    tlFile.Tag.Performers = null; //clearing out performers
    tlFile.Tag.Performers = new []{translateDict[author]}; //works now
    tlFile.Save();
}

Upvotes: 9

Related Questions