|
|
@@ -375,6 +375,7 @@ static av_cold int vpx_init(AVCodecContext *avctx, |
|
|
|
struct vpx_codec_enc_cfg enccfg = { 0 }; |
|
|
|
struct vpx_codec_enc_cfg enccfg_alpha; |
|
|
|
vpx_codec_flags_t flags = (avctx->flags & AV_CODEC_FLAG_PSNR) ? VPX_CODEC_USE_PSNR : 0; |
|
|
|
AVCPBProperties *cpb_props; |
|
|
|
int res; |
|
|
|
vpx_img_fmt_t img_fmt = VPX_IMG_FMT_I420; |
|
|
|
#if CONFIG_LIBVPX_VP9_ENCODER |
|
|
@@ -631,6 +632,18 @@ static av_cold int vpx_init(AVCodecContext *avctx, |
|
|
|
vpx_img_wrap(&ctx->rawimg_alpha, VPX_IMG_FMT_I420, avctx->width, avctx->height, 1, |
|
|
|
(unsigned char*)1); |
|
|
|
|
|
|
|
cpb_props = ff_add_cpb_side_data(avctx); |
|
|
|
if (!cpb_props) |
|
|
|
return AVERROR(ENOMEM); |
|
|
|
|
|
|
|
if (enccfg.rc_end_usage == VPX_CBR || |
|
|
|
enccfg.g_pass != VPX_RC_ONE_PASS) { |
|
|
|
cpb_props->max_bitrate = avctx->rc_max_rate; |
|
|
|
cpb_props->min_bitrate = avctx->rc_min_rate; |
|
|
|
cpb_props->avg_bitrate = avctx->bit_rate; |
|
|
|
} |
|
|
|
cpb_props->buffer_size = avctx->rc_buffer_size; |
|
|
|
|
|
|
|
return 0; |
|
|
|
} |
|
|
|
|
|
|
|