Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(73)

Side by Side Diff: source/libvpx/vp9/vp9_cx_iface.c

Issue 23600008: libvpx: Pull from upstream (Closed) Base URL: svn://chrome-svn/chrome/trunk/deps/third_party/libvpx/
Patch Set: Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « source/libvpx/vp9/vp9_common.mk ('k') | source/libvpx/vp9/vp9_dx_iface.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 int usage; 44 int usage;
45 struct vp9_extracfg cfg; 45 struct vp9_extracfg cfg;
46 }; 46 };
47 47
48 static const struct extraconfig_map extracfg_map[] = { 48 static const struct extraconfig_map extracfg_map[] = {
49 { 49 {
50 0, 50 0,
51 { 51 {
52 NULL, 52 NULL,
53 0, /* cpu_used */ 53 0, /* cpu_used */
54 0, /* enable_auto_alt_ref */ 54 1, /* enable_auto_alt_ref */
55 0, /* noise_sensitivity */ 55 0, /* noise_sensitivity */
56 0, /* Sharpness */ 56 0, /* Sharpness */
57 0, /* static_thresh */ 57 0, /* static_thresh */
58 0, /* tile_columns */ 58 0, /* tile_columns */
59 0, /* tile_rows */ 59 0, /* tile_rows */
60 0, /* arnr_max_frames */ 60 7, /* arnr_max_frames */
61 3, /* arnr_strength */ 61 5, /* arnr_strength */
62 3, /* arnr_type*/ 62 3, /* arnr_type*/
63 0, /* experimental mode */ 63 0, /* experimental mode */
64 0, /* tuning*/ 64 0, /* tuning*/
65 10, /* cq_level */ 65 10, /* cq_level */
66 0, /* rc_max_intra_bitrate_pct */ 66 0, /* rc_max_intra_bitrate_pct */
67 0, /* lossless */ 67 0, /* lossless */
68 0, /* frame_parallel_decoding_mode */ 68 0, /* frame_parallel_decoding_mode */
69 } 69 }
70 } 70 }
71 }; 71 };
(...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after
404 404
405 static vpx_codec_err_t set_param(vpx_codec_alg_priv_t *ctx, 405 static vpx_codec_err_t set_param(vpx_codec_alg_priv_t *ctx,
406 int ctrl_id, 406 int ctrl_id,
407 va_list args) { 407 va_list args) {
408 vpx_codec_err_t res = VPX_CODEC_OK; 408 vpx_codec_err_t res = VPX_CODEC_OK;
409 struct vp9_extracfg xcfg = ctx->vp8_cfg; 409 struct vp9_extracfg xcfg = ctx->vp8_cfg;
410 410
411 #define MAP(id, var) case id: var = CAST(id, args); break; 411 #define MAP(id, var) case id: var = CAST(id, args); break;
412 412
413 switch (ctrl_id) { 413 switch (ctrl_id) {
414 MAP(VP8E_SET_CPUUSED, xcfg.cpu_used); 414 MAP(VP8E_SET_CPUUSED, xcfg.cpu_used);
415 MAP(VP8E_SET_ENABLEAUTOALTREF, xcfg.enable_auto_alt_ref); 415 MAP(VP8E_SET_ENABLEAUTOALTREF, xcfg.enable_auto_alt_ref);
416 MAP(VP8E_SET_NOISE_SENSITIVITY, xcfg.noise_sensitivity); 416 MAP(VP8E_SET_NOISE_SENSITIVITY, xcfg.noise_sensitivity);
417 MAP(VP8E_SET_SHARPNESS, xcfg.Sharpness); 417 MAP(VP8E_SET_SHARPNESS, xcfg.Sharpness);
418 MAP(VP8E_SET_STATIC_THRESHOLD, xcfg.static_thresh); 418 MAP(VP8E_SET_STATIC_THRESHOLD, xcfg.static_thresh);
419 MAP(VP9E_SET_TILE_COLUMNS, xcfg.tile_columns); 419 MAP(VP9E_SET_TILE_COLUMNS, xcfg.tile_columns);
420 MAP(VP9E_SET_TILE_ROWS, xcfg.tile_rows); 420 MAP(VP9E_SET_TILE_ROWS, xcfg.tile_rows);
421 421 MAP(VP8E_SET_ARNR_MAXFRAMES, xcfg.arnr_max_frames);
422 MAP(VP8E_SET_ARNR_MAXFRAMES, xcfg.arnr_max_frames); 422 MAP(VP8E_SET_ARNR_STRENGTH, xcfg.arnr_strength);
423 MAP(VP8E_SET_ARNR_STRENGTH, xcfg.arnr_strength); 423 MAP(VP8E_SET_ARNR_TYPE, xcfg.arnr_type);
424 MAP(VP8E_SET_ARNR_TYPE, xcfg.arnr_type); 424 MAP(VP8E_SET_TUNING, xcfg.tuning);
425 MAP(VP8E_SET_TUNING, xcfg.tuning); 425 MAP(VP8E_SET_CQ_LEVEL, xcfg.cq_level);
426 MAP(VP8E_SET_CQ_LEVEL, xcfg.cq_level); 426 MAP(VP8E_SET_MAX_INTRA_BITRATE_PCT, xcfg.rc_max_intra_bitrate_pct);
427 MAP(VP8E_SET_MAX_INTRA_BITRATE_PCT, xcfg.rc_max_intra_bitrate_pct); 427 MAP(VP9E_SET_LOSSLESS, xcfg.lossless);
428 MAP(VP9E_SET_LOSSLESS, xcfg.lossless);
429 MAP(VP9E_SET_FRAME_PARALLEL_DECODING, xcfg.frame_parallel_decoding_mode); 428 MAP(VP9E_SET_FRAME_PARALLEL_DECODING, xcfg.frame_parallel_decoding_mode);
430 } 429 }
431 430
432 res = validate_config(ctx, &ctx->cfg, &xcfg); 431 res = validate_config(ctx, &ctx->cfg, &xcfg);
433 432
434 if (!res) { 433 if (!res) {
435 ctx->vp8_cfg = xcfg; 434 ctx->vp8_cfg = xcfg;
436 set_vp9e_config(&ctx->oxcf, ctx->cfg, ctx->vp8_cfg); 435 set_vp9e_config(&ctx->oxcf, ctx->cfg, ctx->vp8_cfg);
437 vp9_change_config(ctx->cpi, &ctx->oxcf); 436 vp9_change_config(ctx->cpi, &ctx->oxcf);
438 } 437 }
(...skipping 580 matching lines...) Expand 10 before | Expand all | Expand 10 after
1019 {VP8E_SET_CPUUSED, set_param}, 1018 {VP8E_SET_CPUUSED, set_param},
1020 {VP8E_SET_NOISE_SENSITIVITY, set_param}, 1019 {VP8E_SET_NOISE_SENSITIVITY, set_param},
1021 {VP8E_SET_ENABLEAUTOALTREF, set_param}, 1020 {VP8E_SET_ENABLEAUTOALTREF, set_param},
1022 {VP8E_SET_SHARPNESS, set_param}, 1021 {VP8E_SET_SHARPNESS, set_param},
1023 {VP8E_SET_STATIC_THRESHOLD, set_param}, 1022 {VP8E_SET_STATIC_THRESHOLD, set_param},
1024 {VP9E_SET_TILE_COLUMNS, set_param}, 1023 {VP9E_SET_TILE_COLUMNS, set_param},
1025 {VP9E_SET_TILE_ROWS, set_param}, 1024 {VP9E_SET_TILE_ROWS, set_param},
1026 {VP8E_GET_LAST_QUANTIZER, get_param}, 1025 {VP8E_GET_LAST_QUANTIZER, get_param},
1027 {VP8E_GET_LAST_QUANTIZER_64, get_param}, 1026 {VP8E_GET_LAST_QUANTIZER_64, get_param},
1028 {VP8E_SET_ARNR_MAXFRAMES, set_param}, 1027 {VP8E_SET_ARNR_MAXFRAMES, set_param},
1029 {VP8E_SET_ARNR_STRENGTH, set_param}, 1028 {VP8E_SET_ARNR_STRENGTH, set_param},
1030 {VP8E_SET_ARNR_TYPE, set_param}, 1029 {VP8E_SET_ARNR_TYPE, set_param},
1031 {VP8E_SET_TUNING, set_param}, 1030 {VP8E_SET_TUNING, set_param},
1032 {VP8E_SET_CQ_LEVEL, set_param}, 1031 {VP8E_SET_CQ_LEVEL, set_param},
1033 {VP8E_SET_MAX_INTRA_BITRATE_PCT, set_param}, 1032 {VP8E_SET_MAX_INTRA_BITRATE_PCT, set_param},
1034 {VP9E_SET_LOSSLESS, set_param}, 1033 {VP9E_SET_LOSSLESS, set_param},
1035 {VP9E_SET_FRAME_PARALLEL_DECODING, set_param}, 1034 {VP9E_SET_FRAME_PARALLEL_DECODING, set_param},
1036 {VP9_GET_REFERENCE, get_reference}, 1035 {VP9_GET_REFERENCE, get_reference},
1037 { -1, NULL}, 1036 { -1, NULL},
1038 }; 1037 };
1039 1038
1040 static vpx_codec_enc_cfg_map_t vp9e_usage_cfg_map[] = { 1039 static vpx_codec_enc_cfg_map_t vp9e_usage_cfg_map[] = {
1041 { 1040 {
1042 0, 1041 0,
1043 { 1042 {
1044 0, /* g_usage */ 1043 0, /* g_usage */
1045 0, /* g_threads */ 1044 0, /* g_threads */
1046 0, /* g_profile */ 1045 0, /* g_profile */
1047 1046
1048 320, /* g_width */ 1047 320, /* g_width */
1049 240, /* g_height */ 1048 240, /* g_height */
1050 {1, 30}, /* g_timebase */ 1049 {1, 30}, /* g_timebase */
1051 1050
1052 0, /* g_error_resilient */ 1051 0, /* g_error_resilient */
1053 1052
1054 VPX_RC_ONE_PASS, /* g_pass */ 1053 VPX_RC_ONE_PASS, /* g_pass */
1055 1054
1056 0, /* g_lag_in_frames */ 1055 25, /* g_lag_in_frames */
1057 1056
1058 0, /* rc_dropframe_thresh */ 1057 0, /* rc_dropframe_thresh */
1059 0, /* rc_resize_allowed */ 1058 0, /* rc_resize_allowed */
1060 60, /* rc_resize_down_thresold */ 1059 60, /* rc_resize_down_thresold */
1061 30, /* rc_resize_up_thresold */ 1060 30, /* rc_resize_up_thresold */
1062 1061
1063 VPX_VBR, /* rc_end_usage */ 1062 VPX_VBR, /* rc_end_usage */
1064 #if VPX_ENCODER_ABI_VERSION > (1 + VPX_CODEC_ABI_VERSION) 1063 #if VPX_ENCODER_ABI_VERSION > (1 + VPX_CODEC_ABI_VERSION)
1065 {0}, /* rc_twopass_stats_in */ 1064 {0}, /* rc_twopass_stats_in */
1066 #endif 1065 #endif
1067 256, /* rc_target_bandwidth */ 1066 256, /* rc_target_bandwidth */
1068 4, /* rc_min_quantizer */ 1067 0, /* rc_min_quantizer */
1069 63, /* rc_max_quantizer */ 1068 63, /* rc_max_quantizer */
1070 100, /* rc_undershoot_pct */ 1069 100, /* rc_undershoot_pct */
1071 100, /* rc_overshoot_pct */ 1070 100, /* rc_overshoot_pct */
1072 1071
1073 6000, /* rc_max_buffer_size */ 1072 6000, /* rc_max_buffer_size */
1074 4000, /* rc_buffer_initial_size; */ 1073 4000, /* rc_buffer_initial_size; */
1075 5000, /* rc_buffer_optimal_size; */ 1074 5000, /* rc_buffer_optimal_size; */
1076 1075
1077 50, /* rc_two_pass_vbrbias */ 1076 50, /* rc_two_pass_vbrbias */
1078 0, /* rc_two_pass_vbrmin_section */ 1077 0, /* rc_two_pass_vbrmin_section */
1079 400, /* rc_two_pass_vbrmax_section */ 1078 2000, /* rc_two_pass_vbrmax_section */
1080 1079
1081 /* keyframing settings (kf) */ 1080 /* keyframing settings (kf) */
1082 VPX_KF_AUTO, /* g_kfmode*/ 1081 VPX_KF_AUTO, /* g_kfmode*/
1083 0, /* kf_min_dist */ 1082 0, /* kf_min_dist */
1084 9999, /* kf_max_dist */ 1083 9999, /* kf_max_dist */
1085 1084
1086 #if VPX_ENCODER_ABI_VERSION == (1 + VPX_CODEC_ABI_VERSION) 1085 #if VPX_ENCODER_ABI_VERSION == (1 + VPX_CODEC_ABI_VERSION)
1087 1, /* g_delete_first_pass_file */ 1086 1, /* g_delete_first_pass_file */
1088 "vp8.fpf" /* first pass filename */ 1087 "vp8.fpf" /* first pass filename */
1089 #endif 1088 #endif
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
1145 { 1144 {
1146 vp9e_usage_cfg_map, /* vpx_codec_enc_cfg_map_t peek_si; */ 1145 vp9e_usage_cfg_map, /* vpx_codec_enc_cfg_map_t peek_si; */
1147 vp9e_encode, /* vpx_codec_encode_fn_t encode; */ 1146 vp9e_encode, /* vpx_codec_encode_fn_t encode; */
1148 vp9e_get_cxdata, /* vpx_codec_get_cx_data_fn_t frame_get; */ 1147 vp9e_get_cxdata, /* vpx_codec_get_cx_data_fn_t frame_get; */
1149 vp9e_set_config, 1148 vp9e_set_config,
1150 NOT_IMPLEMENTED, 1149 NOT_IMPLEMENTED,
1151 vp9e_get_preview, 1150 vp9e_get_preview,
1152 } /* encoder functions */ 1151 } /* encoder functions */
1153 }; 1152 };
1154 #endif 1153 #endif
OLDNEW
« no previous file with comments | « source/libvpx/vp9/vp9_common.mk ('k') | source/libvpx/vp9/vp9_dx_iface.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698