Reputation: 607
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
Reputation: 10110
This worked for me:
TagLib.File file = TagLib.File.Create (fname);
file.Tag.Performers = new String[1] { artist };
file.Save();
Upvotes: 0
Reputation: 11
TagLib.File f = TagLib.File.Create(yourFile);
f.Tag.AlbumArtists = new string[] { "Artist 1", "Artist 2", ... };
Upvotes: 1
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