From 7897059e8bfbab57d997df8b0bb4821ce9612268 Mon Sep 17 00:00:00 2001 From: Dmitry Kovalev Date: Thu, 4 Sep 2014 14:51:29 -0700 Subject: [PATCH] Adding temp cpi var. Change-Id: Ifa3c1cc2317c1bc21d1042b9662b35056d1e9ed0 --- vp9/vp9_cx_iface.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/vp9/vp9_cx_iface.c b/vp9/vp9_cx_iface.c index 26db30cd8..945dcbf5f 100644 --- a/vp9/vp9_cx_iface.c +++ b/vp9/vp9_cx_iface.c @@ -837,18 +837,19 @@ static vpx_codec_err_t encoder_encode(vpx_codec_alg_priv_t *ctx, vpx_enc_frame_flags_t flags, unsigned long deadline) { vpx_codec_err_t res = VPX_CODEC_OK; + VP9_COMP *const cpi = ctx->cpi; const vpx_rational_t *const timebase = &ctx->cfg.g_timebase; if (img != NULL) { res = validate_img(ctx, img); // TODO(jzern) the checks related to cpi's validity should be treated as a // failure condition, encoder setup is done fully in init() currently. - if (res == VPX_CODEC_OK && ctx->cpi != NULL && ctx->cx_data == NULL) { + if (res == VPX_CODEC_OK && cpi != NULL && ctx->cx_data == NULL) { // There's no codec control for multiple alt-refs so check the encoder // instance for its status to determine the compressed data size. ctx->cx_data_sz = ctx->cfg.g_w * ctx->cfg.g_h * get_image_bps(img) / 8 * - (ctx->cpi->multi_arf_allowed ? 8 : 2); + (cpi->multi_arf_allowed ? 8 : 2); if (ctx->cx_data_sz < 4096) ctx->cx_data_sz = 4096; ctx->cx_data = (unsigned char *)malloc(ctx->cx_data_sz); @@ -868,7 +869,7 @@ static vpx_codec_err_t encoder_encode(vpx_codec_alg_priv_t *ctx, return VPX_CODEC_INVALID_PARAM; } - vp9_apply_encoding_flags(ctx->cpi, flags); + vp9_apply_encoding_flags(cpi, flags); // Handle fixed keyframe intervals if (ctx->cfg.kf_mode == VPX_KF_AUTO && @@ -880,7 +881,7 @@ static vpx_codec_err_t encoder_encode(vpx_codec_alg_priv_t *ctx, } // Initialize the encoder instance on the first frame. - if (res == VPX_CODEC_OK && ctx->cpi != NULL) { + if (res == VPX_CODEC_OK && cpi != NULL) { unsigned int lib_flags = 0; YV12_BUFFER_CONFIG sd; int64_t dst_time_stamp = timebase_units_to_ticks(timebase, pts); @@ -891,16 +892,15 @@ static vpx_codec_err_t encoder_encode(vpx_codec_alg_priv_t *ctx, // Set up internal flags if (ctx->base.init_flags & VPX_CODEC_USE_PSNR) - ((VP9_COMP *)ctx->cpi)->b_calculate_psnr = 1; + cpi->b_calculate_psnr = 1; if (img != NULL) { res = image2yuvconfig(img, &sd); // Store the original flags in to the frame buffer. Will extract the // key frame flag when we actually encode this frame. - if (vp9_receive_raw_frame(ctx->cpi, flags, + if (vp9_receive_raw_frame(cpi, flags, &sd, dst_time_stamp, dst_end_time_stamp)) { - VP9_COMP *cpi = (VP9_COMP *)ctx->cpi; res = update_error_state(ctx, &cpi->common.error); } } @@ -925,11 +925,10 @@ static vpx_codec_err_t encoder_encode(vpx_codec_alg_priv_t *ctx, } while (cx_data_sz >= ctx->cx_data_sz / 2 && - -1 != vp9_get_compressed_data(ctx->cpi, &lib_flags, &size, + -1 != vp9_get_compressed_data(cpi, &lib_flags, &size, cx_data, &dst_time_stamp, &dst_end_time_stamp, !img)) { if (size) { - VP9_COMP *const cpi = (VP9_COMP *)ctx->cpi; vpx_codec_cx_pkt_t pkt; #if CONFIG_SPATIAL_SVC