summaryrefslogtreecommitdiff
path: root/vp9/vp9_cx_iface.c
diff options
context:
space:
mode:
authorangiebird <angiebird@google.com>2020-10-07 15:29:51 -0700
committerangiebird <angiebird@google.com>2020-10-09 17:30:49 -0700
commit6dba0d0a058c42ace95aee8048eb043c890531e8 (patch)
tree854f56f6818df220c1618ab7760b22c459e9f100 /vp9/vp9_cx_iface.c
parenta04f68148f2b78c4eb1f356c12952c716f67adf0 (diff)
downloadlibvpx-6dba0d0a058c42ace95aee8048eb043c890531e8.tar
libvpx-6dba0d0a058c42ace95aee8048eb043c890531e8.tar.gz
libvpx-6dba0d0a058c42ace95aee8048eb043c890531e8.tar.bz2
libvpx-6dba0d0a058c42ace95aee8048eb043c890531e8.zip
Add callback functions for external_rate_control
Change-Id: I20a1179a2131d2cd069dae9076aa2c18b80784f3
Diffstat (limited to 'vp9/vp9_cx_iface.c')
-rw-r--r--vp9/vp9_cx_iface.c15
1 files changed, 2 insertions, 13 deletions
diff --git a/vp9/vp9_cx_iface.c b/vp9/vp9_cx_iface.c
index 588290de0..42847edee 100644
--- a/vp9/vp9_cx_iface.c
+++ b/vp9/vp9_cx_iface.c
@@ -13,6 +13,7 @@
#include "./vpx_config.h"
#include "vpx/vpx_encoder.h"
+#include "vpx/vpx_ext_ratectrl.h"
#include "vpx_dsp/psnr.h"
#include "vpx_ports/vpx_once.h"
#include "vpx_ports/static_assert.h"
@@ -1734,19 +1735,7 @@ static vpx_codec_err_t ctrl_set_disable_loopfilter(vpx_codec_alg_priv_t *ctx,
static vpx_codec_err_t ctrl_set_external_rate_control(vpx_codec_alg_priv_t *ctx,
va_list args) {
- EXT_RATECTRL *ext_ratectrl = &ctx->cpi->ext_ratectrl;
- char **str_ptr = CAST(VP9E_SET_EXTERNAL_RATE_CONTROL, args);
- const char *library_path = str_ptr[0];
- const char *config = str_ptr[1];
- if (strlen(library_path) >= MAX_EXT_RATECTRL_BUF_SIZE) {
- return VPX_CODEC_ERROR;
- }
- if (strlen(config) >= MAX_EXT_RATECTRL_BUF_SIZE) {
- return VPX_CODEC_ERROR;
- }
- snprintf(ext_ratectrl->library_path, MAX_EXT_RATECTRL_BUF_SIZE, "%s",
- library_path);
- snprintf(ext_ratectrl->config, MAX_EXT_RATECTRL_BUF_SIZE, "%s", config);
+ ctx->cpi->ext_ratectrl.funcs = *CAST(VP9E_SET_EXTERNAL_RATE_CONTROL, args);
return VPX_CODEC_OK;
}