TagLib sharp not editing artist

自古美人都是妖i 提交于 2021-01-27 05:46:23

问题


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?


回答1:


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();
}



回答2:


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



回答3:


This worked for me:

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


来源:https://stackoverflow.com/questions/17292142/taglib-sharp-not-editing-artist

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!