[FFmpeg-devel] [PATCH 4/4] lavfi/sendcmd: expose the options for both filters.
Clément Bœsch
ubitux at gmail.com
Thu Nov 29 00:14:55 CET 2012
---
libavfilter/f_sendcmd.c | 29 ++++++++++++++++++++++++-----
1 file changed, 24 insertions(+), 5 deletions(-)
diff --git a/libavfilter/f_sendcmd.c b/libavfilter/f_sendcmd.c
index 9b83935..f7b9b6d 100644
--- a/libavfilter/f_sendcmd.c
+++ b/libavfilter/f_sendcmd.c
@@ -89,8 +89,6 @@ static const AVOption options[] = {
{NULL},
};
-AVFILTER_DEFINE_CLASS(sendcmd);
-
#define SPACES " \f\t\n\r"
static void skip_comments(const char **buf)
@@ -375,7 +373,6 @@ static av_cold int init(AVFilterContext *ctx, const char *args)
SendCmdContext *sendcmd = ctx->priv;
int ret, i, j;
- sendcmd->class = &sendcmd_class;
av_opt_set_defaults(sendcmd);
if ((ret = av_set_options_string(sendcmd, args, "=", ":")) < 0)
@@ -518,6 +515,16 @@ end:
#if CONFIG_SENDCMD_FILTER
+#define sendcmd_options options
+AVFILTER_DEFINE_CLASS(sendcmd);
+
+static av_cold int sendcmd_init(AVFilterContext *ctx, const char *args)
+{
+ SendCmdContext *sendcmd = ctx->priv;
+ sendcmd->class = &sendcmd_class;
+ return init(ctx, args);
+}
+
static const AVFilterPad sendcmd_inputs[] = {
{
.name = "default",
@@ -541,17 +548,28 @@ AVFilter avfilter_vf_sendcmd = {
.name = "sendcmd",
.description = NULL_IF_CONFIG_SMALL("Send commands to filters."),
- .init = init,
+ .init = sendcmd_init,
.uninit = uninit,
.priv_size = sizeof(SendCmdContext),
.inputs = sendcmd_inputs,
.outputs = sendcmd_outputs,
+ .priv_class = &sendcmd_class,
};
#endif
#if CONFIG_ASENDCMD_FILTER
+#define asendcmd_options options
+AVFILTER_DEFINE_CLASS(asendcmd);
+
+static av_cold int asendcmd_init(AVFilterContext *ctx, const char *args)
+{
+ SendCmdContext *asendcmd = ctx->priv;
+ asendcmd->class = &asendcmd_class;
+ return init(ctx, args);
+}
+
static const AVFilterPad asendcmd_inputs[] = {
{
.name = "default",
@@ -574,11 +592,12 @@ AVFilter avfilter_af_asendcmd = {
.name = "asendcmd",
.description = NULL_IF_CONFIG_SMALL("Send commands to filters."),
- .init = init,
+ .init = asendcmd_init,
.uninit = uninit,
.priv_size = sizeof(SendCmdContext),
.inputs = asendcmd_inputs,
.outputs = asendcmd_outputs,
+ .priv_class = &asendcmd_class,
};
#endif
--
1.8.0.1
More information about the ffmpeg-devel
mailing list