APEv2 specification
This is how information is laid out in an APEv2 tag:
APE Tags Header | 32 bytes |
APE Tag Item 1 | 10.. bytes |
APE Tag Item 2 | 10.. bytes |
... | 10.. bytes |
APE Tag Item n-1 | 10.. bytes |
APE Tag Item n | 10.. bytes |
APE Tags Footer | 32 bytes |
APE tags items should be sorted ascending by size. When streaming parts of the APE tags can be dropped to reduce danger of drop outs between titles. This is not a MUST, but STRONGLY recommended. Actually the items should be sorted by importance/byte, but this is not feasible. Only break this rule if you add less important small items and you don't want to rewrite the whole tag. An APE tag at the end of a file (strongly recommended) must have at least a footer, a APE tag in the beginning of a file (strongly unrecommended) must have at least a header.