lavfi/vf_pad: use standard options parsing.

This commit is contained in:
Nicolas George 2013-03-16 21:27:41 +01:00
parent b201c167d0
commit 392ec7ec1c

View File

@ -111,14 +111,6 @@ AVFILTER_DEFINE_CLASS(pad);
static av_cold int init(AVFilterContext *ctx, const char *args)
{
PadContext *pad = ctx->priv;
static const char *shorthand[] = { "width", "height", "x", "y", "color", NULL };
int ret;
pad->class = &pad_class;
av_opt_set_defaults(pad);
if ((ret = av_opt_set_from_string(pad, args, shorthand, "=", ":")) < 0)
return ret;
if (av_parse_color(pad->rgba_color, pad->color_str, -1, ctx) < 0)
return AVERROR(EINVAL);
@ -126,12 +118,6 @@ static av_cold int init(AVFilterContext *ctx, const char *args)
return 0;
}
static av_cold void uninit(AVFilterContext *ctx)
{
PadContext *pad = ctx->priv;
av_opt_free(pad);
}
static int config_input(AVFilterLink *inlink)
{
AVFilterContext *ctx = inlink->dst;
@ -416,17 +402,19 @@ static const AVFilterPad avfilter_vf_pad_outputs[] = {
{ NULL }
};
static const char *const shorthand[] = { "width", "height", "x", "y", "color", NULL };
AVFilter avfilter_vf_pad = {
.name = "pad",
.description = NULL_IF_CONFIG_SMALL("Pad input image to width:height[:x:y[:color]] (default x and y: 0, default color: black)."),
.priv_size = sizeof(PadContext),
.init = init,
.uninit = uninit,
.query_formats = query_formats,
.inputs = avfilter_vf_pad_inputs,
.outputs = avfilter_vf_pad_outputs,
.priv_class = &pad_class,
.shorthand = shorthand,
};