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 429 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
440 printf("encode_breakout: %d\n", oxcf->encode_breakout); | 440 printf("encode_breakout: %d\n", oxcf->encode_breakout); |
441 */ | 441 */ |
442 return VPX_CODEC_OK; | 442 return VPX_CODEC_OK; |
443 } | 443 } |
444 | 444 |
445 static vpx_codec_err_t vp8e_set_config(vpx_codec_alg_priv_t *ctx, | 445 static vpx_codec_err_t vp8e_set_config(vpx_codec_alg_priv_t *ctx, |
446 const vpx_codec_enc_cfg_t *cfg) | 446 const vpx_codec_enc_cfg_t *cfg) |
447 { | 447 { |
448 vpx_codec_err_t res; | 448 vpx_codec_err_t res; |
449 | 449 |
450 if (cfg->g_w != ctx->cfg.g_w || cfg->g_h != ctx->cfg.g_h) | 450 if (((cfg->g_w != ctx->cfg.g_w) || (cfg->g_h != ctx->cfg.g_h)) |
451 { | 451 && (cfg->g_lag_in_frames > 1 || cfg->g_pass != VPX_RC_ONE_PASS)) |
452 if (cfg->g_lag_in_frames > 1 || cfg->g_pass != VPX_RC_ONE_PASS) | 452 ERROR("Cannot change width or height after initialization"); |
453 ERROR("Cannot change width or height after initialization"); | |
454 if ((ctx->cpi->initial_width && (int)cfg->g_w > ctx->cpi->initial_width)
|| | |
455 (ctx->cpi->initial_height && (int)cfg->g_h > ctx->cpi->initial_heigh
t)) | |
456 ERROR("Cannot increast width or height larger than their initial val
ues"); | |
457 } | |
458 | 453 |
459 /* Prevent increasing lag_in_frames. This check is stricter than it needs | 454 /* Prevent increasing lag_in_frames. This check is stricter than it needs |
460 * to be -- the limit is not increasing past the first lag_in_frames | 455 * to be -- the limit is not increasing past the first lag_in_frames |
461 * value, but we don't track the initial config, only the last successful | 456 * value, but we don't track the initial config, only the last successful |
462 * config. | 457 * config. |
463 */ | 458 */ |
464 if ((cfg->g_lag_in_frames > ctx->cfg.g_lag_in_frames)) | 459 if ((cfg->g_lag_in_frames > ctx->cfg.g_lag_in_frames)) |
465 ERROR("Cannot increase lag_in_frames"); | 460 ERROR("Cannot increase lag_in_frames"); |
466 | 461 |
467 res = validate_config(ctx, cfg, &ctx->vp8_cfg, 0); | 462 res = validate_config(ctx, cfg, &ctx->vp8_cfg, 0); |
(...skipping 923 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1391 1, /* 1 cfg map */ | 1386 1, /* 1 cfg map */ |
1392 vp8e_usage_cfg_map, /* vpx_codec_enc_cfg_map_t peek_si; */ | 1387 vp8e_usage_cfg_map, /* vpx_codec_enc_cfg_map_t peek_si; */ |
1393 vp8e_encode, /* vpx_codec_encode_fn_t encode; */ | 1388 vp8e_encode, /* vpx_codec_encode_fn_t encode; */ |
1394 vp8e_get_cxdata, /* vpx_codec_get_cx_data_fn_t frame_get; */ | 1389 vp8e_get_cxdata, /* vpx_codec_get_cx_data_fn_t frame_get; */ |
1395 vp8e_set_config, | 1390 vp8e_set_config, |
1396 NULL, | 1391 NULL, |
1397 vp8e_get_preview, | 1392 vp8e_get_preview, |
1398 vp8e_mr_alloc_mem, | 1393 vp8e_mr_alloc_mem, |
1399 } /* encoder functions */ | 1394 } /* encoder functions */ |
1400 }; | 1395 }; |
OLD | NEW |