summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2021-09-11 19:12:48 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2021-09-23 21:12:58 +0200
commit5e9c7f135541fcec0bc000313e72b473c5a43380 (patch)
tree6c03ca1f6cfbb957f2a1c257a7b26487f2e04e1a
parentb368a774ddac8dc3e97d1206f6ee8c01a81edcab (diff)
avfilter/vf_lut3d: Deduplicate options
Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-rw-r--r--libavfilter/vf_lut3d.c22
1 files changed, 15 insertions, 7 deletions
diff --git a/libavfilter/vf_lut3d.c b/libavfilter/vf_lut3d.c
index 111e624dc3..9fbda833b9 100644
--- a/libavfilter/vf_lut3d.c
+++ b/libavfilter/vf_lut3d.c
@@ -1261,13 +1261,22 @@ static int process_command(AVFilterContext *ctx, const char *cmd, const char *ar
return config_input(ctx->inputs[0]);
}
+#if CONFIG_LUT3D_FILTER || CONFIG_HALDCLUT_FILTER
+
+/* These options are shared between several filters;
+ * &lut3d_haldclut_options[COMMON_OPTIONS_OFFSET] must always
+ * point to the first of the COMMON_OPTIONS. */
+#define COMMON_OPTIONS_OFFSET CONFIG_LUT3D_FILTER
+static const AVOption lut3d_haldclut_options[] = {
#if CONFIG_LUT3D_FILTER
-static const AVOption lut3d_options[] = {
{ "file", "set 3D LUT file name", OFFSET(file), AV_OPT_TYPE_STRING, {.str=NULL}, .flags = FLAGS },
+#endif
COMMON_OPTIONS
};
-AVFILTER_DEFINE_CLASS(lut3d);
+#if CONFIG_LUT3D_FILTER
+
+AVFILTER_DEFINE_CLASS_EXT(lut3d, "lut3d", lut3d_haldclut_options);
static av_cold int lut3d_init(AVFilterContext *ctx)
{
@@ -1588,11 +1597,8 @@ static av_cold void haldclut_uninit(AVFilterContext *ctx)
av_freep(&lut3d->lut);
}
-static const AVOption haldclut_options[] = {
- COMMON_OPTIONS
-};
-
-FRAMESYNC_DEFINE_CLASS(haldclut, LUT3DContext, fs);
+FRAMESYNC_DEFINE_CLASS_EXT(haldclut, LUT3DContext, fs,
+ &lut3d_haldclut_options[COMMON_OPTIONS_OFFSET]);
static const AVFilterPad haldclut_inputs[] = {
{
@@ -1631,6 +1637,8 @@ const AVFilter ff_vf_haldclut = {
};
#endif
+#endif /* CONFIG_LUT3D_FILTER || CONFIG_HALDCLUT_FILTER */
+
#if CONFIG_LUT1D_FILTER
enum interp_1d_mode {