diff options
-rw-r--r-- | libavcodec/bitstream_filter.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/libavcodec/bitstream_filter.c b/libavcodec/bitstream_filter.c index d9bafbe432..02878e3bf3 100644 --- a/libavcodec/bitstream_filter.c +++ b/libavcodec/bitstream_filter.c @@ -24,6 +24,7 @@ #include "libavutil/atomic.h" #include "libavutil/internal.h" #include "libavutil/mem.h" +#include "libavutil/opt.h" #if FF_API_OLD_BSF FF_DISABLE_DEPRECATION_WARNINGS @@ -114,6 +115,16 @@ int av_bitstream_filter_filter(AVBitStreamFilterContext *bsfc, priv->ctx->time_base_in = avctx->time_base; + if (bsfc->args && bsfc->filter->priv_class) { + const AVOption *opt = av_opt_next(priv->ctx->priv_data, NULL); + const char * shorthand[2] = {NULL}; + + if (opt) + shorthand[0] = opt->name; + + ret = av_opt_set_from_string(priv->ctx->priv_data, bsfc->args, shorthand, "=", ":"); + } + ret = av_bsf_init(priv->ctx); if (ret < 0) return ret; |