Cirrus Logic AccuPak

From MultimediaWiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Cirrus Logic AccuPak is a reduced precision YUV codec.

Data Format

The AccuPak codec packs 4 Y samples and 2 C samples into 32 bits by representing each Y sample with 5 bits and each C sample with 6 bits. It is essentially a scaled-down method of coding YUV 4:1:1, where each group of 4 pixels on a line is represented by a luminance sample each but share C samples.

Each set of 32 bits represents 4 pixels on a line:

 p0 p1 p2 p3

For each set of 32 bits, read left -> right:

 p3.Y = next 5 bits
 p2.Y = next 5 bits
 p1.Y = next 5 bits
 p0.Y = next 5 bits
 Cb/U = next 6 bits
 Cr/V = next 6 bits
            -------
            32 bits

Thus, the first 5 bits represent the Y sample for the last pixel in the group of 4 pixels.