Go to the documentation of this file.
30 #ifndef AVCODEC_LAGARITHRAC_H
31 #define AVCODEC_LAGARITHRAC_H
49 #define MAX_OVERREAD 4
60 while (l->
range <= 0x800000) {
78 unsigned range_scaled, low_scaled;
85 if (l->
low < range_scaled * l->
prob[255]) {
87 if (l->
low < range_scaled * l->
prob[1]) {
93 while (l->
low >= range_scaled * l->
prob[
val + 1])
unsigned scale
Number of bits of precision in range.
unsigned hash_shift
Number of bits to shift to calculate hash for radix search.
static uint8_t lag_get_rac(lag_rac *l)
Decode a single byte from the compressed plane described by *l.
uint32_t prob[258]
Table of cumulative probability for each symbol.
uint8_t range_hash[1024]
Hash table mapping upper byte to approximate symbol.
static double val(void *priv, double ch)
void ff_lag_rac_init(lag_rac *l, GetBitContext *gb, int length)
static void lag_rac_refill(lag_rac *l)
const uint8_t * bytestream_start
Start of input bytestream.
const uint8_t * bytestream
Current position in input bytestream.
const uint8_t * bytestream_end
End position of input bytestream.
uint64_t_TMPL AV_WL64 unsigned int_TMPL AV_WL32 unsigned int_TMPL AV_WL24 unsigned int_TMPL AV_WL16 uint64_t_TMPL AV_WB64 unsigned int_TMPL AV_WB32 unsigned int_TMPL AV_WB24 unsigned int_TMPL AV_RB16