Skip to main content

3.1.2. 可跳过帧 (Skippable Frames)

+==============+============+===========+
| Magic_Number | Frame_Size | User_Data |
+==============+============+===========+
| 4 bytes | 4 bytes | n bytes |
+--------------+------------+-----------+

可跳过帧允许将用户定义的元数据插入到连接帧流中。

本规范中定义的可跳过帧与[LZ4]中的可跳过帧兼容。

从符合规范的解码器角度来看,可跳过帧只需要被跳过,其内容被忽略,在可跳过帧之后恢复解码。

应该注意的是,可跳过帧可用于为连接帧流添加水印,嵌入任何类型的跟踪信息(甚至只是一个通用唯一标识符UUID)。对此类可能性持警惕态度的用户应扫描连接帧流,以尝试检测此类帧进行分析或删除。

字段如下:

Magic_Number: 4字节,小端格式。值:0x184D2A5?,表示从0x184D2A50到0x184D2A5F的任何值。所有16个值都有效以识别可跳过帧。

Frame_Size: 这是以下User_Data的大小(以字节为单位)(不包括魔数和大小字段本身)。此字段使用4字节表示,小端格式,无符号32位。这意味着User_Data不能大于(2^32 -1)字节。

User_Data: 此字段可以是任何内容。数据将被解码器跳过。