On this page

Skippable Frames

Magic_NumberFrame_SizeUser_Data
4 bytes4 bytesn bytes

Skippable frames allow the insertion of user-defined metadata into a flow of concatenated frames.

Skippable frames defined in this specification are compatible with LZ4 ones.

From a compliant decoder perspective, skippable frames need just be skipped, and their content ignored, resuming decoding after the skippable frame.

It can be noted that a skippable frame can be used to watermark a stream of concatenated frames embedding any kind of tracking information (even just a UUID). Users wary of such possibility should scan the stream of concatenated frames in an attempt to detect such frame for analysis or removal.

Magic_Number

4 Bytes, little-endian format. Value : 0x184D2A5?, which means any value from 0x184D2A50 to 0x184D2A5F. All 16 values are valid to identify a skippable frame. This specification doesn’t detail any specific tagging for skippable frames.

Frame_Size

This is the size, in bytes, of the following User_Data (without including the magic number nor the size field itself). This field is represented using 4 Bytes, little-endian format, unsigned 32-bits. This means User_Data can’t be bigger than (2^32-1) bytes.

User_Data

The User_Data can be anything. Data will just be skipped by the decoder.