summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--DOCS/man/vf.rst68
-rw-r--r--TOOLS/old-makefile4
-rw-r--r--video/filter/vf.c8
-rw-r--r--video/filter/vf_delogo.c76
-rw-r--r--video/filter/vf_hqdn3d.c64
-rw-r--r--video/filter/vf_noise.c71
-rw-r--r--video/filter/vf_unsharp.c85
-rw-r--r--wscript_build.py4
8 files changed, 0 insertions, 380 deletions
diff --git a/DOCS/man/vf.rst b/DOCS/man/vf.rst
index 6479560444..2bc4391448 100644
--- a/DOCS/man/vf.rst
+++ b/DOCS/man/vf.rst
@@ -409,41 +409,6 @@ Available filters are:
``'--vf=lavfi=yadif:o="threads=2,thread_type=slice"'``
forces a specific threading configuration.
-``noise[=<strength>[:averaged][:pattern][:temporal][:uniform][:hq]``
- Adds noise.
-
- ``strength``
- Set the noise for all components. If you want different strength
- values for luma and chroma, use libavfilter's noise filter directly
- (using ``--vf=lavfi=[noise=...]``), or tell the libavfilter developers
- to stop being stupid.
-
- ``averaged``
- averaged temporal noise (smoother, but a lot slower)
-
- ``pattern``
- mix random noise with a (semi)regular pattern
-
- ``temporal``
- temporal noise (noise pattern changes between frames)
-
- ``uniform``
- uniform noise (Gaussian otherwise)
-
-``hqdn3d[=luma_spatial:chroma_spatial:luma_tmp:chroma_tmp]``
- This filter aims to reduce image noise producing smooth images and making
- still images really still (This should enhance compressibility.).
-
- ``<luma_spatial>``
- spatial luma strength (default: 4)
- ``<chroma_spatial>``
- spatial chroma strength (default: 3)
- ``<luma_tmp>``
- luma temporal strength (default: 6)
- ``<chroma_tmp>``
- chroma temporal strength (default:
- ``luma_tmp*chroma_spatial/luma_spatial``)
-
``eq[=gamma:contrast:brightness:saturation:rg:gg:bg:weight]``
Software equalizer that uses lookup tables (slow), allowing gamma correction
in addition to simple brightness and contrast adjustment. The parameters are
@@ -470,23 +435,6 @@ Available filters are:
and just plain white. A value of 0.0 turns the gamma correction all
the way down while 1.0 leaves it at its full strength (default: 1.0).
-``unsharp[=lx:ly:la:cx:cy:ca]``
- unsharp mask / Gaussian blur
-
- ``l`` is for the luma component, ``c`` for the chroma component. ``x``/``y``
- is the filter size. ``a`` is the amount.
-
- ``lx``, ``ly``, ``cx``, ``cy``
- width and height of the matrix, odd sized in both directions (min =
- 3:3, max = 13:11 or 11:13, usually something between 3:3 and 7:7)
-
- ``la``, ``ca``
- Relative amount of sharpness/blur to add to the image (a sane range
- should be -1.5-1.5).
-
- :<0: blur
- :>0: sharpen
-
``pullup[=jl:jr:jt:jb:sb:mp]``
Pulldown reversal (inverse telecine) filter, capable of handling mixed
hard-telecine, 24000/1001 fps progressive, and 30000/1001 fps progressive
@@ -545,22 +493,6 @@ Available filters are:
when inserting yadif with ``--vf``, so using the above methods is
recommended.
-``delogo[=x:y:w:h:t:show]``
- Suppresses a TV station logo by a simple interpolation of the surrounding
- pixels. Just set a rectangle covering the logo and watch it disappear (and
- sometimes something even uglier appear - your mileage may vary).
-
- ``<x>,<y>``
- top left corner of the logo
- ``<w>,<h>``
- width and height of the cleared rectangle
- ``<t>``
- Thickness of the fuzzy edge of the rectangle (added to ``w`` and
- ``h``). When set to -1, a green rectangle is drawn on the screen to
- simplify finding the right ``x``,``y``,``w``,``h`` parameters.
- ``show``
- Draw a rectangle showing the area defined by x/y/w/h.
-
``sub=[=bottom-margin:top-margin]``
Moves subtitle rendering to an arbitrary point in the filter chain, or force
subtitle rendering in the video filter as opposed to using video output OSD
diff --git a/TOOLS/old-makefile b/TOOLS/old-makefile
index d2b9d215df..5477811832 100644
--- a/TOOLS/old-makefile
+++ b/TOOLS/old-makefile
@@ -99,13 +99,9 @@ SOURCES-$(WAYLAND) += video/out/vo_wayland.c \
video/out/wayland/memfile.c
SOURCES-$(LIBAVFILTER) += video/filter/vf_lavfi.c \
- video/filter/vf_delogo.c \
video/filter/vf_gradfun.c \
- video/filter/vf_hqdn3d.c \
- video/filter/vf_noise.c \
video/filter/vf_pullup.c \
video/filter/vf_rotate.c \
- video/filter/vf_unsharp.c \
video/filter/vf_yadif.c \
audio/filter/af_lavfi.c
diff --git a/video/filter/vf.c b/video/filter/vf.c
index 6a28b55059..6ad484c7ff 100644
--- a/video/filter/vf.c
+++ b/video/filter/vf.c
@@ -46,14 +46,10 @@ extern const vf_info_t vf_info_noformat;
extern const vf_info_t vf_info_flip;
extern const vf_info_t vf_info_rotate;
extern const vf_info_t vf_info_mirror;
-extern const vf_info_t vf_info_noise;
extern const vf_info_t vf_info_eq;
extern const vf_info_t vf_info_gradfun;
-extern const vf_info_t vf_info_unsharp;
-extern const vf_info_t vf_info_hqdn3d;
extern const vf_info_t vf_info_dsize;
extern const vf_info_t vf_info_pullup;
-extern const vf_info_t vf_info_delogo;
extern const vf_info_t vf_info_sub;
extern const vf_info_t vf_info_yadif;
extern const vf_info_t vf_info_stereo3d;
@@ -79,12 +75,8 @@ static const vf_info_t *const filter_list[] = {
&vf_info_mirror,
&vf_info_lavfi,
&vf_info_rotate,
- &vf_info_noise,
&vf_info_gradfun,
- &vf_info_unsharp,
- &vf_info_hqdn3d,
&vf_info_pullup,
- &vf_info_delogo,
&vf_info_yadif,
&vf_info_stereo3d,
#endif
diff --git a/video/filter/vf_delogo.c b/video/filter/vf_delogo.c
deleted file mode 100644
index 899a972764..0000000000
--- a/video/filter/vf_delogo.c
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Copyright (C) 2002 Jindrich Makovicka <makovick@gmail.com>
- *
- * 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 <stdlib.h>
-
-#include "common/msg.h"
-#include "vf.h"
-#include "vf_lavfi.h"
-
-#include "options/m_option.h"
-
-static struct vf_priv_s {
- int xoff, yoff, lw, lh, band, show;
- struct vf_lw_opts *lw_opts;
-} const vf_priv_dflt = {
- .band = 1,
-};
-
-static int vf_open(vf_instance_t *vf){
- struct vf_priv_s *p = vf->priv;
-
- int band = p->band;
- int show = p->show;
- if (band < 0) {
- band = 4;
- show = 1;
- }
- if (vf_lw_set_graph(vf, p->lw_opts, "delogo", "%d:%d:%d:%d:%d:%d",
- p->xoff, p->yoff, p->lw, p->lh, band, show) >= 0)
- {
- return 1;
- }
-
- MP_FATAL(vf, "This version of libavfilter has no 'delogo' filter.\n");
- return 0;
-}
-
-#define OPT_BASE_STRUCT struct vf_priv_s
-static const m_option_t vf_opts_fields[] = {
- OPT_INT("x", xoff, 0),
- OPT_INT("y", yoff, 0),
- OPT_INT("w", lw, 0),
- OPT_INT("h", lh, 0),
- OPT_INT("t", band, 0),
- OPT_INT("band", band, 0), // alias
- OPT_FLAG("show", show, 0),
- OPT_SUBSTRUCT("", lw_opts, vf_lw_conf, 0),
- {0}
-};
-
-const vf_info_t vf_info_delogo = {
- .description = "simple logo remover",
- .name = "delogo",
- .open = vf_open,
- .priv_size = sizeof(struct vf_priv_s),
- .priv_defaults = &vf_priv_dflt,
- .options = vf_opts_fields,
-};
-
-//===========================================================================//
diff --git a/video/filter/vf_hqdn3d.c b/video/filter/vf_hqdn3d.c
deleted file mode 100644
index e29e98bafd..0000000000
--- a/video/filter/vf_hqdn3d.c
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Copyright (C) 2003 Daniel Moreno <comac@comac.darktech.org>
- *
- * 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 <stdlib.h>
-
-#include "common/msg.h"
-#include "options/m_option.h"
-#include "vf.h"
-
-#include "vf_lavfi.h"
-
-struct vf_priv_s {
- double strength[4];
- struct vf_lw_opts *lw_opts;
-};
-
-static int vf_open(vf_instance_t *vf)
-{
- struct vf_priv_s *s = vf->priv;
-
- if (vf_lw_set_graph(vf, s->lw_opts, "hqdn3d", "%f:%f:%f:%f",
- s->strength[0], s->strength[1],
- s->strength[2], s->strength[3]) >= 0)
- {
- return 1;
- }
-
- MP_FATAL(vf, "This version of libavfilter has no 'hqdn3' filter.\n");
- return 0;
-}
-
-#define OPT_BASE_STRUCT struct vf_priv_s
-const vf_info_t vf_info_hqdn3d = {
- .description = "High Quality 3D Denoiser",
- .name = "hqdn3d",
- .open = vf_open,
- .priv_size = sizeof(struct vf_priv_s),
- .options = (const struct m_option[]){
- OPT_DOUBLE("luma_spatial", strength[0], 0),
- OPT_DOUBLE("chroma_spatial", strength[1], 0),
- OPT_DOUBLE("luma_tmp", strength[2], 0),
- OPT_DOUBLE("chroma_tmp", strength[3], 0),
- OPT_SUBSTRUCT("", lw_opts, vf_lw_conf, 0),
- {0}
- },
-};
-
-//===========================================================================//
diff --git a/video/filter/vf_noise.c b/video/filter/vf_noise.c
deleted file mode 100644
index 7945878a0d..0000000000
--- a/video/filter/vf_noise.c
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Copyright (C) 2002 Michael Niedermayer <michaelni@gmx.at>
- *
- * 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 "config.h"
-#include "common/msg.h"
-#include "options/m_option.h"
-
-#include "vf.h"
-
-#include "vf_lavfi.h"
-
-struct vf_priv_s {
- int strength;
- int averaged;
- int pattern;
- int temporal;
- int uniform;
- struct vf_lw_opts *lw_opts;
-};
-
-static int vf_open(vf_instance_t *vf){
-#define CH(f) ((f) ? '+' : '-')
- struct vf_priv_s *p = vf->priv;
- if (vf_lw_set_graph(vf, p->lw_opts, "noise", "-1:%d:%ca%cp%ct%cu",
- p->strength, CH(p->averaged), CH(p->pattern),
- CH(p->temporal), CH(p->uniform)) >= 0)
- {
- return 1;
- }
-
- MP_FATAL(vf, "This version of libavfilter has no 'noise' filter.\n");
- return 0;
-}
-
-#define OPT_BASE_STRUCT struct vf_priv_s
-const vf_info_t vf_info_noise = {
- .description = "noise generator",
- .name = "noise",
- .open = vf_open,
- .priv_size = sizeof(struct vf_priv_s),
- .options = (const struct m_option[]){
- OPT_INTRANGE("strength", strength, 0, 0, 100, OPTDEF_INT(2)),
- OPT_FLAG("averaged", averaged, 0),
- OPT_FLAG("pattern", pattern, 0),
- OPT_FLAG("temporal", temporal, 0),
- OPT_FLAG("uniform", uniform, 0),
- OPT_SUBSTRUCT("", lw_opts, vf_lw_conf, 0),
- {0}
- },
-};
-
-//===========================================================================//
diff --git a/video/filter/vf_unsharp.c b/video/filter/vf_unsharp.c
deleted file mode 100644
index dfee945afd..0000000000
--- a/video/filter/vf_unsharp.c
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright (C) 2002 Remi Guyomarch <rguyom@pobox.com>
- *
- * 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 <stdlib.h>
-
-#include "common/msg.h"
-#include "options/m_option.h"
-
-#include "vf.h"
-
-#include "vf_lavfi.h"
-
-typedef struct FilterParam {
- int msizeX, msizeY;
- double amount;
-} FilterParam;
-
-struct vf_priv_s {
- FilterParam lumaParam;
- FilterParam chromaParam;
- struct vf_lw_opts *lw_opts;
-};
-
-static int vf_open(vf_instance_t *vf)
-{
- struct vf_priv_s *p = vf->priv;
-
- p->lumaParam.msizeX |= 1;
- p->lumaParam.msizeY |= 1;
- p->chromaParam.msizeX |= 1;
- p->chromaParam.msizeY |= 1;
-
- if (vf_lw_set_graph(vf, p->lw_opts, "unsharp", "%d:%d:%f:%d:%d:%f",
- p->lumaParam.msizeX, p->lumaParam.msizeY, p->lumaParam.amount,
- p->chromaParam.msizeX, p->chromaParam.msizeY, p->chromaParam.amount)
- >= 0)
- {
- return 1;
- }
-
- MP_FATAL(vf, "This version of libavfilter has no 'unsharp' filter.\n");
- return 0;
-}
-
-// same as MIN_/MAX_MATRIX_SIZE
-#define MIN_SIZE 3
-#define MAX_SIZE 63
-
-#define OPT_BASE_STRUCT struct vf_priv_s
-const vf_info_t vf_info_unsharp = {
- .description = "unsharp mask & gaussian blur",
- .name = "unsharp",
- .open = vf_open,
- .priv_size = sizeof(struct vf_priv_s),
- .priv_defaults = &(const struct vf_priv_s){
- .lumaParam = {5, 5, 1.0},
- .chromaParam = {5, 5, 0.0},
- },
- .options = (const struct m_option[]){
- OPT_INTRANGE("lx", lumaParam.msizeX, 0, MIN_SIZE, MAX_SIZE),
- OPT_INTRANGE("ly", lumaParam.msizeY, 0, MIN_SIZE, MAX_SIZE),
- OPT_DOUBLE("la", lumaParam.amount, CONF_RANGE, .min = -2, .max = 6),
- OPT_INTRANGE("cx", chromaParam.msizeX, 0, MIN_SIZE, MAX_SIZE),
- OPT_INTRANGE("cy", chromaParam.msizeY, 0, MIN_SIZE, MAX_SIZE),
- OPT_DOUBLE("ca", chromaParam.amount, CONF_RANGE, .min = -2, .max = 6),
- OPT_SUBSTRUCT("", lw_opts, vf_lw_conf, 0),
- {0}
- },
-};
diff --git a/wscript_build.py b/wscript_build.py
index adaded8c79..ee4321926d 100644
--- a/wscript_build.py
+++ b/wscript_build.py
@@ -286,7 +286,6 @@ def build(ctx):
( "video/filter/vf.c" ),
( "video/filter/vf_buffer.c" ),
( "video/filter/vf_crop.c" ),
- ( "video/filter/vf_delogo.c", "libavfilter"),
( "video/filter/vf_dlopen.c", "dlopen" ),
( "video/filter/vf_dsize.c" ),
( "video/filter/vf_eq.c" ),
@@ -294,17 +293,14 @@ def build(ctx):
( "video/filter/vf_flip.c" ),
( "video/filter/vf_format.c" ),
( "video/filter/vf_gradfun.c", "libavfilter"),
- ( "video/filter/vf_hqdn3d.c", "libavfilter"),
( "video/filter/vf_lavfi.c", "libavfilter"),
( "video/filter/vf_mirror.c", "libavfilter"),
( "video/filter/vf_noformat.c" ),
- ( "video/filter/vf_noise.c", "libavfilter"),
( "video/filter/vf_pullup.c", "libavfilter"),
( "video/filter/vf_rotate.c", "libavfilter"),
( "video/filter/vf_scale.c" ),
( "video/filter/vf_stereo3d.c", "libavfilter"),
( "video/filter/vf_sub.c" ),
- ( "video/filter/vf_unsharp.c", "libavfilter"),
( "video/filter/vf_vapoursynth.c", "vapoursynth-core" ),
( "video/filter/vf_vavpp.c", "vaapi-vpp"),
( "video/filter/vf_vdpaupp.c", "vdpau" ),