diff options
-rw-r--r-- | libavcodec/mmaldec.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/libavcodec/mmaldec.c b/libavcodec/mmaldec.c index 1f29d2b6b2..76d26bcb9c 100644 --- a/libavcodec/mmaldec.c +++ b/libavcodec/mmaldec.c @@ -29,6 +29,7 @@ #include <interface/mmal/util/mmal_util.h> #include <interface/mmal/util/mmal_util_params.h> #include <interface/mmal/util/mmal_default_components.h> +#include <interface/mmal/vc/mmal_vc_api.h> #include "avcodec.h" #include "internal.h" @@ -182,6 +183,8 @@ static av_cold int ffmmal_close_decoder(AVCodecContext *avctx) if (ctx->bsfc) av_bitstream_filter_close(ctx->bsfc); + mmal_vc_deinit(); + return 0; } @@ -321,6 +324,11 @@ static av_cold int ffmmal_init_decoder(AVCodecContext *avctx) bcm_host_init(); + if (mmal_vc_init()) { + av_log(avctx, AV_LOG_ERROR, "Cannot initialize MMAL VC driver!\n"); + return AVERROR(ENOSYS); + } + if ((ret = ff_get_format(avctx, avctx->codec->pix_fmts)) < 0) return ret; |