diff options
Diffstat (limited to 'filters/user_filters.h')
-rw-r--r-- | filters/user_filters.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/filters/user_filters.h b/filters/user_filters.h new file mode 100644 index 0000000000..8e1e3e380d --- /dev/null +++ b/filters/user_filters.h @@ -0,0 +1,29 @@ +#pragma once + +#include "options/m_option.h" + +#include "f_output_chain.h" + +// For creating filters from command line. Strictly for --vf/--af. +struct mp_user_filter_entry { + // Name and sub-option description. + struct m_obj_desc desc; + // Create a filter. The option pointer is non-NULL if desc implies a priv + // struct to be allocated; then options are parsed into it. The callee + // must always free options (but can reparent it with talloc to keep it). + struct mp_filter *(*create)(struct mp_filter *parent, void *options); +}; + +struct mp_filter *mp_create_user_filter(struct mp_filter *parent, + enum mp_output_chain_type type, + const char *name, char **args); + +extern const struct mp_user_filter_entry vf_lavfi; +extern const struct mp_user_filter_entry vf_lavfi_bridge; +extern const struct mp_user_filter_entry vf_sub; +extern const struct mp_user_filter_entry vf_vapoursynth; +extern const struct mp_user_filter_entry vf_vapoursynth_lazy; +extern const struct mp_user_filter_entry vf_format; +extern const struct mp_user_filter_entry vf_vdpaupp; +extern const struct mp_user_filter_entry vf_vavpp; +extern const struct mp_user_filter_entry vf_d3d11vpp; |