ans: Give buf_ans ownership of the AnsCoder
Change-Id: I509bbba0d84c1d378044e2c612dd48cd8f99848d
diff --git a/av1/encoder/bitstream.c b/av1/encoder/bitstream.c
index d7d3701..493e857 100644
--- a/av1/encoder/bitstream.c
+++ b/av1/encoder/bitstream.c
@@ -3464,7 +3464,7 @@
#endif
const AV1_COMMON *const cm = &cpi->common;
#if CONFIG_ANS
- struct AnsCoder token_ans;
+ struct BufAnsCoder *buf_ans = &cpi->buf_ans;
#else
aom_writer mode_bc;
#endif // CONFIG_ANS
@@ -3495,9 +3495,6 @@
#if CONFIG_EXT_TILE
const int have_tiles = tile_cols * tile_rows > 1;
#endif // CONFIG_EXT_TILE
-#if CONFIG_ANS
- struct BufAnsCoder *buf_ans = &cpi->buf_ans;
-#endif // CONFIG_ANS
*max_tile_size = 0;
*max_tile_col_size = 0;
@@ -3536,12 +3533,11 @@
aom_stop_encode(&mode_bc);
tile_size = mode_bc.pos;
#else
- buf_ans_write_reset(buf_ans);
+ buf_ans_write_init(buf_ans, buf->data + data_offset);
write_modes(cpi, &tile_info, buf_ans, &tok, tok_end);
assert(tok == tok_end);
- ans_write_init(&token_ans, buf->data + data_offset);
- buf_ans_flush(buf_ans, &token_ans);
- tile_size = ans_write_end(&token_ans);
+ buf_ans_flush(buf_ans);
+ tile_size = buf_ans_write_end(buf_ans);
#endif // !CONFIG_ANS
buf->size = tile_size;
@@ -3686,12 +3682,11 @@
if (!is_last_tile) total_size += 4;
#if CONFIG_ANS
- buf_ans_write_reset(buf_ans);
+ buf_ans_write_init(buf_ans, dst + total_size);
write_modes(cpi, &tile_info, buf_ans, &tok, tok_end);
assert(tok == tok_end);
- ans_write_init(&token_ans, dst + total_size);
- buf_ans_flush(buf_ans, &token_ans);
- tile_size = ans_write_end(&token_ans);
+ buf_ans_flush(buf_ans);
+ tile_size = buf_ans_write_end(buf_ans);
#else
aom_start_encode(&mode_bc, dst + total_size);
#if CONFIG_PVQ
@@ -3703,10 +3698,10 @@
assert(tok == tok_end);
aom_stop_encode(&mode_bc);
tile_size = mode_bc.pos;
-#endif
+#endif // CONFIG_ANS
#if CONFIG_PVQ
cpi->td.mb.pvq_q = NULL;
-#endif // !CONFIG_ANS
+#endif
assert(tile_size > 0);
@@ -4132,10 +4127,9 @@
#endif
#if CONFIG_ANS
- struct AnsCoder header_ans;
int header_size;
header_bc = &cpi->buf_ans;
- buf_ans_write_reset(header_bc);
+ buf_ans_write_init(header_bc, data);
#else
aom_writer real_header_bc;
header_bc = &real_header_bc;
@@ -4333,9 +4327,8 @@
#endif
#endif
#if CONFIG_ANS
- ans_write_init(&header_ans, data);
- buf_ans_flush(header_bc, &header_ans);
- header_size = ans_write_end(&header_ans);
+ buf_ans_flush(header_bc);
+ header_size = buf_ans_write_end(header_bc);
assert(header_size <= 0xffff);
return header_size;
#else