Key frame non-RD mode decision process
This commit makes a non-RD coding mode decision process for key frame coding. It can be optionally turned on in speed -6 and above. Change-Id: I0847258b392877a0210b4768bef88ebc9ad009b5
This commit is contained in:
@@ -2601,7 +2601,9 @@ static void nonrd_pick_sb_modes(VP9_COMP *cpi,
|
||||
if (mbmi->segment_id)
|
||||
x->rdmult = vp9_cyclic_refresh_get_rdmult(cpi->cyclic_refresh);
|
||||
|
||||
if (vp9_segfeature_active(&cm->seg, mbmi->segment_id, SEG_LVL_SKIP))
|
||||
if (cm->frame_type == KEY_FRAME)
|
||||
vp9_pick_intra_mode(cpi, x, rd_cost, bsize, ctx);
|
||||
else if (vp9_segfeature_active(&cm->seg, mbmi->segment_id, SEG_LVL_SKIP))
|
||||
set_mode_info_seg_skip(x, cm->tx_mode, rd_cost, bsize);
|
||||
else
|
||||
vp9_pick_inter_mode(cpi, x, tile_data, mi_row, mi_col,
|
||||
@@ -3456,7 +3458,7 @@ static void encode_tiles(VP9_COMP *cpi) {
|
||||
|
||||
for (mi_row = tile_info->mi_row_start; mi_row < tile_info->mi_row_end;
|
||||
mi_row += MI_BLOCK_SIZE) {
|
||||
if (cpi->sf.use_nonrd_pick_mode && !frame_is_intra_only(cm))
|
||||
if (cpi->sf.use_nonrd_pick_mode)
|
||||
encode_nonrd_sb_row(cpi, this_tile, mi_row, &tok[tile_row][tile_col]);
|
||||
else
|
||||
encode_rd_sb_row(cpi, this_tile, mi_row, &tok[tile_row][tile_col]);
|
||||
|
||||
Reference in New Issue
Block a user