Skip to main content

Crate msrtc_rans_core

Crate msrtc_rans_core 

Source
Expand description

§msrtc-rans-core

Deterministic, no_std-capable rANS primitives for the msrtc_rans entropy coder.

This crate implements the raw rANS encoding and decoding primitives used by Microsoft MLVC’s msrtc_rans package. The arithmetic (reciprocal preparation, Mul64Hi, fast division) is structurally faithful to the C++ implementation.

Status: The encoder and decoder equations, constants, and symbol preparation are implemented and self-consistent. Byte-level parity against the pinned Microsoft C++ oracle has not yet been established by differential court. See the msrtc-rans-court crate for ongoing parity verification.

Re-exports§

pub use error::RawRansError;
pub use raw::Rans64DecSymbol;
pub use raw::Rans64Decoder;
pub use raw::Rans64EncSymbol;
pub use raw::Rans64Encoder;
pub use raw::RansByteDecSymbol;
pub use raw::RansByteDecoder;
pub use raw::RansByteEncSymbol;
pub use raw::RansByteEncoder;
pub use variant::RansVariant;

Modules§

arithmetic
Arithmetic primitives for rANS.
error
Error types for msrtc-rans-core.
raw
Raw rANS encoder/decoder implementations for both RansByte and Rans64 variants.
sink
Sink traits for rANS encoder output.
source
Source traits for rANS decoder input.
variant
RANS variant definitions and macros.

Type Aliases§

Freq
Frequency type used throughout the rANS implementation - corresponds to rans_freq_t (uint32_t)