summaryrefslogtreecommitdiffstats
path: root/video/filter/vf_yadif.c
diff options
context:
space:
mode:
Diffstat (limited to 'video/filter/vf_yadif.c')
-rw-r--r--video/filter/vf_yadif.c97
1 files changed, 0 insertions, 97 deletions
diff --git a/video/filter/vf_yadif.c b/video/filter/vf_yadif.c
deleted file mode 100644
index 3eee572a5f..0000000000
--- a/video/filter/vf_yadif.c
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Copyright (C) 2006 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 <stdlib.h>
-
-#include <libavfilter/version.h>
-
-#include "options/options.h"
-
-#include "common/msg.h"
-#include "vf.h"
-
-#include "vf_lavfi.h"
-
-#include "config.h"
-#if !HAVE_GPL
-#error GPL only
-#endif
-
-struct vf_priv_s {
- int mode;
- int interlaced_only;
- struct vf_lw_opts *lw_opts;
- int warn;
-};
-
-static int vf_open(vf_instance_t *vf)
-{
- struct vf_priv_s *p = vf->priv;
-
- if (p->warn)
- MP_WARN(vf, "%s", VF_LW_REPLACE);
-
-#if LIBAVFILTER_VERSION_MICRO >= 100
- const char *mode[] = {"send_frame", "send_field", "send_frame_nospatial",
- "send_field_nospatial"};
-
- if (vf_lw_set_graph(vf, p->lw_opts, "yadif", "mode=%s:deint=%s", mode[p->mode],
- p->interlaced_only ? "interlaced" : "all") >= 0)
- {
- return 1;
- }
-#else
- // Libav numeric modes happen to match ours, but keep it explicit.
- const char *mode[] = {"0", "1", "2", "3"};
- if (vf_lw_set_graph(vf, p->lw_opts, "yadif", "mode=%s:auto=%d", mode[p->mode],
- p->interlaced_only) >= 0)
- {
- return 1;
- }
-#endif
-
- MP_FATAL(vf, "This version of libavfilter has no 'yadif' filter.\n");
- return 0;
-}
-
-#define OPT_BASE_STRUCT struct vf_priv_s
-static const m_option_t vf_opts_fields[] = {
- OPT_CHOICE("mode", mode, 0,
- ({"frame", 0},
- {"field", 1},
- {"frame-nospatial", 2},
- {"field-nospatial", 3})),
- OPT_FLAG("interlaced-only", interlaced_only, 0),
- OPT_FLAG("warn", warn, 0),
- OPT_SUBSTRUCT("", lw_opts, vf_lw_conf, 0),
- {0}
-};
-
-const vf_info_t vf_info_yadif = {
- .description = "Yet Another DeInterlacing Filter",
- .name = "yadif",
- .open = vf_open,
- .priv_size = sizeof(struct vf_priv_s),
- .priv_defaults = &(const struct vf_priv_s){
- .mode = 1,
- .interlaced_only = 1,
- .warn = 1,
- },
- .options = vf_opts_fields,
-};