Go to the documentation of this file.
34 if (*mqc->
bp == 0xff){
36 *mqc->
bp = mqc->
c >> 20;
39 }
else if ((mqc->
c & 0x8000000)){
45 *mqc->
bp = mqc->
c >> 19;
58 }
while (!(mqc->
a & 0x8000));
63 int tmp = mqc->
c + mqc->
a;
76 mqc->
ct = 12 + (*mqc->
bp == 0xff);
85 if ((*cxstate & 1) ==
d){
86 if (!(mqc->
a & 0x8000)){
108 mqc->
c = mqc->
c << mqc->
ct;
110 mqc->
c = mqc->
c << mqc->
ct;
112 if (*mqc->
bp != 0xff)
124 *dst_len = mqc2.
bp - dst;
130 memmove(dst, dst+1, *dst_len);
131 return mqc->
bp - mqc->
bpstart + 1 + *dst_len;
133 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)
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)