From: Dmitry Kovalev Date: Thu, 17 Apr 2014 22:25:20 +0000 (-0700) Subject: Adding get_pass() function. X-Git-Tag: v1.4.0~1766^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=219a006b9c0d7cc994167d339ac96825cc4eff74;p=libvpx Adding get_pass() function. Change-Id: I43de248615b79828d5164b670e7358b8a520d075 --- diff --git a/vp9/encoder/vp9_onyx_if.c b/vp9/encoder/vp9_onyx_if.c index 5a7257338..1e0c11f43 100644 --- a/vp9/encoder/vp9_onyx_if.c +++ b/vp9/encoder/vp9_onyx_if.c @@ -679,6 +679,23 @@ static void init_config(struct VP9_COMP *cpi, VP9_CONFIG *oxcf) { cpi->fixed_divide[i] = 0x80000 / i; } +static int get_pass(MODE mode) { + switch (mode) { + case REALTIME: + case ONE_PASS_GOOD: + case ONE_PASS_BEST: + return 0; + + case TWO_PASS_FIRST: + return 1; + + case TWO_PASS_SECOND_GOOD: + case TWO_PASS_SECOND_BEST: + return 2; + } + return -1; +} + void vp9_change_config(struct VP9_COMP *cpi, const VP9_CONFIG *oxcf) { VP9_COMMON *const cm = &cpi->common; RATE_CONTROL *const rc = &cpi->rc; @@ -693,34 +710,9 @@ void vp9_change_config(struct VP9_COMP *cpi, const VP9_CONFIG *oxcf) { assert(cm->bit_depth > BITS_8); cpi->oxcf = *oxcf; - - switch (cpi->oxcf.mode) { - // Real time and one pass deprecated in test code base - case ONE_PASS_GOOD: - cpi->pass = 0; - break; - - case ONE_PASS_BEST: - cpi->pass = 0; - break; - - case TWO_PASS_FIRST: - cpi->pass = 1; - break; - - case TWO_PASS_SECOND_GOOD: - cpi->pass = 2; - break; - - case TWO_PASS_SECOND_BEST: - cpi->pass = 2; - break; - - case REALTIME: - cpi->pass = 0; - cpi->oxcf.play_alternate = 0; - break; - } + cpi->pass = get_pass(cpi->oxcf.mode); + if (cpi->oxcf.mode == REALTIME) + cpi->oxcf.play_alternate = 0; cpi->oxcf.lossless = oxcf->lossless; if (cpi->oxcf.lossless) {