allfilters.c
Go to the documentation of this file.
1 /*
2  * filter registration
3  * Copyright (c) 2008 Vitor Sessak
4  *
5  * This file is part of Libav.
6  *
7  * Libav is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation; either
10  * version 2.1 of the License, or (at your option) any later version.
11  *
12  * Libav is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with Libav; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20  */
21 
22 #include "avfilter.h"
23 
24 
25 #define REGISTER_FILTER(X,x,y) { \
26  extern AVFilter avfilter_##y##_##x ; \
27  if(CONFIG_##X##_FILTER ) avfilter_register(&avfilter_##y##_##x ); }
28 
30 {
31  static int initialized;
32 
33  if (initialized)
34  return;
35  initialized = 1;
36 
37  REGISTER_FILTER (ANULL, anull, af);
38 
39  REGISTER_FILTER (ANULLSRC, anullsrc, asrc);
40 
41  REGISTER_FILTER (ANULLSINK, anullsink, asink);
42 
43  REGISTER_FILTER (BLACKFRAME, blackframe, vf);
44  REGISTER_FILTER (BOXBLUR, boxblur, vf);
45  REGISTER_FILTER (COPY, copy, vf);
46  REGISTER_FILTER (CROP, crop, vf);
47  REGISTER_FILTER (CROPDETECT, cropdetect, vf);
48  REGISTER_FILTER (DELOGO, delogo, vf);
49  REGISTER_FILTER (DRAWBOX, drawbox, vf);
50  REGISTER_FILTER (DRAWTEXT, drawtext, vf);
51  REGISTER_FILTER (FADE, fade, vf);
52  REGISTER_FILTER (FIELDORDER, fieldorder, vf);
53  REGISTER_FILTER (FIFO, fifo, vf);
54  REGISTER_FILTER (FORMAT, format, vf);
55  REGISTER_FILTER (FREI0R, frei0r, vf);
56  REGISTER_FILTER (GRADFUN, gradfun, vf);
57  REGISTER_FILTER (HFLIP, hflip, vf);
58  REGISTER_FILTER (HQDN3D, hqdn3d, vf);
59  REGISTER_FILTER (LUT, lut, vf);
60  REGISTER_FILTER (LUTRGB, lutrgb, vf);
61  REGISTER_FILTER (LUTYUV, lutyuv, vf);
62  REGISTER_FILTER (NEGATE, negate, vf);
63  REGISTER_FILTER (NOFORMAT, noformat, vf);
64  REGISTER_FILTER (NULL, null, vf);
65  REGISTER_FILTER (OCV, ocv, vf);
66  REGISTER_FILTER (OVERLAY, overlay, vf);
67  REGISTER_FILTER (PAD, pad, vf);
68  REGISTER_FILTER (PIXDESCTEST, pixdesctest, vf);
70  REGISTER_FILTER (SELECT, select, vf);
71  REGISTER_FILTER (SETDAR, setdar, vf);
72  REGISTER_FILTER (SETPTS, setpts, vf);
73  REGISTER_FILTER (SETSAR, setsar, vf);
74  REGISTER_FILTER (SETTB, settb, vf);
75  REGISTER_FILTER (SHOWINFO, showinfo, vf);
76  REGISTER_FILTER (SLICIFY, slicify, vf);
77  REGISTER_FILTER (SPLIT, split, vf);
79  REGISTER_FILTER (UNSHARP, unsharp, vf);
80  REGISTER_FILTER (VFLIP, vflip, vf);
81  REGISTER_FILTER (YADIF, yadif, vf);
82 
83  REGISTER_FILTER (COLOR, color, vsrc);
84  REGISTER_FILTER (FREI0R, frei0r_src, vsrc);
85  REGISTER_FILTER (MOVIE, movie, vsrc);
86  REGISTER_FILTER (NULLSRC, nullsrc, vsrc);
87  REGISTER_FILTER (RGBTESTSRC, rgbtestsrc, vsrc);
88  REGISTER_FILTER (TESTSRC, testsrc, vsrc);
89 
90  REGISTER_FILTER (NULLSINK, nullsink, vsink);
91 
92  /* vsrc_buffer is a part of public API => registered unconditionally */
93  {
95  avfilter_register(&avfilter_vsrc_buffer);
96  }
97 }