首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用taglib-sharp在iTunes中设置“编译”标记?

如何使用taglib-sharp在iTunes中设置“编译”标记?
EN

Stack Overflow用户
提问于 2016-06-27 14:40:30
回答 2查看 565关注 0票数 0

是否可以使用taglib-在iTunes中设置iTunes编译标记?

不幸的是,似乎没有任何类似的情况:

代码语言:javascript
复制
TagLib.File tagFile = TagLib.File.Create(file);  //.m4a file
tagFile.Tag.IsComilation = true;
tagFile.Save();

如果没有本机支持,是否可以添加自定义标记?可能通过使用TagLib.Mpeg4.AppleTagTagLib.Mpeg4.AppleAdditionalInfoBox

这里回答了很多关于如何使用Id3v2标记来完成这一任务的问题,但是对于iTunes标记则不是这样。我也找不到任何有用的文件。

任何帮助都非常感谢!

EN

回答 2

Stack Overflow用户

发布于 2016-07-27 16:15:28

基于正式规格 of ID3,您似乎在搜索TCMP (iTunes Compilation Flag) Text Frame。将其设置为适当的值,iTunes将很明显地完成其余的操作。TCMP Text Frame接受一个布尔值。

这是一个简单的文本框架,iTunes使用它来指示文件是否是编译的一部分。 1如果汇编0的一部分或不存在(如果不是编译的一部分)

所以你可以这样设置它:

代码语言:javascript
复制
TagLib.File tagFile = TagLib.File.Create(file);
Id3v2.Tag tag = (Id3v2.Tag)tagFile.GetTag(TagTypes.Id3v2, true);
tag.SetTextFrame(FrameType.TCMP, "1"); // Change value accordingly...
tagFile.Save();
票数 0
EN

Stack Overflow用户

发布于 2022-09-12 19:09:40

为了使Farhan的答案在TagLibSharp v2.3.0中有效,我必须实现如下所示:

代码语言:javascript
复制
var mp3File = TagLib.File.Create(destTrackFile);                        
TagLib.Id3v2.Tag tag = (TagLib.Id3v2.Tag)mp3File.GetTag(TagLib.TagTypes.Id3v2, true);
TagLib.ReadOnlyByteVector TCMP = "TCMP";
tag.SetTextFrame(TCMP, "1");
mp3File.Save();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38056835

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档