使用Tag Lib C在Mp3中嵌入专辑封面#

时间:2012-12-02 07:41:58

标签: c# ios6 taglib id3-tag taglib-sharp

尝试使用c#tag lib

添加专辑封面
  TagLib.File trackFile = TagLib.File.Create(strLocalFile);
  Picture picture = new Picture("Picture path");
  picture.Type = PictureType.FrontCover;
  picture.MimeType = "image/jpeg";
  picture.Description = "Front Cover";        
  trackFile.Tag.Pictures = new IPicture[1] { picture };
  trackFile.Save();

我在Windows媒体播放器,itunes和iphone中获取图片(仅限肖像模式)。当我切换到横向模式时,会显示专辑封面,但是当封面流动专辑封面上的幻灯片消失时。

我在代码中遗漏了什么吗?

我在iPhone 4s上使用iTunes 11,iOS 6

1 个答案:

答案 0 :(得分:5)

让我引用自己:

我发现iTunes讨厌UTF-16,那就是问题所在。

targetMp3File = TagLib.File.Create(...);

// define picture
TagLib.Id3v2.AttachedPictureFrame pic = new TagLib.Id3v2.AttachedPictureFrame();
pic.TextEncoding = TagLib.StringType.Latin1;
pic.MimeType     = System.Net.Mime.MediaTypeNames.Image.Jpeg;
pic.Type         = TagLib.PictureType.FrontCover;
pic.Data         = TagLib.ByteVector.FromPath(...);

// save picture to file
targetMp3File.Tag.Pictures = new TagLib.IPicture[1] { pic };    
targetMp3File.Save();

所以基本上整个事情都在pic.TextEncoding行。另外,我通过.NET常量指定了Mime类型。

来源: Having trouble writing ArtWork with Taglib-sharp 2.0.4.0 in .Net

这适用于iTunes和iPod / iPad / iPhone。但这只适用于MP3文件...