summaryrefslogtreecommitdiffstats
path: root/video/filter/vf_gradfun.c
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2017-11-29 18:10:59 +0100
committerwm4 <wm4@nowhere>2017-11-29 18:15:19 +0100
commit12cac1d1119a0dab3469dc52c851b8eb528d63b7 (patch)
tree32cf11b283dbe0d60e092e297710dc635c5b6269 /video/filter/vf_gradfun.c
parentd752f743fffa2440361f7b7ebb0930c173286644 (diff)
downloadmpv-12cac1d1119a0dab3469dc52c851b8eb528d63b7.tar.bz2
mpv-12cac1d1119a0dab3469dc52c851b8eb528d63b7.tar.xz
vf: remove most GPL video filters
Almost all of them had their guts removed and replaced by libavfilter long ago, but remove them anyway. They're pointless and have been scheduled for deprecation. Still leave vf_format (because we need it in some form) and vf_sub (not sure). This will break some builtin functionality: lavfi yadif defaults are different, auto rotation and stereo3d downconversion are broken. These might be fixed later.
Diffstat (limited to 'video/filter/vf_gradfun.c')
-rw-r--r--video/filter/vf_gradfun.c108
1 files changed, 0 insertions, 108 deletions
diff --git a/video/filter/vf_gradfun.c b/video/filter/vf_gradfun.c
deleted file mode 100644
index 33bc883c61..0000000000
--- a/video/filter/vf_gradfun.c
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Copyright (C) 2009 Loren Merritt <lorenm@u.washignton.edu>
- *
- * This file is part of mpv.
- *
- * mpv is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * mpv is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with mpv. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <inttypes.h>
-#include <math.h>
-
-#include "vf.h"
-
-#include "common/common.h"
-#include "options/m_option.h"
-
-#include "vf_lavfi.h"
-
-#include "config.h"
-#if !HAVE_GPL
-#error GPL only
-#endif
-
-struct vf_priv_s {
- float cfg_thresh;
- int cfg_radius;
- float cfg_size;
- int radius;
-
- struct vf_lw_opts *lw_opts;
-} const vf_priv_dflt = {
- .cfg_thresh = 1.5,
- .cfg_radius = -1,
- .cfg_size = -1,
-};
-
-static int lavfi_reconfig(struct vf_instance *vf,
- struct mp_image_params *in,
- struct mp_image_params *out)
-{
- struct vf_priv_s *p = vf_lw_old_priv(vf);
- int w = in->w;
- int h = in->h;
- p->radius = p->cfg_radius;
- if (p->cfg_size > -1)
- p->radius = (p->cfg_size / 100.0f) * sqrtf(w * w + h * h);
- p->radius = MPCLAMP((p->radius+1)&~1, 4, 32);
- vf_lw_update_graph(vf, "gradfun", "%f:%d", p->cfg_thresh, p->radius);
- return 0;
-}
-
-static int vf_open(vf_instance_t *vf)
-{
- MP_WARN(vf, "%s", VF_LW_REPLACE);
-
- bool have_radius = vf->priv->cfg_radius > -1;
- bool have_size = vf->priv->cfg_size > -1;
-
- if (have_radius && have_size) {
- MP_ERR(vf, "scale: gradfun: only one of "
- "radius/size parameters allowed at the same time!\n");
- return 0;
- }
-
- if (!have_radius && !have_size)
- vf->priv->cfg_size = 1.0;
-
- if (vf_lw_set_graph(vf, vf->priv->lw_opts, "gradfun", "%f:4",
- vf->priv->cfg_thresh) >= 0)
- {
- vf_lw_set_reconfig_cb(vf, lavfi_reconfig);
- return 1;
- }
-
- MP_FATAL(vf, "This version of libavfilter has no 'gradfun' filter.\n");
- return 0;
-}
-
-#define OPT_BASE_STRUCT struct vf_priv_s
-static const m_option_t vf_opts_fields[] = {
- OPT_FLOATRANGE("strength", cfg_thresh, 0, 0.51, 255),
- OPT_INTRANGE("radius", cfg_radius, 0, 4, 32),
- OPT_FLOATRANGE("size", cfg_size, 0, 0.1, 5.0),
- OPT_SUBSTRUCT("", lw_opts, vf_lw_conf, 0),
- {0}
-};
-
-const vf_info_t vf_info_gradfun = {
- .description = "gradient deband",
- .name = "gradfun",
- .open = vf_open,
- .priv_size = sizeof(struct vf_priv_s),
- .priv_defaults = &vf_priv_dflt,
- .options = vf_opts_fields,
-};