Added support for Main Profile toolsets in encoder.
Added support for CABAC entropy coding.
Added support for B slices.
Fixed an issue in rate control constant QP mode.
Change-Id: Ib759d35e8e943f941aa9b8bbff0362d92c619994
diff --git a/encoder/arm/ih264e_function_selector_av8.c b/encoder/arm/ih264e_function_selector_av8.c
index 173c2d5..1679af3 100644
--- a/encoder/arm/ih264e_function_selector_av8.c
+++ b/encoder/arm/ih264e_function_selector_av8.c
@@ -62,8 +62,8 @@
#include "ih264e_error.h"
#include "ih264e_bitstream.h"
#include "ime_distortion_metrics.h"
+#include "ime_defs.h"
#include "ime_structs.h"
-#include "ih264_defs.h"
#include "ih264_error.h"
#include "ih264_structs.h"
#include "ih264_trans_quant_itrans_iquant.h"
@@ -72,23 +72,18 @@
#include "ih264_padding.h"
#include "ih264_intra_pred_filters.h"
#include "ih264_deblk_edge_filters.h"
-
+#include "ih264_cabac_tables.h"
#include "irc_cntrl_param.h"
#include "irc_frame_info_collector.h"
#include "ih264e_rate_control.h"
+#include "ih264e_cabac_structs.h"
#include "ih264e_structs.h"
#include "ih264e_platform_macros.h"
-#include "ih264_intra_pred_filters.h"
-#include "ih264_trans_quant_itrans_iquant.h"
-#include "ih264e_defs.h"
-#include "ih264e_structs.h"
-#include "ih264_deblk_edge_filters.h"
+#include "ih264e_cabac.h"
#include "ih264e_core_coding.h"
#include "ih264_cavlc_tables.h"
#include "ih264e_cavlc.h"
-#include "ih264_padding.h"
#include "ih264e_intra_modes_eval.h"
-#include "ih264_mem_fns.h"
#include "ih264e_fmt_conv.h"
#include "ih264e_half_pel.h"
@@ -197,8 +192,12 @@
ps_codec->pf_deblk_chroma_horz_bslt4 = ih264_deblk_chroma_horz_bslt4_av8;
/* write mb syntax layer */
- ps_codec->pf_write_mb_syntax_layer[ISLICE] = ih264e_write_islice_mb;
- ps_codec->pf_write_mb_syntax_layer[PSLICE] = ih264e_write_pslice_mb;
+ /* write mb syntax layer */
+ ps_codec->pf_write_mb_syntax_layer[CAVLC][ISLICE] = ih264e_write_islice_mb_cavlc;
+ ps_codec->pf_write_mb_syntax_layer[CAVLC][PSLICE] = ih264e_write_pslice_mb_cavlc;
+ ps_codec->pf_write_mb_syntax_layer[CAVLC][BSLICE] = ih264e_write_bslice_mb_cavlc;
+ ps_codec->pf_write_mb_syntax_layer[CABAC][ISLICE] = ih264e_write_islice_mb_cabac;
+ ps_codec->pf_write_mb_syntax_layer[CABAC][PSLICE] = ih264e_write_pslice_mb_cabac;
/* Padding Functions */
ps_codec->pf_pad_top = ih264_pad_top_av8;