Skip to main content
← PSoXide SDK guides and examples · SDK f2fec1c301f1 · All Cargo features enabled; check feature gates before use.

Module rle

Module rle 

Source
Expand description

Run-length data: what crate::bitstream::decode_frame produces and the MDEC decodes, and the lengths the MDEC can be handed.

The decode command carries the run-length length as a 16-bit word count, and DMA0 feeds it in 32-word blocks, so a length the MDEC can take is a non-zero multiple of 32 words no larger than MAX_WORDS. A zero block count would not mean “nothing”: the DMA controller reads it as 65,536 blocks.

Structs§

RleBuffer
Owned run-length storage of WORDS words: written as halfwords by crate::bitstream::decode_frame, read as words by the MDEC.

Enums§

RleLengthError
A run-length length the MDEC cannot be handed.

Constants§

BLOCK_WORDS
DMA block size the MDEC channels use, in words.
MAX_WORDS
Longest run-length input one decode command can announce: the largest multiple of BLOCK_WORDS that fits the command’s 16-bit word count.

Functions§

dma_block_count
DMA0 block count for words run-length words, or why the MDEC cannot be handed that many.