diff options
author | Yunqing Wang <yunqingwang@google.com> | 2017-04-26 16:12:14 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2017-04-26 16:12:14 +0000 |
commit | b68f14d0ed27fafb4593a99fec5361fc023d4488 (patch) | |
tree | c99345496726f00e735f74d041e52114de5636af /vp9/encoder/vp9_rdopt.c | |
parent | 54c4e0f7a5cc48aa9ddee00f17609f5aba4d96d5 (diff) | |
parent | 10a497bd3823d88cf4c2f816a648ca0e79bd07be (diff) | |
download | libvpx-b68f14d0ed27fafb4593a99fec5361fc023d4488.tar libvpx-b68f14d0ed27fafb4593a99fec5361fc023d4488.tar.gz libvpx-b68f14d0ed27fafb4593a99fec5361fc023d4488.tar.bz2 libvpx-b68f14d0ed27fafb4593a99fec5361fc023d4488.zip |
Merge "Make the row based multi-threaded encoder deterministic"
Diffstat (limited to 'vp9/encoder/vp9_rdopt.c')
-rw-r--r-- | vp9/encoder/vp9_rdopt.c | 31 |
1 files changed, 3 insertions, 28 deletions
diff --git a/vp9/encoder/vp9_rdopt.c b/vp9/encoder/vp9_rdopt.c index 5e566e1da..4882af171 100644 --- a/vp9/encoder/vp9_rdopt.c +++ b/vp9/encoder/vp9_rdopt.c @@ -3160,11 +3160,6 @@ void vp9_rd_pick_inter_mode_sb(VP9_COMP *cpi, TileDataEnc *tile_data, for (i = 0; i <= LAST_NEW_MV_INDEX; ++i) mode_threshold[i] = 0; -#if CONFIG_MULTITHREAD - if (NULL != tile_data->enc_row_mt_mutex) - pthread_mutex_lock(tile_data->enc_row_mt_mutex); -#endif - for (i = LAST_NEW_MV_INDEX + 1; i < MAX_MODES; ++i) mode_threshold[i] = ((int64_t)rd_threshes[i] * rd_thresh_freq_fact[i]) >> 5; @@ -3186,11 +3181,6 @@ void vp9_rd_pick_inter_mode_sb(VP9_COMP *cpi, TileDataEnc *tile_data, memcpy(mode_map, tile_mode_map, sizeof(mode_map)); -#if CONFIG_MULTITHREAD - if (NULL != tile_data->enc_row_mt_mutex) - pthread_mutex_unlock(tile_data->enc_row_mt_mutex); -#endif - for (midx = 0; midx < MAX_MODES; ++midx) { int mode_index = mode_map[midx]; int mode_excluded = 0; @@ -3627,11 +3617,7 @@ void vp9_rd_pick_inter_mode_sb(VP9_COMP *cpi, TileDataEnc *tile_data, if (!cpi->rc.is_src_frame_alt_ref) vp9_update_rd_thresh_fact(tile_data->thresh_freq_fact, - sf->adaptive_rd_thresh, bsize, -#if CONFIG_MULTITHREAD - tile_data->enc_row_mt_mutex, -#endif - best_mode_index); + sf->adaptive_rd_thresh, bsize, best_mode_index); // macroblock modes *mi = best_mbmode; @@ -3771,11 +3757,7 @@ void vp9_rd_pick_inter_mode_sb_seg_skip(VP9_COMP *cpi, TileDataEnc *tile_data, (cm->interp_filter == mi->interp_filter)); vp9_update_rd_thresh_fact(tile_data->thresh_freq_fact, - cpi->sf.adaptive_rd_thresh, bsize, -#if CONFIG_MULTITHREAD - tile_data->enc_row_mt_mutex, -#endif - THR_ZEROMV); + cpi->sf.adaptive_rd_thresh, bsize, THR_ZEROMV); vp9_zero(best_pred_diff); vp9_zero(best_filter_diff); @@ -3921,9 +3903,6 @@ void vp9_rd_pick_inter_mode_sub8x8(VP9_COMP *cpi, TileDataEnc *tile_data, if (!internal_active_edge && rd_less_than_thresh(best_rd, rd_opt->threshes[segment_id][bsize][ref_index], -#if CONFIG_MULTITHREAD - tile_data->enc_row_mt_mutex, -#endif &rd_thresh_freq_fact[ref_index])) continue; @@ -4373,11 +4352,7 @@ void vp9_rd_pick_inter_mode_sub8x8(VP9_COMP *cpi, TileDataEnc *tile_data, !is_inter_block(&best_mbmode)); vp9_update_rd_thresh_fact(tile_data->thresh_freq_fact, sf->adaptive_rd_thresh, - bsize, -#if CONFIG_MULTITHREAD - tile_data->enc_row_mt_mutex, -#endif - best_ref_index); + bsize, best_ref_index); // macroblock modes *mi = best_mbmode; |