]> git.sesse.net Git - ffmpeg/blobdiff - libavfilter/split.c
avfilter: Constify all AVFilters
[ffmpeg] / libavfilter / split.c
index 8b260a9ba3371b555fb0040be00e47e12a3bc270..da5f681af85ae9e697cf78c6f024586490278f02 100644 (file)
 #include <stdio.h>
 
 #include "libavutil/attributes.h"
+#include "libavutil/avstring.h"
 #include "libavutil/internal.h"
 #include "libavutil/mem.h"
 #include "libavutil/opt.h"
 
-#define FF_INTERNAL_FIELDS 1
-#include "framequeue.h"
-
 #include "avfilter.h"
 #include "audio.h"
+#include "filters.h"
 #include "formats.h"
 #include "internal.h"
 #include "video.h"
@@ -50,12 +49,10 @@ static av_cold int split_init(AVFilterContext *ctx)
     int i, ret;
 
     for (i = 0; i < s->nb_outputs; i++) {
-        char name[32];
         AVFilterPad pad = { 0 };
 
-        snprintf(name, sizeof(name), "output%d", i);
         pad.type = ctx->filter->inputs[0].type;
-        pad.name = av_strdup(name);
+        pad.name = av_asprintf("output%d", i);
         if (!pad.name)
             return AVERROR(ENOMEM);
 
@@ -84,7 +81,7 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *frame)
     for (i = 0; i < ctx->nb_outputs; i++) {
         AVFrame *buf_out;
 
-        if (ctx->outputs[i]->status_in)
+        if (ff_outlink_get_status(ctx->outputs[i]))
             continue;
         buf_out = av_frame_clone(frame);
         if (!buf_out) {
@@ -122,7 +119,7 @@ static const AVFilterPad avfilter_vf_split_inputs[] = {
     { NULL }
 };
 
-AVFilter ff_vf_split = {
+const AVFilter ff_vf_split = {
     .name        = "split",
     .description = NULL_IF_CONFIG_SMALL("Pass on the input to N video outputs."),
     .priv_size   = sizeof(SplitContext),
@@ -143,7 +140,7 @@ static const AVFilterPad avfilter_af_asplit_inputs[] = {
     { NULL }
 };
 
-AVFilter ff_af_asplit = {
+const AVFilter ff_af_asplit = {
     .name        = "asplit",
     .description = NULL_IF_CONFIG_SMALL("Pass on the audio input to N audio outputs."),
     .priv_size   = sizeof(SplitContext),