如果存在,则 ID3 块始终是 AIFF 文件中的最后一个块

If it exists is the ID3 chunk always the last chunk in an AIFF file

我正在尝试编写一些代码来从 AIFF 文件中读取和写入 ID3 块。

我知道这个块是可选的,但如果它存在,它总是最后一个块还是可以在任何地方。如果它始终是最后一个块,这使得对文件的更改更容易。

不,我不认为它是,它可以是第一个块之一,规范中没有任何内容可以阻止它。

我不确定 AIFF,但在 wav 文件中,ID3 子块可以在数据块之前或之后的任何位置。找到它的方法是查看第一个 subchunkID 如果它不是 ID3 chunk 然后检查接下来的 4 个字节,这将是 subchunk 的大小,然后你可以跳到下一个 subchunk 的头部,根据之前的尺寸并检查该 ID。

同样,到目前为止我只使用过 .wav 文件,但计划很快查看 AIFF。