From f082db8f67664b9712f73a7dca9d490741bfd4d5 Mon Sep 17 00:00:00 2001 From: wm4 Date: Wed, 29 Nov 2017 18:26:25 +0100 Subject: vf_lavfi: remove old internal wrapper API stuff This was for filters "redirecting" to vf_lavfi. All filters using it have been removed. --- video/filter/vf_lavfi.c | 92 ------------------------------------------------- video/filter/vf_lavfi.h | 25 -------------- 2 files changed, 117 deletions(-) delete mode 100644 video/filter/vf_lavfi.h (limited to 'video') diff --git a/video/filter/vf_lavfi.c b/video/filter/vf_lavfi.c index 7f5561cf57..0cd3af8673 100644 --- a/video/filter/vf_lavfi.c +++ b/video/filter/vf_lavfi.c @@ -50,7 +50,6 @@ #include "video/sws_utils.h" #include "video/fmt-conversion.h" #include "vf.h" -#include "vf_lavfi.h" // FFmpeg and Libav have slightly different APIs, just enough to cause us // unnecessary pain. @@ -516,94 +515,3 @@ const vf_info_t vf_info_lavfi_bridge = { }, .print_help = print_help, }; - -// The following code is for the old filters wrapper code. - -struct vf_lw_opts { - int64_t sws_flags; - char **avopts; -}; - -#undef OPT_BASE_STRUCT -#define OPT_BASE_STRUCT struct vf_lw_opts -const struct m_sub_options vf_lw_conf = { - .opts = (const m_option_t[]) { - OPT_INT64("lavfi-sws-flags", sws_flags, 0), - OPT_KEYVALUELIST("lavfi-o", avopts, 0), - {0} - }, - .defaults = &(const struct vf_lw_opts){ - .sws_flags = SWS_BICUBIC, - }, - .size = sizeof(struct vf_lw_opts), -}; - -static bool have_filter(const char *name) -{ - for (const AVFilter *filter = avfilter_next(NULL); filter; - filter = avfilter_next(filter)) - { - if (strcmp(filter->name, name) == 0) - return true; - } - return false; -} - -// This is used by "old" filters for wrapping lavfi if possible. -// On success, this overwrites all vf callbacks and literally takes over the -// old filter and replaces it with vf_lavfi. -// On error (<0), nothing is changed. -int vf_lw_set_graph(struct vf_instance *vf, struct vf_lw_opts *lavfi_opts, - char *filter, char *opts, ...) -{ - if (!lavfi_opts) - lavfi_opts = (struct vf_lw_opts *)vf_lw_conf.defaults; - if (filter && !have_filter(filter)) - return -1; - MP_VERBOSE(vf, "Using libavfilter for '%s'\n", vf->info->name); - void *old_priv = vf->priv; - struct vf_priv_s *p = talloc(vf, struct vf_priv_s); - vf->priv = p; - *p = *(const struct vf_priv_s *)vf_info_lavfi.priv_defaults; - p->cfg_sws_flags = lavfi_opts->sws_flags; - p->cfg_avopts = lavfi_opts->avopts; - va_list ap; - va_start(ap, opts); - char *s = talloc_vasprintf(vf, opts, ap); - p->cfg_graph = filter ? talloc_asprintf(vf, "%s=%s", filter, s) - : talloc_strdup(vf, s); - talloc_free(s); - va_end(ap); - p->old_priv = old_priv; - // Note: we should be sure vf_open really overwrites _all_ vf callbacks. - if (vf_open(vf) < 1) - abort(); - return 1; -} - -void *vf_lw_old_priv(struct vf_instance *vf) -{ - struct vf_priv_s *p = vf->priv; - return p->old_priv; -} - -void vf_lw_update_graph(struct vf_instance *vf, char *filter, char *opts, ...) -{ - struct vf_priv_s *p = vf->priv; - va_list ap; - va_start(ap, opts); - char *s = talloc_vasprintf(vf, opts, ap); - talloc_free(p->cfg_graph); - p->cfg_graph = filter ? talloc_asprintf(vf, "%s=%s", filter, s) - : talloc_strdup(vf, s); - talloc_free(s); - va_end(ap); -} - -void vf_lw_set_reconfig_cb(struct vf_instance *vf, - int (*reconfig_)(struct vf_instance *vf, - struct mp_image_params *in, - struct mp_image_params *out)) -{ - vf->priv->lw_reconfig_cb = reconfig_; -} diff --git a/video/filter/vf_lavfi.h b/video/filter/vf_lavfi.h deleted file mode 100644 index 9196532138..0000000000 --- a/video/filter/vf_lavfi.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef MP_VF_LAVFI_H_ -#define MP_VF_LAVFI_H_ - -#include "common/common.h" -#include "vf.h" - -struct vf_lw_opts; - -extern const struct m_sub_options vf_lw_conf; - -int vf_lw_set_graph(struct vf_instance *vf, struct vf_lw_opts *lavfi_opts, - char *filter, char *opts, ...) PRINTF_ATTRIBUTE(4,5); -void *vf_lw_old_priv(struct vf_instance *vf); -void vf_lw_update_graph(struct vf_instance *vf, char *filter, char *opts, ...) - PRINTF_ATTRIBUTE(3,4); -void vf_lw_set_reconfig_cb(struct vf_instance *vf, - int (*reconfig)(struct vf_instance *vf, - struct mp_image_params *in, - struct mp_image_params *out)); - -#define VF_LW_REPLACE "This filter will be replaced by using libavfilter " \ - "option syntax directly. Parts of the old syntax will stop working, " \ - "and some defaults may change.\n" - -#endif -- cgit v1.2.3