【问题标题】:Reading/Writing metadata of audio/video files读/写音频/视频文件的元数据
【发布时间】:2013-08-17 12:00:41
【问题描述】:

我需要一些帮助来读取/写入音频/视频文件的元数据信息。我搜索了很多,但没有找到任何有用的东西。 Taglib sharp 是一个开源库,可提供读取/写入元数据的帮助。使用标签库我可以编辑一些值,但不是全部都喜欢。

TagLib.File videoFile = TagLib.File.Create("test.mp4");
videoFile.Tag.Title = "Test";
videoFile.Tag.Comment = "Nothing";

但我无法编辑以下属性,如作者 url、生产者等。我如何编辑这些属性??

【问题讨论】:

标签: c# taglib-sharp


【解决方案1】:

您需要使用 AppleTag。这将起作用。对于 mp4 文件,您必须将值写入 dashbox。像这样:

TagLib.File videoFile = TagLib.File.Create("test.mp4");
TagLib.Mpeg4.AppleTag customTag = (TagLib.Mpeg4.AppleTag)f.GetTag(TagLib.TagTypes.Apple);
customTag.SetDashBox("Producer","Producer1", "value");
f.Save();
f.Dispose();

你可以得到这样的值:

var tokenValue = customTag.GetDashBox("Producer", "Producer1");

【讨论】:

  • 它适用于 mp4 文件。你拯救了我的一天,谢谢
【解决方案2】:

我以前从未对视频文件这样做过,但我对 mp3 文件做过。您可以像这样访问这些框架:

TagLib.File file = TagLib.File.Create(mp3FileName);
file.Tag.Title = "some title"; // you've got this
TagLib.Id3v2.Tag tag = (TagLib.Id3v2.Tag)file.GetTag(TagTypes.Id3v2);
tag.SetTextFrame("WOAR", "some url"); // WOAR = Official artist/performer webpage
file.Save();

您可以在 Wikipedia 上找到文本框架标识符的列表: ID3v2 Frame Specification (Version 2.3)

我不知道视频文件是否提供与 ID3 相同的帧范围,但请注意 Wikipedia 也说 (Implementation in non-mp3s and alternatives)

MP4 还允许嵌入 ID3 标签,这已得到广泛支持。

所以我猜这也适用于你正在尝试的 mp4 文件。

【讨论】:

  • 谢谢,如果有任何问题,我会检查并回复您。
  • 使用mp4文件,id3v2标签总是返回null。
  • 另一个 TagType 怎么样,比如 TagType.Id3v1?
  • Id3v1 不包含 SetTextFrame 功能。
  • mp4 文件包含 tagType Apple no Id3v2 和 Id3v1
猜你喜欢
  • 2021-01-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-20
  • 1970-01-01
  • 1970-01-01
  • 2017-12-31
  • 1970-01-01
相关资源
最近更新 更多