summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavcodec/bitstream_filter.c11
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;