CrImage::WEBP::VP8L
VP8L lossless decoder for WEBP.
Implements the VP8L lossless image format used in WebP. Handles:
- Bitstream parsing
- Huffman decoding
- LZ77 backward references
- Color cache
- Transform decoding (predictor, color, subtract green, palette)
Constants
Distance map table for LZ77 backwards references
Huffman alphabet sizes
Code length decoding constants
Reverse bits lookup table
Class methods
Decodes VP8L image from IO stream.
Parses VP8L bitstream, decodes transforms, Huffman codes, and reconstructs the image.
Returns: Decoded NRGBA image
Decodes VP8L configuration (dimensions and color model).
Reads only the VP8L header to extract image metadata without decoding the full image data.
Returns: Config with dimensions and NRGBA color model
Maps distance code to pixel offset.
VP8L uses special distance codes for nearby pixels to improve compression. Specified in section 4.2.2 of the VP8L spec.
Calculates number of tiles needed to cover size pixels.
Used for transform metadata (predictor, color transform).
Nested types
- CrImage::WEBP::VP8L::BitReader
- CrImage::WEBP::VP8L::BufferedReader
- CrImage::WEBP::VP8L::ColorIndexingTransform
- CrImage::WEBP::VP8L::CrossColorTransform
- CrImage::WEBP::VP8L::Decoder
- CrImage::WEBP::VP8L::HNode
- CrImage::WEBP::VP8L::HTree
- CrImage::WEBP::VP8L::HuffmanGroup
- CrImage::WEBP::VP8L::PredictorTransform
- CrImage::WEBP::VP8L::SubtractGreenTransform
- CrImage::WEBP::VP8L::Transform