| Index: source/libvpx/vp8/vp8_dx_iface.c
|
| ===================================================================
|
| --- source/libvpx/vp8/vp8_dx_iface.c (revision 278778)
|
| +++ source/libvpx/vp8/vp8_dx_iface.c (working copy)
|
| @@ -386,8 +386,10 @@
|
| /* Set these even if already initialized. The caller may have changed the
|
| * decrypt config between frames.
|
| */
|
| - ctx->yv12_frame_buffers.pbi[0]->decrypt_cb = ctx->decrypt_cb;
|
| - ctx->yv12_frame_buffers.pbi[0]->decrypt_state = ctx->decrypt_state;
|
| + if (ctx->decoder_init) {
|
| + ctx->yv12_frame_buffers.pbi[0]->decrypt_cb = ctx->decrypt_cb;
|
| + ctx->yv12_frame_buffers.pbi[0]->decrypt_state = ctx->decrypt_state;
|
| + }
|
|
|
| if (!res)
|
| {
|
| @@ -574,8 +576,7 @@
|
|
|
|
|
| static vpx_codec_err_t vp8_set_reference(vpx_codec_alg_priv_t *ctx,
|
| - int ctr_id,
|
| - va_list args)
|
| + va_list args)
|
| {
|
|
|
| vpx_ref_frame_t *data = va_arg(args, vpx_ref_frame_t *);
|
| @@ -596,8 +597,7 @@
|
| }
|
|
|
| static vpx_codec_err_t vp8_get_reference(vpx_codec_alg_priv_t *ctx,
|
| - int ctr_id,
|
| - va_list args)
|
| + va_list args)
|
| {
|
|
|
| vpx_ref_frame_t *data = va_arg(args, vpx_ref_frame_t *);
|
| @@ -618,7 +618,6 @@
|
| }
|
|
|
| static vpx_codec_err_t vp8_set_postproc(vpx_codec_alg_priv_t *ctx,
|
| - int ctr_id,
|
| va_list args)
|
| {
|
| #if CONFIG_POSTPROC
|
| @@ -638,31 +637,56 @@
|
| #endif
|
| }
|
|
|
| -static vpx_codec_err_t vp8_set_dbg_options(vpx_codec_alg_priv_t *ctx,
|
| - int ctrl_id,
|
| - va_list args)
|
| -{
|
| +
|
| +static vpx_codec_err_t vp8_set_dbg_color_ref_frame(vpx_codec_alg_priv_t *ctx,
|
| + va_list args) {
|
| #if CONFIG_POSTPROC_VISUALIZER && CONFIG_POSTPROC
|
| - int data = va_arg(args, int);
|
| + ctx->dbg_color_ref_frame_flag = va_arg(args, int);
|
| + return VPX_CODEC_OK;
|
| +#else
|
| + (void)ctx;
|
| + (void)args;
|
| + return VPX_CODEC_INCAPABLE;
|
| +#endif
|
| +}
|
|
|
| -#define MAP(id, var) case id: var = data; break;
|
| +static vpx_codec_err_t vp8_set_dbg_color_mb_modes(vpx_codec_alg_priv_t *ctx,
|
| + va_list args) {
|
| +#if CONFIG_POSTPROC_VISUALIZER && CONFIG_POSTPROC
|
| + ctx->dbg_color_mb_modes_flag = va_arg(args, int);
|
| + return VPX_CODEC_OK;
|
| +#else
|
| + (void)ctx;
|
| + (void)args;
|
| + return VPX_CODEC_INCAPABLE;
|
| +#endif
|
| +}
|
|
|
| - switch (ctrl_id)
|
| - {
|
| - MAP (VP8_SET_DBG_COLOR_REF_FRAME, ctx->dbg_color_ref_frame_flag);
|
| - MAP (VP8_SET_DBG_COLOR_MB_MODES, ctx->dbg_color_mb_modes_flag);
|
| - MAP (VP8_SET_DBG_COLOR_B_MODES, ctx->dbg_color_b_modes_flag);
|
| - MAP (VP8_SET_DBG_DISPLAY_MV, ctx->dbg_display_mv_flag);
|
| - }
|
| +static vpx_codec_err_t vp8_set_dbg_color_b_modes(vpx_codec_alg_priv_t *ctx,
|
| + va_list args) {
|
| +#if CONFIG_POSTPROC_VISUALIZER && CONFIG_POSTPROC
|
| + ctx->dbg_color_b_modes_flag = va_arg(args, int);
|
| + return VPX_CODEC_OK;
|
| +#else
|
| + (void)ctx;
|
| + (void)args;
|
| + return VPX_CODEC_INCAPABLE;
|
| +#endif
|
| +}
|
|
|
| - return VPX_CODEC_OK;
|
| +static vpx_codec_err_t vp8_set_dbg_display_mv(vpx_codec_alg_priv_t *ctx,
|
| + va_list args) {
|
| +#if CONFIG_POSTPROC_VISUALIZER && CONFIG_POSTPROC
|
| + ctx->dbg_display_mv_flag = va_arg(args, int);
|
| + return VPX_CODEC_OK;
|
| #else
|
| - return VPX_CODEC_INCAPABLE;
|
| + (void)ctx;
|
| + (void)args;
|
| + return VPX_CODEC_INCAPABLE;
|
| #endif
|
| }
|
|
|
| static vpx_codec_err_t vp8_get_last_ref_updates(vpx_codec_alg_priv_t *ctx,
|
| - int ctrl_id,
|
| va_list args)
|
| {
|
| int *update_info = va_arg(args, int *);
|
| @@ -683,7 +707,6 @@
|
|
|
| extern int vp8dx_references_buffer( VP8_COMMON *oci, int ref_frame );
|
| static vpx_codec_err_t vp8_get_last_ref_frame(vpx_codec_alg_priv_t *ctx,
|
| - int ctrl_id,
|
| va_list args)
|
| {
|
| int *ref_info = va_arg(args, int *);
|
| @@ -704,7 +727,6 @@
|
| }
|
|
|
| static vpx_codec_err_t vp8_get_frame_corrupted(vpx_codec_alg_priv_t *ctx,
|
| - int ctrl_id,
|
| va_list args)
|
| {
|
|
|
| @@ -723,7 +745,6 @@
|
| }
|
|
|
| static vpx_codec_err_t vp8_set_decryptor(vpx_codec_alg_priv_t *ctx,
|
| - int ctrl_id,
|
| va_list args)
|
| {
|
| vpx_decrypt_init *init = va_arg(args, vpx_decrypt_init *);
|
| @@ -746,10 +767,10 @@
|
| {VP8_SET_REFERENCE, vp8_set_reference},
|
| {VP8_COPY_REFERENCE, vp8_get_reference},
|
| {VP8_SET_POSTPROC, vp8_set_postproc},
|
| - {VP8_SET_DBG_COLOR_REF_FRAME, vp8_set_dbg_options},
|
| - {VP8_SET_DBG_COLOR_MB_MODES, vp8_set_dbg_options},
|
| - {VP8_SET_DBG_COLOR_B_MODES, vp8_set_dbg_options},
|
| - {VP8_SET_DBG_DISPLAY_MV, vp8_set_dbg_options},
|
| + {VP8_SET_DBG_COLOR_REF_FRAME, vp8_set_dbg_color_ref_frame},
|
| + {VP8_SET_DBG_COLOR_MB_MODES, vp8_set_dbg_color_mb_modes},
|
| + {VP8_SET_DBG_COLOR_B_MODES, vp8_set_dbg_color_b_modes},
|
| + {VP8_SET_DBG_DISPLAY_MV, vp8_set_dbg_display_mv},
|
| {VP8D_GET_LAST_REF_UPDATES, vp8_get_last_ref_updates},
|
| {VP8D_GET_FRAME_CORRUPTED, vp8_get_frame_corrupted},
|
| {VP8D_GET_LAST_REF_USED, vp8_get_last_ref_frame},
|
|
|