21.6. 块—读取 IFF 块数据

该模块提供了一个接口,用于读取使用 EA IFF 85 块的文件。 [1]该格式至少用于音频交换文件格式(AIFF/AIFF-C)和实际媒体文件格式(RMFF)。 WAVE 音频文件格式密切相关,也可以使用此模块读取。

块具有以下结构:

Offset Length Contents
0 4 Chunk ID
4 4 大端字节 Sequences 的块大小,不包括标题
8 n 数据字节,其中* n *是前一字段中给出的大小
8 * n * 0 或 1 如果* n *为奇数且使用块对齐,则需要填充字节

ID 是一个 4 字节的字符串,用于标识块的类型。

size 字段(32 位值,使用大端字节 Sequences 编码)给出了块数据的大小,不包括 8 字节的 Headers。

通常,IFF 类型的文件包含一个或多个块。此处定义的Chunk类的建议用法是在每个块的开头实例化一个实例,并从该实例读取直到其到达末尾,然后可以实例化新实例。在文件末尾,创建新实例将失败,并带有EOFError异常。

Chunk对象支持以下方法:

如果在调用close()方法之后调用,其余方法将引发IOError

Footnotes

首页