Go to the documentation of this file.
36 if (*mqc->
bp == 0xff){
38 *mqc->
bp = mqc->
c >> 20;
41 }
else if ((mqc->
c & 0x8000000)){
47 *mqc->
bp = mqc->
c >> 19;
60 }
while (!(mqc->
a & 0x8000));
65 int tmp = mqc->
c + mqc->
a;
78 mqc->
ct = 12 + (*mqc->
bp == 0xff);
87 if ((*cxstate & 1) == d){
88 if (!(mqc->
a & 0x8000)){
110 mqc->
c = mqc->
c << mqc->
ct;
112 mqc->
c = mqc->
c << mqc->
ct;
114 if (*mqc->
bp != 0xff)
126 *dst_len = mqc2.
bp -
dst;
132 memmove(
dst,
dst+1, *dst_len);
133 return mqc->
bp - mqc->
bpstart + 1 + *dst_len;
135 return mqc->
bp - mqc->
bpstart + *dst_len;
static int mqc_flush(MqcState *mqc)
int ff_mqc_flush_to(MqcState *mqc, uint8_t *dst, int *dst_len)
flush the encoder [returns number of bytes encoded]
static void setbits(MqcState *mqc)
const uint16_t ff_mqc_qe[2 *47]
const uint8_t ff_mqc_nmps[2 *47]
static void renorme(MqcState *mqc)
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t * dst
void ff_mqc_initenc(MqcState *mqc, uint8_t *bp)
initialize the encoder
const uint8_t ff_mqc_nlps[2 *47]
void ff_mqc_encode(MqcState *mqc, uint8_t *cxstate, int d)
code bit d with context cx
#define av_assert1(cond)
assert() equivalent, that does not lie in speed critical code.
void ff_mqc_init_contexts(MqcState *mqc)
MQ-coder context initialisations.
static void byteout(MqcState *mqc)