Add NxN part_mode coding.

This commit is contained in:
Ari Koivula 2013-12-18 10:50:24 +02:00
parent ee92fc341c
commit 8f610176d8

View file

@ -1033,12 +1033,20 @@ void encode_coding_tree(encoder_control *encoder, uint16_t x_ctb,
CABAC_BIN(&cabac, (cur_cu->type == CU_INTRA), "PredMode"); CABAC_BIN(&cabac, (cur_cu->type == CU_INTRA), "PredMode");
} }
// Signal PartSize on max depth // part_mode
if (depth == MAX_DEPTH || cur_cu->type != CU_INTRA) { if (cur_cu->type == CU_INTRA) {
if (depth == MAX_DEPTH) {
cabac.ctx = &g_part_size_model[0];
if (cur_cu->part_size == SIZE_2Nx2N) {
CABAC_BIN(&cabac, 1, "part_mode 2Nx2N");
} else {
CABAC_BIN(&cabac, 0, "part_mode NxN");
}
}
} else {
// TODO: Handle inter sizes other than 2Nx2N // TODO: Handle inter sizes other than 2Nx2N
cabac.ctx = &g_part_size_model[0]; cabac.ctx = &g_part_size_model[0];
CABAC_BIN(&cabac, 1, "PartSize"); CABAC_BIN(&cabac, 1, "part_mode 2Nx2N");
// TODO: add AMP modes
} }
//end partsize //end partsize