OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved. | 2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 319 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
330 sf->inter_mode_mask[BLOCK_32X64] = INTER_NEAREST_NEW_ZERO; | 330 sf->inter_mode_mask[BLOCK_32X64] = INTER_NEAREST_NEW_ZERO; |
331 sf->inter_mode_mask[BLOCK_64X32] = INTER_NEAREST_NEW_ZERO; | 331 sf->inter_mode_mask[BLOCK_64X32] = INTER_NEAREST_NEW_ZERO; |
332 sf->inter_mode_mask[BLOCK_64X64] = INTER_NEAREST_NEW_ZERO; | 332 sf->inter_mode_mask[BLOCK_64X64] = INTER_NEAREST_NEW_ZERO; |
333 sf->adaptive_rd_thresh = 2; | 333 sf->adaptive_rd_thresh = 2; |
334 // This feature is only enabled when partition search is disabled. | 334 // This feature is only enabled when partition search is disabled. |
335 sf->reuse_inter_pred_sby = 1; | 335 sf->reuse_inter_pred_sby = 1; |
336 sf->partition_search_breakout_rate_thr = 200; | 336 sf->partition_search_breakout_rate_thr = 200; |
337 sf->coeff_prob_appx_step = 4; | 337 sf->coeff_prob_appx_step = 4; |
338 sf->use_fast_coef_updates = is_keyframe ? TWO_LOOP : ONE_LOOP_REDUCED; | 338 sf->use_fast_coef_updates = is_keyframe ? TWO_LOOP : ONE_LOOP_REDUCED; |
339 sf->mode_search_skip_flags = FLAG_SKIP_INTRA_DIRMISMATCH; | 339 sf->mode_search_skip_flags = FLAG_SKIP_INTRA_DIRMISMATCH; |
| 340 sf->tx_size_search_method = is_keyframe ? USE_LARGESTALL : USE_TX_8X8; |
340 | 341 |
341 if (!is_keyframe) { | 342 if (!is_keyframe) { |
342 int i; | 343 int i; |
343 if (content == VP9E_CONTENT_SCREEN) { | 344 if (content == VP9E_CONTENT_SCREEN) { |
344 for (i = 0; i < BLOCK_SIZES; ++i) | 345 for (i = 0; i < BLOCK_SIZES; ++i) |
345 sf->intra_y_mode_bsize_mask[i] = INTRA_DC_TM_H_V; | 346 sf->intra_y_mode_bsize_mask[i] = INTRA_DC_TM_H_V; |
346 } else { | 347 } else { |
347 for (i = 0; i < BLOCK_SIZES; ++i) | 348 for (i = 0; i < BLOCK_SIZES; ++i) |
348 if (i >= BLOCK_16X16) | 349 if (i >= BLOCK_16X16) |
349 sf->intra_y_mode_bsize_mask[i] = INTRA_DC; | 350 sf->intra_y_mode_bsize_mask[i] = INTRA_DC; |
350 else | 351 else |
351 // Use H and V intra mode for block sizes <= 16X16. | 352 // Use H and V intra mode for block sizes <= 16X16. |
352 sf->intra_y_mode_bsize_mask[i] = INTRA_DC_H_V; | 353 sf->intra_y_mode_bsize_mask[i] = INTRA_DC_H_V; |
353 } | 354 } |
354 } | 355 } |
355 } | 356 } |
356 | 357 |
357 if (speed >= 6) { | 358 if (speed >= 6) { |
358 // Adaptively switch between SOURCE_VAR_BASED_PARTITION and FIXED_PARTITION. | 359 // Adaptively switch between SOURCE_VAR_BASED_PARTITION and FIXED_PARTITION. |
359 sf->partition_search_type = VAR_BASED_PARTITION; | 360 sf->partition_search_type = VAR_BASED_PARTITION; |
360 // Turn on this to use non-RD key frame coding mode. | 361 // Turn on this to use non-RD key frame coding mode. |
361 sf->use_nonrd_pick_mode = 1; | 362 sf->use_nonrd_pick_mode = 1; |
362 sf->mv.search_method = NSTEP; | 363 sf->mv.search_method = NSTEP; |
363 sf->tx_size_search_method = is_keyframe ? USE_LARGESTALL : USE_TX_8X8; | |
364 sf->mv.reduce_first_step_size = 1; | 364 sf->mv.reduce_first_step_size = 1; |
365 sf->skip_encode_sb = 0; | 365 sf->skip_encode_sb = 0; |
366 } | 366 } |
367 | 367 |
368 if (speed >= 7) { | 368 if (speed >= 7) { |
369 sf->adaptive_rd_thresh = 3; | 369 sf->adaptive_rd_thresh = 3; |
370 sf->mv.search_method = FAST_DIAMOND; | 370 sf->mv.search_method = FAST_DIAMOND; |
371 sf->mv.fullpel_search_step_param = 10; | 371 sf->mv.fullpel_search_step_param = 10; |
372 } | 372 } |
373 if (speed >= 8) { | 373 if (speed >= 8) { |
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
518 | 518 |
519 x->optimize = sf->optimize_coefficients == 1 && oxcf->pass != 1; | 519 x->optimize = sf->optimize_coefficients == 1 && oxcf->pass != 1; |
520 | 520 |
521 x->min_partition_size = sf->default_min_partition_size; | 521 x->min_partition_size = sf->default_min_partition_size; |
522 x->max_partition_size = sf->default_max_partition_size; | 522 x->max_partition_size = sf->default_max_partition_size; |
523 | 523 |
524 if (!cpi->oxcf.frame_periodic_boost) { | 524 if (!cpi->oxcf.frame_periodic_boost) { |
525 sf->max_delta_qindex = 0; | 525 sf->max_delta_qindex = 0; |
526 } | 526 } |
527 } | 527 } |
OLD | NEW |