Remove special ANS initialization handling
Change-Id: I5d5a93b27a42d591ff41ff23c007fc2954d2f9a7
diff --git a/av1/encoder/bitstream.c b/av1/encoder/bitstream.c
index c86ef3a..4235c49 100644
--- a/av1/encoder/bitstream.c
+++ b/av1/encoder/bitstream.c
@@ -40,9 +40,6 @@
#include "av1/common/seg_common.h"
#include "av1/common/tile_common.h"
-#if CONFIG_ANS
-#include "aom_dsp/buf_ans.h"
-#endif // CONFIG_ANS
#if CONFIG_LV_MAP
#include "av1/encoder/encodetxb.h"
#endif // CONFIG_LV_MAP
@@ -3780,11 +3777,7 @@
unsigned int *max_tile_size,
unsigned int *max_tile_col_size) {
const AV1_COMMON *const cm = &cpi->common;
-#if CONFIG_ANS
- struct BufAnsCoder *buf_ans = &cpi->buf_ans;
-#else
aom_writer mode_bc;
-#endif // CONFIG_ANS
int tile_row, tile_col;
TOKENEXTRA *(*const tok_buffers)[MAX_TILE_COLS] = cpi->tile_tok;
TileBufferEnc(*const tile_buffers)[MAX_TILE_COLS] = cpi->tile_buffers;
@@ -3857,19 +3850,14 @@
cpi->td.mb.pvq_q = &this_tile->pvq_q;
cpi->td.mb.daala_enc.state.adapt = &this_tile->tctx.pvq_context;
#endif // CONFIG_PVQ
-#if !CONFIG_ANS
+#if CONFIG_ANS
+ mode_bc.size = 1 << cpi->common.ans_window_size_log2;
+#endif
aom_start_encode(&mode_bc, buf->data + data_offset);
write_modes(cpi, &tile_info, &mode_bc, &tok, tok_end);
assert(tok == tok_end);
aom_stop_encode(&mode_bc);
tile_size = mode_bc.pos;
-#else
- buf_ans_write_init(buf_ans, buf->data + data_offset);
- write_modes(cpi, &tile_info, buf_ans, &tok, tok_end);
- assert(tok == tok_end);
- aom_buf_ans_flush(buf_ans);
- tile_size = buf_ans_write_end(buf_ans);
-#endif // !CONFIG_ANS
#if CONFIG_PVQ
cpi->td.mb.pvq_q = NULL;
#endif
@@ -4033,22 +4021,17 @@
cpi->td.mb.daala_enc.state.adapt = &this_tile->tctx.pvq_context;
#endif // CONFIG_PVQ
#if CONFIG_ANS
- buf_ans_write_init(buf_ans, dst + total_size);
- write_modes(cpi, &tile_info, buf_ans, &tok, tok_end);
- assert(tok == tok_end);
- aom_buf_ans_flush(buf_ans);
- tile_size = buf_ans_write_end(buf_ans);
-#else
- aom_start_encode(&mode_bc, dst + total_size);
- write_modes(cpi, &tile_info, &mode_bc, &tok, tok_end);
+ mode_bc.size = 1 << cpi->common.ans_window_size_log2;
+#endif // CONFIG_ANS
+ aom_start_encode(&mode_bc, dst + total_size);
+ write_modes(cpi, &tile_info, &mode_bc, &tok, tok_end);
#if !CONFIG_LV_MAP
#if !CONFIG_PVQ
- assert(tok == tok_end);
+ assert(tok == tok_end);
#endif // !CONFIG_PVQ
#endif // !CONFIG_LV_MAP
- aom_stop_encode(&mode_bc);
- tile_size = mode_bc.pos;
-#endif // CONFIG_ANS
+ aom_stop_encode(&mode_bc);
+ tile_size = mode_bc.pos;
#if CONFIG_PVQ
cpi->td.mb.pvq_q = NULL;
#endif
@@ -4635,15 +4618,12 @@
(void)i;
(void)fc;
-#if CONFIG_ANS
- int header_size;
- header_bc = &cpi->buf_ans;
- buf_ans_write_init(header_bc, data);
-#else
aom_writer real_header_bc;
header_bc = &real_header_bc;
- aom_start_encode(header_bc, data);
+#if CONFIG_ANS
+ header_bc->size = 1 << cpi->common.ans_window_size_log2;
#endif
+ aom_start_encode(header_bc, data);
#if CONFIG_LOOP_RESTORATION
encode_restoration(cm, header_bc);
@@ -4788,16 +4768,9 @@
write_global_motion(cpi, header_bc);
#endif // CONFIG_GLOBAL_MOTION
}
-#if CONFIG_ANS
- aom_buf_ans_flush(header_bc);
- header_size = buf_ans_write_end(header_bc);
- assert(header_size <= 0xffff);
- return header_size;
-#else
aom_stop_encode(header_bc);
assert(header_bc->pos <= 0xffff);
return header_bc->pos;
-#endif // CONFIG_ANS
}
static int choose_size_bytes(uint32_t size, int spare_msbs) {