summaryrefslogtreecommitdiff
path: root/vp9/encoder
diff options
context:
space:
mode:
authorVignesh Venkatasubramanian <vigneshv@google.com>2017-02-24 11:40:22 -0800
committerVignesh Venkatasubramanian <vigneshv@google.com>2017-02-27 09:43:26 -0800
commit5881601488ef4278d7ca2b06e2ad4d44b3063620 (patch)
tree580151b16da047a1810f4c34cee818dbf160932e /vp9/encoder
parent8121f85473b28183c93fdcef290ed6f74b0b52db (diff)
downloadlibvpx-5881601488ef4278d7ca2b06e2ad4d44b3063620.tar
libvpx-5881601488ef4278d7ca2b06e2ad4d44b3063620.tar.gz
libvpx-5881601488ef4278d7ca2b06e2ad4d44b3063620.tar.bz2
libvpx-5881601488ef4278d7ca2b06e2ad4d44b3063620.zip
vp9: Rename new_mt to row_mt
new_mt is a very generic name that will get obsolete soon enough. Since this is exposed as a codec control, renaming it to row_mt to signify row level paralellism. Also renaming the ETHREAD_BIT_MATCH codec control to ROW_MT_BIT_EXACT. Change-Id: Ic7872d78bb3b12fb4cf92ba028ec8e08eb3a9558
Diffstat (limited to 'vp9/encoder')
-rw-r--r--vp9/encoder/vp9_encodeframe.c2
-rw-r--r--vp9/encoder/vp9_encoder.c14
-rw-r--r--vp9/encoder/vp9_encoder.h8
-rw-r--r--vp9/encoder/vp9_firstpass.c22
-rw-r--r--vp9/encoder/vp9_rdopt.c2
-rw-r--r--vp9/encoder/vp9_speed_features.c4
-rw-r--r--vp9/encoder/vp9_temporal_filter.c2
7 files changed, 27 insertions, 27 deletions
diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c
index e09f94b89..982dbd943 100644
--- a/vp9/encoder/vp9_encodeframe.c
+++ b/vp9/encoder/vp9_encodeframe.c
@@ -4341,7 +4341,7 @@ static void encode_frame_internal(VP9_COMP *cpi) {
}
#endif
- if (!cpi->new_mt) {
+ if (!cpi->row_mt) {
cpi->row_mt_sync_read_ptr = vp9_row_mt_sync_read_dummy;
cpi->row_mt_sync_write_ptr = vp9_row_mt_sync_write_dummy;
// If allowed, encoding tiles in parallel with one thread handling one
diff --git a/vp9/encoder/vp9_encoder.c b/vp9/encoder/vp9_encoder.c
index 5d64b0a10..21771a029 100644
--- a/vp9/encoder/vp9_encoder.c
+++ b/vp9/encoder/vp9_encoder.c
@@ -1575,7 +1575,7 @@ void vp9_change_config(struct VP9_COMP *cpi, const VP9EncoderConfig *oxcf) {
highbd_set_var_fns(cpi);
#endif
- vp9_set_new_mt(cpi);
+ vp9_set_row_mt(cpi);
}
#ifndef M_LOG2_E
@@ -5223,16 +5223,16 @@ void vp9_apply_encoding_flags(VP9_COMP *cpi, vpx_enc_frame_flags_t flags) {
}
}
-void vp9_set_new_mt(VP9_COMP *cpi) {
+void vp9_set_row_mt(VP9_COMP *cpi) {
// Enable row based multi-threading for supported modes of encoding
- cpi->new_mt = 0;
+ cpi->row_mt = 0;
if (((cpi->oxcf.mode == GOOD || cpi->oxcf.mode == BEST) &&
cpi->oxcf.speed < 5 && cpi->oxcf.pass == 1) &&
- cpi->oxcf.new_mt && !cpi->use_svc)
- cpi->new_mt = 1;
+ cpi->oxcf.row_mt && !cpi->use_svc)
+ cpi->row_mt = 1;
if (cpi->oxcf.mode == GOOD && cpi->oxcf.speed < 5 &&
- (cpi->oxcf.pass == 0 || cpi->oxcf.pass == 2) && cpi->oxcf.new_mt &&
+ (cpi->oxcf.pass == 0 || cpi->oxcf.pass == 2) && cpi->oxcf.row_mt &&
!cpi->use_svc)
- cpi->new_mt = 1;
+ cpi->row_mt = 1;
}
diff --git a/vp9/encoder/vp9_encoder.h b/vp9/encoder/vp9_encoder.h
index 2797ff769..2d411329f 100644
--- a/vp9/encoder/vp9_encoder.h
+++ b/vp9/encoder/vp9_encoder.h
@@ -267,8 +267,8 @@ typedef struct VP9EncoderConfig {
int render_height;
VP9E_TEMPORAL_LAYERING_MODE temporal_layering_mode;
- int new_mt;
- unsigned int ethread_bit_match;
+ int row_mt;
+ unsigned int row_mt_bit_exact;
} VP9EncoderConfig;
static INLINE int is_lossless_requested(const VP9EncoderConfig *cfg) {
@@ -691,7 +691,7 @@ typedef struct VP9_COMP {
void (*row_mt_sync_read_ptr)(VP9RowMTSync *const, int, int);
void (*row_mt_sync_write_ptr)(VP9RowMTSync *const, int, int, const int);
ARNRFilterData arnr_filter_data;
- int new_mt;
+ int row_mt;
// Previous Partition Info
BLOCK_SIZE *prev_partition;
@@ -909,7 +909,7 @@ VP9_LEVEL vp9_get_level(const Vp9LevelSpec *const level_spec);
void vp9_new_framerate(VP9_COMP *cpi, double framerate);
-void vp9_set_new_mt(VP9_COMP *cpi);
+void vp9_set_row_mt(VP9_COMP *cpi);
#define LAYER_IDS_TO_IDX(sl, tl, num_tl) ((sl) * (num_tl) + (tl))
diff --git a/vp9/encoder/vp9_firstpass.c b/vp9/encoder/vp9_firstpass.c
index 280e3d6a6..3234b1abf 100644
--- a/vp9/encoder/vp9_firstpass.c
+++ b/vp9/encoder/vp9_firstpass.c
@@ -979,12 +979,12 @@ void vp9_first_pass_encode_tile_mb_row(VP9_COMP *cpi, ThreadData *td,
if (log_intra < 10.0) {
mb_intra_factor = 1.0 + ((10.0 - log_intra) * 0.05);
fp_acc_data->intra_factor += mb_intra_factor;
- if (cpi->oxcf.ethread_bit_match)
+ if (cpi->oxcf.row_mt_bit_exact)
cpi->twopass.fp_mb_float_stats[mb_index].frame_mb_intra_factor =
mb_intra_factor;
} else {
fp_acc_data->intra_factor += 1.0;
- if (cpi->oxcf.ethread_bit_match)
+ if (cpi->oxcf.row_mt_bit_exact)
cpi->twopass.fp_mb_float_stats[mb_index].frame_mb_intra_factor = 1.0;
}
@@ -999,12 +999,12 @@ void vp9_first_pass_encode_tile_mb_row(VP9_COMP *cpi, ThreadData *td,
if ((level_sample < DARK_THRESH) && (log_intra < 9.0)) {
mb_brightness_factor = 1.0 + (0.01 * (DARK_THRESH - level_sample));
fp_acc_data->brightness_factor += mb_brightness_factor;
- if (cpi->oxcf.ethread_bit_match)
+ if (cpi->oxcf.row_mt_bit_exact)
cpi->twopass.fp_mb_float_stats[mb_index].frame_mb_brightness_factor =
mb_brightness_factor;
} else {
fp_acc_data->brightness_factor += 1.0;
- if (cpi->oxcf.ethread_bit_match)
+ if (cpi->oxcf.row_mt_bit_exact)
cpi->twopass.fp_mb_float_stats[mb_index].frame_mb_brightness_factor =
1.0;
}
@@ -1166,7 +1166,7 @@ void vp9_first_pass_encode_tile_mb_row(VP9_COMP *cpi, ThreadData *td,
if (((this_error - intrapenalty) * 9 <= motion_error * 10) &&
(this_error < (2 * intrapenalty))) {
fp_acc_data->neutral_count += 1.0;
- if (cpi->oxcf.ethread_bit_match)
+ if (cpi->oxcf.row_mt_bit_exact)
cpi->twopass.fp_mb_float_stats[mb_index].frame_mb_neutral_count =
1.0;
// Also track cases where the intra is not much worse than the inter
@@ -1176,7 +1176,7 @@ void vp9_first_pass_encode_tile_mb_row(VP9_COMP *cpi, ThreadData *td,
mb_neutral_count =
(double)motion_error / DOUBLE_DIVIDE_CHECK((double)this_error);
fp_acc_data->neutral_count += mb_neutral_count;
- if (cpi->oxcf.ethread_bit_match)
+ if (cpi->oxcf.row_mt_bit_exact)
cpi->twopass.fp_mb_float_stats[mb_index].frame_mb_neutral_count =
mb_neutral_count;
}
@@ -1297,7 +1297,7 @@ void vp9_first_pass_encode_tile_mb_row(VP9_COMP *cpi, ThreadData *td,
recon_uvoffset += uv_mb_height;
// Accumulate row level stats to the corresponding tile stats
- if (cpi->new_mt && mb_col == (tile.mi_col_end >> 1) - 1)
+ if (cpi->row_mt && mb_col == (tile.mi_col_end >> 1) - 1)
accumulate_fp_mb_row_stat(tile_data, fp_acc_data);
(*(cpi->row_mt_sync_write_ptr))(&tile_data->row_mt_sync, mb_row, c,
@@ -1424,7 +1424,7 @@ void vp9_first_pass(VP9_COMP *cpi, const struct lookahead_entry *source) {
cm->log2_tile_rows = 0;
- if (cpi->oxcf.ethread_bit_match && cpi->twopass.fp_mb_float_stats == NULL)
+ if (cpi->oxcf.row_mt_bit_exact && cpi->twopass.fp_mb_float_stats == NULL)
CHECK_MEM_ERROR(
cm, cpi->twopass.fp_mb_float_stats,
vpx_calloc(cm->MBs * sizeof(*cpi->twopass.fp_mb_float_stats), 1));
@@ -1432,7 +1432,7 @@ void vp9_first_pass(VP9_COMP *cpi, const struct lookahead_entry *source) {
{
FIRSTPASS_STATS fps;
TileDataEnc *first_tile_col;
- if (!cpi->new_mt) {
+ if (!cpi->row_mt) {
cm->log2_tile_cols = 0;
cpi->row_mt_sync_read_ptr = vp9_row_mt_sync_read_dummy;
cpi->row_mt_sync_write_ptr = vp9_row_mt_sync_write_dummy;
@@ -1441,13 +1441,13 @@ void vp9_first_pass(VP9_COMP *cpi, const struct lookahead_entry *source) {
} else {
cpi->row_mt_sync_read_ptr = vp9_row_mt_sync_read;
cpi->row_mt_sync_write_ptr = vp9_row_mt_sync_write;
- if (cpi->oxcf.ethread_bit_match) {
+ if (cpi->oxcf.row_mt_bit_exact) {
cm->log2_tile_cols = 0;
vp9_zero_array(cpi->twopass.fp_mb_float_stats, cm->MBs);
}
vp9_encode_fp_row_mt(cpi);
first_tile_col = &cpi->tile_data[0];
- if (cpi->oxcf.ethread_bit_match)
+ if (cpi->oxcf.row_mt_bit_exact)
accumulate_floating_point_stats(cpi, first_tile_col);
first_pass_stat_calc(cpi, &fps, &(first_tile_col->fp_data));
}
diff --git a/vp9/encoder/vp9_rdopt.c b/vp9/encoder/vp9_rdopt.c
index 1b82b29d4..e03ffc118 100644
--- a/vp9/encoder/vp9_rdopt.c
+++ b/vp9/encoder/vp9_rdopt.c
@@ -3576,7 +3576,7 @@ void vp9_rd_pick_inter_mode_sb(VP9_COMP *cpi, TileDataEnc *tile_data,
if (best_mode_index < 0 || best_rd >= best_rd_so_far) {
// If adaptive interp filter is enabled, then the current leaf node of 8x8
// data is needed for sub8x8. Hence preserve the context.
- if (cpi->new_mt && bsize == BLOCK_8X8) ctx->mic = *xd->mi[0];
+ if (cpi->row_mt && bsize == BLOCK_8X8) ctx->mic = *xd->mi[0];
rd_cost->rate = INT_MAX;
rd_cost->rdcost = INT64_MAX;
return;
diff --git a/vp9/encoder/vp9_speed_features.c b/vp9/encoder/vp9_speed_features.c
index e4146cdc4..6a1d8885c 100644
--- a/vp9/encoder/vp9_speed_features.c
+++ b/vp9/encoder/vp9_speed_features.c
@@ -591,7 +591,7 @@ void vp9_set_speed_features_framesize_dependent(VP9_COMP *cpi) {
// With row based multi-threading, the following speed features
// have to be disabled to guarantee that bitstreams encoded with single thread
// and multiple threads match
- if (cpi->oxcf.ethread_bit_match) {
+ if (cpi->oxcf.row_mt_bit_exact) {
sf->adaptive_rd_thresh = 0;
sf->allow_exhaustive_searches = 0;
sf->adaptive_pred_interp_filter = 0;
@@ -762,7 +762,7 @@ void vp9_set_speed_features_framesize_independent(VP9_COMP *cpi) {
// With row based multi-threading, the following speed features
// have to be disabled to guarantee that bitstreams encoded with single thread
// and multiple threads match
- if (cpi->oxcf.ethread_bit_match) {
+ if (cpi->oxcf.row_mt_bit_exact) {
sf->adaptive_rd_thresh = 0;
sf->allow_exhaustive_searches = 0;
sf->adaptive_pred_interp_filter = 0;
diff --git a/vp9/encoder/vp9_temporal_filter.c b/vp9/encoder/vp9_temporal_filter.c
index fdaa4814c..e02c34224 100644
--- a/vp9/encoder/vp9_temporal_filter.c
+++ b/vp9/encoder/vp9_temporal_filter.c
@@ -766,7 +766,7 @@ void vp9_temporal_filter(VP9_COMP *cpi, int distance) {
set_error_per_bit(&cpi->td.mb, rdmult);
vp9_initialize_me_consts(cpi, &cpi->td.mb, ARNR_FILT_QINDEX);
- if (!cpi->new_mt)
+ if (!cpi->row_mt)
temporal_filter_iterate_c(cpi);
else
vp9_temporal_filter_row_mt(cpi);