Merge "cosmetics: Beautify whitespaces and line wrapping"
This commit is contained in:
@@ -1327,8 +1327,7 @@ static int set_segment_rdmult(VP9_COMP *const cpi,
|
|||||||
VP9_COMMON *const cm = &cpi->common;
|
VP9_COMMON *const cm = &cpi->common;
|
||||||
vp9_init_plane_quantizers(cpi, x);
|
vp9_init_plane_quantizers(cpi, x);
|
||||||
vpx_clear_system_state();
|
vpx_clear_system_state();
|
||||||
segment_qindex = vp9_get_qindex(&cm->seg, segment_id,
|
segment_qindex = vp9_get_qindex(&cm->seg, segment_id, cm->base_qindex);
|
||||||
cm->base_qindex);
|
|
||||||
return vp9_compute_rd_mult(cpi, segment_qindex + cm->y_dc_delta_q);
|
return vp9_compute_rd_mult(cpi, segment_qindex + cm->y_dc_delta_q);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2727,6 +2726,7 @@ static void rd_pick_partition(VP9_COMP *cpi, ThreadData *td,
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (skip) {
|
if (skip) {
|
||||||
if (src_diff_var == UINT_MAX) {
|
if (src_diff_var == UINT_MAX) {
|
||||||
set_offsets(cpi, tile_info, x, mi_row, mi_col, bsize);
|
set_offsets(cpi, tile_info, x, mi_row, mi_col, bsize);
|
||||||
@@ -2761,12 +2761,13 @@ static void rd_pick_partition(VP9_COMP *cpi, ThreadData *td,
|
|||||||
ctx->mic.interp_filter;
|
ctx->mic.interp_filter;
|
||||||
rd_pick_sb_modes(cpi, tile_data, x, mi_row, mi_col, &sum_rdc, subsize,
|
rd_pick_sb_modes(cpi, tile_data, x, mi_row, mi_col, &sum_rdc, subsize,
|
||||||
pc_tree->leaf_split[0], best_rdc.rdcost);
|
pc_tree->leaf_split[0], best_rdc.rdcost);
|
||||||
|
|
||||||
if (sum_rdc.rate == INT_MAX)
|
if (sum_rdc.rate == INT_MAX)
|
||||||
sum_rdc.rdcost = INT64_MAX;
|
sum_rdc.rdcost = INT64_MAX;
|
||||||
} else {
|
} else {
|
||||||
for (i = 0; i < 4 && sum_rdc.rdcost < best_rdc.rdcost; ++i) {
|
for (i = 0; i < 4 && sum_rdc.rdcost < best_rdc.rdcost; ++i) {
|
||||||
const int x_idx = (i & 1) * mi_step;
|
const int x_idx = (i & 1) * mi_step;
|
||||||
const int y_idx = (i >> 1) * mi_step;
|
const int y_idx = (i >> 1) * mi_step;
|
||||||
|
|
||||||
if (mi_row + y_idx >= cm->mi_rows || mi_col + x_idx >= cm->mi_cols)
|
if (mi_row + y_idx >= cm->mi_rows || mi_col + x_idx >= cm->mi_cols)
|
||||||
continue;
|
continue;
|
||||||
@@ -2870,6 +2871,7 @@ static void rd_pick_partition(VP9_COMP *cpi, ThreadData *td,
|
|||||||
}
|
}
|
||||||
restore_context(x, mi_row, mi_col, a, l, sa, sl, bsize);
|
restore_context(x, mi_row, mi_col, a, l, sa, sl, bsize);
|
||||||
}
|
}
|
||||||
|
|
||||||
// PARTITION_VERT
|
// PARTITION_VERT
|
||||||
if (partition_vert_allowed &&
|
if (partition_vert_allowed &&
|
||||||
(do_rect || vp9_active_v_edge(cpi, mi_col, mi_step))) {
|
(do_rect || vp9_active_v_edge(cpi, mi_col, mi_step))) {
|
||||||
@@ -2952,6 +2954,8 @@ static void encode_rd_sb_row(VP9_COMP *cpi,
|
|||||||
MACROBLOCK *const x = &td->mb;
|
MACROBLOCK *const x = &td->mb;
|
||||||
MACROBLOCKD *const xd = &x->e_mbd;
|
MACROBLOCKD *const xd = &x->e_mbd;
|
||||||
SPEED_FEATURES *const sf = &cpi->sf;
|
SPEED_FEATURES *const sf = &cpi->sf;
|
||||||
|
const int mi_col_start = tile_info->mi_col_start;
|
||||||
|
const int mi_col_end = tile_info->mi_col_end;
|
||||||
int mi_col;
|
int mi_col;
|
||||||
|
|
||||||
// Initialize the left context for the new SB row
|
// Initialize the left context for the new SB row
|
||||||
@@ -2959,8 +2963,7 @@ static void encode_rd_sb_row(VP9_COMP *cpi,
|
|||||||
memset(xd->left_seg_context, 0, sizeof(xd->left_seg_context));
|
memset(xd->left_seg_context, 0, sizeof(xd->left_seg_context));
|
||||||
|
|
||||||
// Code each SB in the row
|
// Code each SB in the row
|
||||||
for (mi_col = tile_info->mi_col_start; mi_col < tile_info->mi_col_end;
|
for (mi_col = mi_col_start; mi_col < mi_col_end; mi_col += MI_BLOCK_SIZE) {
|
||||||
mi_col += MI_BLOCK_SIZE) {
|
|
||||||
const struct segmentation *const seg = &cm->seg;
|
const struct segmentation *const seg = &cm->seg;
|
||||||
int dummy_rate;
|
int dummy_rate;
|
||||||
int64_t dummy_dist;
|
int64_t dummy_dist;
|
||||||
@@ -3760,6 +3763,8 @@ static void encode_nonrd_sb_row(VP9_COMP *cpi,
|
|||||||
TileInfo *const tile_info = &tile_data->tile_info;
|
TileInfo *const tile_info = &tile_data->tile_info;
|
||||||
MACROBLOCK *const x = &td->mb;
|
MACROBLOCK *const x = &td->mb;
|
||||||
MACROBLOCKD *const xd = &x->e_mbd;
|
MACROBLOCKD *const xd = &x->e_mbd;
|
||||||
|
const int mi_col_start = tile_info->mi_col_start;
|
||||||
|
const int mi_col_end = tile_info->mi_col_end;
|
||||||
int mi_col;
|
int mi_col;
|
||||||
|
|
||||||
// Initialize the left context for the new SB row
|
// Initialize the left context for the new SB row
|
||||||
@@ -3767,8 +3772,7 @@ static void encode_nonrd_sb_row(VP9_COMP *cpi,
|
|||||||
memset(xd->left_seg_context, 0, sizeof(xd->left_seg_context));
|
memset(xd->left_seg_context, 0, sizeof(xd->left_seg_context));
|
||||||
|
|
||||||
// Code each SB in the row
|
// Code each SB in the row
|
||||||
for (mi_col = tile_info->mi_col_start; mi_col < tile_info->mi_col_end;
|
for (mi_col = mi_col_start; mi_col < mi_col_end; mi_col += MI_BLOCK_SIZE) {
|
||||||
mi_col += MI_BLOCK_SIZE) {
|
|
||||||
const struct segmentation *const seg = &cm->seg;
|
const struct segmentation *const seg = &cm->seg;
|
||||||
RD_COST dummy_rdc;
|
RD_COST dummy_rdc;
|
||||||
const int idx_str = cm->mi_stride * mi_row + mi_col;
|
const int idx_str = cm->mi_stride * mi_row + mi_col;
|
||||||
@@ -3979,8 +3983,7 @@ static int get_skip_encode_frame(const VP9_COMMON *cm, ThreadData *const td) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return (intra_count << 2) < inter_count &&
|
return (intra_count << 2) < inter_count &&
|
||||||
cm->frame_type != KEY_FRAME &&
|
cm->frame_type != KEY_FRAME && cm->show_frame;
|
||||||
cm->show_frame;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void vp9_init_tile_data(VP9_COMP *cpi) {
|
void vp9_init_tile_data(VP9_COMP *cpi) {
|
||||||
@@ -4033,14 +4036,15 @@ void vp9_encode_tile(VP9_COMP *cpi, ThreadData *td,
|
|||||||
&cpi->tile_data[tile_row * tile_cols + tile_col];
|
&cpi->tile_data[tile_row * tile_cols + tile_col];
|
||||||
const TileInfo * const tile_info = &this_tile->tile_info;
|
const TileInfo * const tile_info = &this_tile->tile_info;
|
||||||
TOKENEXTRA *tok = cpi->tile_tok[tile_row][tile_col];
|
TOKENEXTRA *tok = cpi->tile_tok[tile_row][tile_col];
|
||||||
|
const int mi_row_start = tile_info->mi_row_start;
|
||||||
|
const int mi_row_end = tile_info->mi_row_end;
|
||||||
int mi_row;
|
int mi_row;
|
||||||
|
|
||||||
// Set up pointers to per thread motion search counters.
|
// Set up pointers to per thread motion search counters.
|
||||||
td->mb.m_search_count_ptr = &td->rd_counts.m_search_count;
|
td->mb.m_search_count_ptr = &td->rd_counts.m_search_count;
|
||||||
td->mb.ex_search_count_ptr = &td->rd_counts.ex_search_count;
|
td->mb.ex_search_count_ptr = &td->rd_counts.ex_search_count;
|
||||||
|
|
||||||
for (mi_row = tile_info->mi_row_start; mi_row < tile_info->mi_row_end;
|
for (mi_row = mi_row_start; mi_row < mi_row_end; mi_row += MI_BLOCK_SIZE) {
|
||||||
mi_row += MI_BLOCK_SIZE) {
|
|
||||||
if (cpi->sf.use_nonrd_pick_mode)
|
if (cpi->sf.use_nonrd_pick_mode)
|
||||||
encode_nonrd_sb_row(cpi, td, this_tile, mi_row, &tok);
|
encode_nonrd_sb_row(cpi, td, this_tile, mi_row, &tok);
|
||||||
else
|
else
|
||||||
@@ -4167,10 +4171,10 @@ static void encode_frame_internal(VP9_COMP *cpi) {
|
|||||||
vpx_usec_timer_start(&emr_timer);
|
vpx_usec_timer_start(&emr_timer);
|
||||||
|
|
||||||
#if CONFIG_FP_MB_STATS
|
#if CONFIG_FP_MB_STATS
|
||||||
if (cpi->use_fp_mb_stats) {
|
if (cpi->use_fp_mb_stats) {
|
||||||
input_fpmb_stats(&cpi->twopass.firstpass_mb_stats, cm,
|
input_fpmb_stats(&cpi->twopass.firstpass_mb_stats, cm,
|
||||||
&cpi->twopass.this_frame_mb_stats);
|
&cpi->twopass.this_frame_mb_stats);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// If allowed, encoding tiles in parallel with one thread handling one tile.
|
// If allowed, encoding tiles in parallel with one thread handling one tile.
|
||||||
@@ -4488,8 +4492,8 @@ static void encode_superblock(VP9_COMP *cpi, ThreadData *td,
|
|||||||
} else {
|
} else {
|
||||||
mi->tx_size = (bsize >= BLOCK_8X8) ? mi->tx_size : TX_4X4;
|
mi->tx_size = (bsize >= BLOCK_8X8) ? mi->tx_size : TX_4X4;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
++td->counts->tx.tx_totals[mi->tx_size];
|
++td->counts->tx.tx_totals[mi->tx_size];
|
||||||
++td->counts->tx.tx_totals[get_uv_tx_size(mi, &xd->plane[1])];
|
++td->counts->tx.tx_totals[get_uv_tx_size(mi, &xd->plane[1])];
|
||||||
if (cm->seg.enabled && cpi->oxcf.aq_mode == CYCLIC_REFRESH_AQ)
|
if (cm->seg.enabled && cpi->oxcf.aq_mode == CYCLIC_REFRESH_AQ)
|
||||||
|
@@ -135,11 +135,16 @@ static INLINE void Scale2Ratio(VPX_SCALING mode, int *hr, int *hs) {
|
|||||||
// so memset cannot be used, instead only inactive blocks should be reset.
|
// so memset cannot be used, instead only inactive blocks should be reset.
|
||||||
static void suppress_active_map(VP9_COMP *cpi) {
|
static void suppress_active_map(VP9_COMP *cpi) {
|
||||||
unsigned char *const seg_map = cpi->segmentation_map;
|
unsigned char *const seg_map = cpi->segmentation_map;
|
||||||
int i;
|
|
||||||
if (cpi->active_map.enabled || cpi->active_map.update)
|
if (cpi->active_map.enabled || cpi->active_map.update) {
|
||||||
for (i = 0; i < cpi->common.mi_rows * cpi->common.mi_cols; ++i)
|
const int rows = cpi->common.mi_rows;
|
||||||
|
const int cols = cpi->common.mi_cols;
|
||||||
|
int i;
|
||||||
|
|
||||||
|
for (i = 0; i < rows * cols; ++i)
|
||||||
if (seg_map[i] == AM_SEGMENT_ID_INACTIVE)
|
if (seg_map[i] == AM_SEGMENT_ID_INACTIVE)
|
||||||
seg_map[i] = AM_SEGMENT_ID_ACTIVE;
|
seg_map[i] = AM_SEGMENT_ID_ACTIVE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void apply_active_map(VP9_COMP *cpi) {
|
static void apply_active_map(VP9_COMP *cpi) {
|
||||||
|
@@ -455,7 +455,7 @@ typedef struct VP9_COMP {
|
|||||||
uint8_t *segmentation_map;
|
uint8_t *segmentation_map;
|
||||||
|
|
||||||
// segment threashold for encode breakout
|
// segment threashold for encode breakout
|
||||||
int segment_encode_breakout[MAX_SEGMENTS];
|
int segment_encode_breakout[MAX_SEGMENTS];
|
||||||
|
|
||||||
CYCLIC_REFRESH *cyclic_refresh;
|
CYCLIC_REFRESH *cyclic_refresh;
|
||||||
ActiveMap active_map;
|
ActiveMap active_map;
|
||||||
@@ -477,11 +477,10 @@ typedef struct VP9_COMP {
|
|||||||
|
|
||||||
YV12_BUFFER_CONFIG alt_ref_buffer;
|
YV12_BUFFER_CONFIG alt_ref_buffer;
|
||||||
|
|
||||||
|
|
||||||
#if CONFIG_INTERNAL_STATS
|
#if CONFIG_INTERNAL_STATS
|
||||||
unsigned int mode_chosen_counts[MAX_MODES];
|
unsigned int mode_chosen_counts[MAX_MODES];
|
||||||
|
|
||||||
int count;
|
int count;
|
||||||
uint64_t total_sq_error;
|
uint64_t total_sq_error;
|
||||||
uint64_t total_samples;
|
uint64_t total_samples;
|
||||||
ImageStat psnr;
|
ImageStat psnr;
|
||||||
|
@@ -153,85 +153,85 @@ static void output_fpmb_stats(uint8_t *this_frame_mb_stats, VP9_COMMON *cm,
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
static void zero_stats(FIRSTPASS_STATS *section) {
|
static void zero_stats(FIRSTPASS_STATS *section) {
|
||||||
section->frame = 0.0;
|
section->frame = 0.0;
|
||||||
section->weight = 0.0;
|
section->weight = 0.0;
|
||||||
section->intra_error = 0.0;
|
section->intra_error = 0.0;
|
||||||
section->coded_error = 0.0;
|
section->coded_error = 0.0;
|
||||||
section->sr_coded_error = 0.0;
|
section->sr_coded_error = 0.0;
|
||||||
section->pcnt_inter = 0.0;
|
section->pcnt_inter = 0.0;
|
||||||
section->pcnt_motion = 0.0;
|
section->pcnt_motion = 0.0;
|
||||||
section->pcnt_second_ref = 0.0;
|
section->pcnt_second_ref = 0.0;
|
||||||
section->pcnt_neutral = 0.0;
|
section->pcnt_neutral = 0.0;
|
||||||
section->intra_skip_pct = 0.0;
|
section->intra_skip_pct = 0.0;
|
||||||
section->intra_smooth_pct = 0.0;
|
section->intra_smooth_pct = 0.0;
|
||||||
section->inactive_zone_rows = 0.0;
|
section->inactive_zone_rows = 0.0;
|
||||||
section->inactive_zone_cols = 0.0;
|
section->inactive_zone_cols = 0.0;
|
||||||
section->MVr = 0.0;
|
section->MVr = 0.0;
|
||||||
section->mvr_abs = 0.0;
|
section->mvr_abs = 0.0;
|
||||||
section->MVc = 0.0;
|
section->MVc = 0.0;
|
||||||
section->mvc_abs = 0.0;
|
section->mvc_abs = 0.0;
|
||||||
section->MVrv = 0.0;
|
section->MVrv = 0.0;
|
||||||
section->MVcv = 0.0;
|
section->MVcv = 0.0;
|
||||||
section->mv_in_out_count = 0.0;
|
section->mv_in_out_count = 0.0;
|
||||||
section->new_mv_count = 0.0;
|
section->new_mv_count = 0.0;
|
||||||
section->count = 0.0;
|
section->count = 0.0;
|
||||||
section->duration = 1.0;
|
section->duration = 1.0;
|
||||||
section->spatial_layer_id = 0;
|
section->spatial_layer_id = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void accumulate_stats(FIRSTPASS_STATS *section,
|
static void accumulate_stats(FIRSTPASS_STATS *section,
|
||||||
const FIRSTPASS_STATS *frame) {
|
const FIRSTPASS_STATS *frame) {
|
||||||
section->frame += frame->frame;
|
section->frame += frame->frame;
|
||||||
section->weight += frame->weight;
|
section->weight += frame->weight;
|
||||||
section->spatial_layer_id = frame->spatial_layer_id;
|
section->spatial_layer_id = frame->spatial_layer_id;
|
||||||
section->intra_error += frame->intra_error;
|
section->intra_error += frame->intra_error;
|
||||||
section->coded_error += frame->coded_error;
|
section->coded_error += frame->coded_error;
|
||||||
section->sr_coded_error += frame->sr_coded_error;
|
section->sr_coded_error += frame->sr_coded_error;
|
||||||
section->pcnt_inter += frame->pcnt_inter;
|
section->pcnt_inter += frame->pcnt_inter;
|
||||||
section->pcnt_motion += frame->pcnt_motion;
|
section->pcnt_motion += frame->pcnt_motion;
|
||||||
section->pcnt_second_ref += frame->pcnt_second_ref;
|
section->pcnt_second_ref += frame->pcnt_second_ref;
|
||||||
section->pcnt_neutral += frame->pcnt_neutral;
|
section->pcnt_neutral += frame->pcnt_neutral;
|
||||||
section->intra_skip_pct += frame->intra_skip_pct;
|
section->intra_skip_pct += frame->intra_skip_pct;
|
||||||
section->intra_smooth_pct += frame->intra_smooth_pct;
|
section->intra_smooth_pct += frame->intra_smooth_pct;
|
||||||
section->inactive_zone_rows += frame->inactive_zone_rows;
|
section->inactive_zone_rows += frame->inactive_zone_rows;
|
||||||
section->inactive_zone_cols += frame->inactive_zone_cols;
|
section->inactive_zone_cols += frame->inactive_zone_cols;
|
||||||
section->MVr += frame->MVr;
|
section->MVr += frame->MVr;
|
||||||
section->mvr_abs += frame->mvr_abs;
|
section->mvr_abs += frame->mvr_abs;
|
||||||
section->MVc += frame->MVc;
|
section->MVc += frame->MVc;
|
||||||
section->mvc_abs += frame->mvc_abs;
|
section->mvc_abs += frame->mvc_abs;
|
||||||
section->MVrv += frame->MVrv;
|
section->MVrv += frame->MVrv;
|
||||||
section->MVcv += frame->MVcv;
|
section->MVcv += frame->MVcv;
|
||||||
section->mv_in_out_count += frame->mv_in_out_count;
|
section->mv_in_out_count += frame->mv_in_out_count;
|
||||||
section->new_mv_count += frame->new_mv_count;
|
section->new_mv_count += frame->new_mv_count;
|
||||||
section->count += frame->count;
|
section->count += frame->count;
|
||||||
section->duration += frame->duration;
|
section->duration += frame->duration;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void subtract_stats(FIRSTPASS_STATS *section,
|
static void subtract_stats(FIRSTPASS_STATS *section,
|
||||||
const FIRSTPASS_STATS *frame) {
|
const FIRSTPASS_STATS *frame) {
|
||||||
section->frame -= frame->frame;
|
section->frame -= frame->frame;
|
||||||
section->weight -= frame->weight;
|
section->weight -= frame->weight;
|
||||||
section->intra_error -= frame->intra_error;
|
section->intra_error -= frame->intra_error;
|
||||||
section->coded_error -= frame->coded_error;
|
section->coded_error -= frame->coded_error;
|
||||||
section->sr_coded_error -= frame->sr_coded_error;
|
section->sr_coded_error -= frame->sr_coded_error;
|
||||||
section->pcnt_inter -= frame->pcnt_inter;
|
section->pcnt_inter -= frame->pcnt_inter;
|
||||||
section->pcnt_motion -= frame->pcnt_motion;
|
section->pcnt_motion -= frame->pcnt_motion;
|
||||||
section->pcnt_second_ref -= frame->pcnt_second_ref;
|
section->pcnt_second_ref -= frame->pcnt_second_ref;
|
||||||
section->pcnt_neutral -= frame->pcnt_neutral;
|
section->pcnt_neutral -= frame->pcnt_neutral;
|
||||||
section->intra_skip_pct -= frame->intra_skip_pct;
|
section->intra_skip_pct -= frame->intra_skip_pct;
|
||||||
section->intra_smooth_pct -= frame->intra_smooth_pct;
|
section->intra_smooth_pct -= frame->intra_smooth_pct;
|
||||||
section->inactive_zone_rows -= frame->inactive_zone_rows;
|
section->inactive_zone_rows -= frame->inactive_zone_rows;
|
||||||
section->inactive_zone_cols -= frame->inactive_zone_cols;
|
section->inactive_zone_cols -= frame->inactive_zone_cols;
|
||||||
section->MVr -= frame->MVr;
|
section->MVr -= frame->MVr;
|
||||||
section->mvr_abs -= frame->mvr_abs;
|
section->mvr_abs -= frame->mvr_abs;
|
||||||
section->MVc -= frame->MVc;
|
section->MVc -= frame->MVc;
|
||||||
section->mvc_abs -= frame->mvc_abs;
|
section->mvc_abs -= frame->mvc_abs;
|
||||||
section->MVrv -= frame->MVrv;
|
section->MVrv -= frame->MVrv;
|
||||||
section->MVcv -= frame->MVcv;
|
section->MVcv -= frame->MVcv;
|
||||||
section->mv_in_out_count -= frame->mv_in_out_count;
|
section->mv_in_out_count -= frame->mv_in_out_count;
|
||||||
section->new_mv_count -= frame->new_mv_count;
|
section->new_mv_count -= frame->new_mv_count;
|
||||||
section->count -= frame->count;
|
section->count -= frame->count;
|
||||||
section->duration -= frame->duration;
|
section->duration -= frame->duration;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Calculate an active area of the image that discounts formatting
|
// Calculate an active area of the image that discounts formatting
|
||||||
|
@@ -89,7 +89,7 @@ struct lookahead_ctx *vp9_lookahead_init(unsigned int width,
|
|||||||
|
|
||||||
#define USE_PARTIAL_COPY 0
|
#define USE_PARTIAL_COPY 0
|
||||||
|
|
||||||
int vp9_lookahead_push(struct lookahead_ctx *ctx, YV12_BUFFER_CONFIG *src,
|
int vp9_lookahead_push(struct lookahead_ctx *ctx, YV12_BUFFER_CONFIG *src,
|
||||||
int64_t ts_start, int64_t ts_end,
|
int64_t ts_start, int64_t ts_end,
|
||||||
#if CONFIG_VP9_HIGHBITDEPTH
|
#if CONFIG_VP9_HIGHBITDEPTH
|
||||||
int use_highbitdepth,
|
int use_highbitdepth,
|
||||||
|
@@ -349,6 +349,7 @@ static void model_rd_norm(int xsq_q10, int *r_q10, int *d_q10) {
|
|||||||
38, 28, 21, 16, 12, 10, 8, 6,
|
38, 28, 21, 16, 12, 10, 8, 6,
|
||||||
5, 3, 2, 1, 1, 1, 0, 0,
|
5, 3, 2, 1, 1, 1, 0, 0,
|
||||||
};
|
};
|
||||||
|
|
||||||
// Normalized distortion:
|
// Normalized distortion:
|
||||||
// This table models the normalized distortion for a Laplacian source
|
// This table models the normalized distortion for a Laplacian source
|
||||||
// with given variance when quantized with a uniform quantizer
|
// with given variance when quantized with a uniform quantizer
|
||||||
|
@@ -3400,9 +3400,10 @@ void vp9_rd_pick_inter_mode_sb(VP9_COMP *cpi,
|
|||||||
rate2 += skip_cost0;
|
rate2 += skip_cost0;
|
||||||
} else {
|
} else {
|
||||||
// FIXME(rbultje) make this work for splitmv also
|
// FIXME(rbultje) make this work for splitmv also
|
||||||
|
assert(total_sse >= 0);
|
||||||
|
|
||||||
rate2 += skip_cost1;
|
rate2 += skip_cost1;
|
||||||
distortion2 = total_sse;
|
distortion2 = total_sse;
|
||||||
assert(total_sse >= 0);
|
|
||||||
rate2 -= (rate_y + rate_uv);
|
rate2 -= (rate_y + rate_uv);
|
||||||
this_skip2 = 1;
|
this_skip2 = 1;
|
||||||
}
|
}
|
||||||
|
@@ -433,9 +433,8 @@ static void temporal_filter_iterate_c(VP9_COMP *cpi,
|
|||||||
vp9_highbd_temporal_filter_apply_c(f->u_buffer + mb_uv_offset,
|
vp9_highbd_temporal_filter_apply_c(f->u_buffer + mb_uv_offset,
|
||||||
f->uv_stride, predictor + 256,
|
f->uv_stride, predictor + 256,
|
||||||
mb_uv_width, mb_uv_height,
|
mb_uv_width, mb_uv_height,
|
||||||
adj_strength,
|
adj_strength, filter_weight,
|
||||||
filter_weight, accumulator + 256,
|
accumulator + 256, count + 256);
|
||||||
count + 256);
|
|
||||||
vp9_highbd_temporal_filter_apply_c(f->v_buffer + mb_uv_offset,
|
vp9_highbd_temporal_filter_apply_c(f->v_buffer + mb_uv_offset,
|
||||||
f->uv_stride, predictor + 512,
|
f->uv_stride, predictor + 512,
|
||||||
mb_uv_width, mb_uv_height,
|
mb_uv_width, mb_uv_height,
|
||||||
|
Reference in New Issue
Block a user