= SV8 specification draft = == File header == || '''Field''' || '''length (bits)''' || '''Value''' || || Magic || 24 || "MP+" || || Version || 8 || 0x08 || This file header allow old mpc readers to stop decoding at this point, without crashing. == Block formating == All blocks are formated using Key / Length / Value. Key is 16 bits long. It's the block type. Length is a variable size field using the same values as [http://www.matroska.org/technical/specs/index.html matroska] : bits, big-endian 1xxx xxxx - value 0 to 2^7-2 01xx xxxx xxxx xxxx - value 0 to 2^14-2 001x xxxx xxxx xxxx xxxx xxxx - value 0 to 2^21-2 0001 xxxx xxxx xxxx xxxx xxxx xxxx xxxx - value 0 to 2^28-2 ... The length is the size of the block in bytes, including the key and size fields. So the minimum length of a block is 3. The value is the block content. Its size can be 0. || '''Field''' || '''length (bits)''' || '''Value''' || || Key || 16 || "EX" || || Length || n * 8, 0 < n < inf || 0x1A || || Value || Lentgh * 8 || "exemple" ||