TagLib锐利不编辑艺术家

Ali*_*nat 5 c# mp3 id3 taglib taglib-sharp

我正在尝试将新的艺术家和标题id3标签保存到曲目中.从轨道加载标签工作良好,也编辑轨道标题工作正常.但是当我尝试编辑表演者 (艺术家)时,它并没有改变任何东西.这是代码

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();
        }
  }
Run Code Online (Sandbox Code Playgroud)

另外,我查看了TagLib类的FirstPerformerFirstPerformer成员的定义,但他们没有任何set方法.有谁知道如何解决这个问题?

小智 9

坚持同样的问题.发现清算Performers首先使其按预期工作:

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();
}
Run Code Online (Sandbox Code Playgroud)