专辑插图未编码
Album artwork not encoding
正在尝试创建供个人使用的 mp3 嵌入器。在 StackO 上尝试了所有解决方案,但 none 有效。
这是我的资料:
TagLib.File tagFile = TagLib.File.Create("C:\Users\Dom\Desktop\song.mp3");
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("C:\Users\Dom\Pictures\picture.png");
tagFile.Tag.Pictures = new TagLib.IPicture[1] { pic };
tagFile.Tag.Album = "Album 1";
tagFile.Tag.Year = 1990;
tagFile.Save();
专辑标签和年份标签在属性下显示正常,程序没有崩溃或抛出任何错误。图片未显示为文件图标,或未显示在 windows 媒体播放器中。图片尺寸为 300x300 像素(如果有任何重要性)。
原因可能是与现有的 ID3v2 标签有些冲突。像这样修复它:
TagLib.File tagFile = TagLib.File.Create("C:\Users\Dom\Desktop\song.mp3");
Tag t = tagFile.GetTag(TagTypes.Id3v2);
tagFile.RemoveTags(TagTypes.Id3v2);
Tag tags = tagFile.GetTag(TagTypes.Id3v2);
tagFile.GetTag(TagTypes.Id3v2, true);
tagFile.Save();
tagFile = TagLib.File.Create("C:\Users\Dom\Desktop\song.mp3");
tags = t;
tagFile.GetTag(TagTypes.Id3v2).Pictures = new IPicture[] {
new Picture("C:\Users\Dom\Pictures\picture.png")
{ MimeType = "image/png", Type = PictureType.FrontCover }
};
tagFile.Tag.Album = "Album 1";
tagFile.GetTag(TagTypes.Id3v2).Track = 0;
tagFile.Tag.Year = 1990;
tagFile.Save();
正在尝试创建供个人使用的 mp3 嵌入器。在 StackO 上尝试了所有解决方案,但 none 有效。
这是我的资料:
TagLib.File tagFile = TagLib.File.Create("C:\Users\Dom\Desktop\song.mp3");
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("C:\Users\Dom\Pictures\picture.png");
tagFile.Tag.Pictures = new TagLib.IPicture[1] { pic };
tagFile.Tag.Album = "Album 1";
tagFile.Tag.Year = 1990;
tagFile.Save();
专辑标签和年份标签在属性下显示正常,程序没有崩溃或抛出任何错误。图片未显示为文件图标,或未显示在 windows 媒体播放器中。图片尺寸为 300x300 像素(如果有任何重要性)。
原因可能是与现有的 ID3v2 标签有些冲突。像这样修复它:
TagLib.File tagFile = TagLib.File.Create("C:\Users\Dom\Desktop\song.mp3");
Tag t = tagFile.GetTag(TagTypes.Id3v2);
tagFile.RemoveTags(TagTypes.Id3v2);
Tag tags = tagFile.GetTag(TagTypes.Id3v2);
tagFile.GetTag(TagTypes.Id3v2, true);
tagFile.Save();
tagFile = TagLib.File.Create("C:\Users\Dom\Desktop\song.mp3");
tags = t;
tagFile.GetTag(TagTypes.Id3v2).Pictures = new IPicture[] {
new Picture("C:\Users\Dom\Pictures\picture.png")
{ MimeType = "image/png", Type = PictureType.FrontCover }
};
tagFile.Tag.Album = "Album 1";
tagFile.GetTag(TagTypes.Id3v2).Track = 0;
tagFile.Tag.Year = 1990;
tagFile.Save();