diff options
author | Anton Khirnov <anton@khirnov.net> | 2013-02-25 21:21:29 +0100 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2013-04-09 19:10:12 +0200 |
commit | dd7fc37c71955b78a2687f29e871f714d18de386 (patch) | |
tree | 1be1268af3aa1942941548e0804c9f0ed7b509f4 /libavfilter/af_join.c | |
parent | 3f14febbdf7c93bbd186399da27991180e5916b6 (diff) | |
download | ffmpeg-dd7fc37c71955b78a2687f29e871f714d18de386.tar.gz |
af_join: switch to an AVOptions-based system.
Change the mappings separator from comma to '|' to avoid excessive
escaping, since comma is already used for separating filters in the
filtergraph description.
Diffstat (limited to 'libavfilter/af_join.c')
-rw-r--r-- | libavfilter/af_join.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/libavfilter/af_join.c b/libavfilter/af_join.c index 172eda387d..4b60509e58 100644 --- a/libavfilter/af_join.c +++ b/libavfilter/af_join.c @@ -102,14 +102,23 @@ static int filter_frame(AVFilterLink *link, AVFrame *frame) static int parse_maps(AVFilterContext *ctx) { JoinContext *s = ctx->priv; + char separator = '|'; char *cur = s->map; +#if FF_API_OLD_FILTER_OPTS + if (cur && strchr(cur, ',')) { + av_log(ctx, AV_LOG_WARNING, "This syntax is deprecated, use '|' to " + "separate the mappings.\n"); + separator = ','; + } +#endif + while (cur && *cur) { char *sep, *next, *p; uint64_t in_channel = 0, out_channel = 0; int input_idx, out_ch_idx, in_ch_idx; - next = strchr(cur, ','); + next = strchr(cur, separator); if (next) *next++ = 0; @@ -182,13 +191,6 @@ static int join_init(AVFilterContext *ctx, const char *args) JoinContext *s = ctx->priv; int ret, i; - s->class = &join_class; - av_opt_set_defaults(s); - if ((ret = av_set_options_string(s, args, "=", ":")) < 0) { - av_log(ctx, AV_LOG_ERROR, "Error parsing options string '%s'.\n", args); - return ret; - } - if (!(s->channel_layout = av_get_channel_layout(s->channel_layout_str))) { av_log(ctx, AV_LOG_ERROR, "Error parsing channel layout '%s'.\n", s->channel_layout_str); @@ -512,6 +514,7 @@ AVFilter avfilter_af_join = { .description = NULL_IF_CONFIG_SMALL("Join multiple audio streams into " "multi-channel output"), .priv_size = sizeof(JoinContext), + .priv_class = &join_class, .init = join_init, .uninit = join_uninit, |