1

我正在尝试使用 Taglib# 将 id3v2 标签添加到文件中。我让它在一些文件上工作 - 但是,在某些文件上它会失败。(可能是由于文件损坏)。

if (ext == ".aiff" || ext==".aif"){
     //force reading of aiff files
    file = TagLib.File.Create(filename, "audio/aiff",TagLib.ReadStyle.None);
}

Create() 调用抛出此异常:提供的数据不以文件标识符开头

根据文档,我不确定如何解决此问题(或添加文件标识符)。

4

2 回答 2

1

不确定有没有办法做到这一点。解决方案是通过 FFMPEG 运行文件并创建新的 AIFF,以便它们生成正确的 AIFF 文件。然后 TagLib# 正常工作。

于 2014-02-25T19:32:40.593 回答
0

根据我自己的实验,TagLib Sharp 也会在Create()方法“if”对应的文件根本没有 ID3 标记时抛出异常。我刚刚测试了一些文件,使用 TagLib Sharp 删除了标签,然后Create()在同一个文件上尝试了该方法;发生了同样的异常。

于 2021-11-24T14:41:09.640 回答