diff options
author | wm4 <wm4@nowhere> | 2018-01-18 14:44:20 +0100 |
---|---|---|
committer | Kevin Mitchell <kevmitch@gmail.com> | 2018-01-30 03:10:27 -0800 |
commit | b9f804b566c4c528714e4ec5e63675ad7ba5fefd (patch) | |
tree | 49d6fcd42ce6597a67aa2af59b7f20beb21a2e14 /filters/user_filters.c | |
parent | 76276c92104c31ee936ba5c76a76072f09978c5f (diff) | |
download | mpv-b9f804b566c4c528714e4ec5e63675ad7ba5fefd.tar.bz2 mpv-b9f804b566c4c528714e4ec5e63675ad7ba5fefd.tar.xz |
audio: rewrite filtering glue code
Use the new filtering code for audio too.
Diffstat (limited to 'filters/user_filters.c')
-rw-r--r-- | filters/user_filters.c | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/filters/user_filters.c b/filters/user_filters.c index f59dd22d76..30358a4a94 100644 --- a/filters/user_filters.c +++ b/filters/user_filters.c @@ -18,6 +18,31 @@ static bool get_desc_from(const struct mp_user_filter_entry **list, int num, return true; } +// --af option + +const struct mp_user_filter_entry *af_list[] = { + &af_lavfi, + &af_lavfi_bridge, + &af_scaletempo, + &af_format, +#if HAVE_RUBBERBAND + &af_rubberband, +#endif + &af_lavcac3enc, +}; + +static bool get_af_desc(struct m_obj_desc *dst, int index) +{ + return get_desc_from(af_list, MP_ARRAY_SIZE(af_list), dst, index); +} + +const struct m_obj_list af_obj_list = { + .get_desc = get_af_desc, + .description = "audio filters", + .allow_disable_entries = true, + .allow_unknown_entries = true, +}; + // --vf option const struct mp_user_filter_entry *vf_list[] = { @@ -66,6 +91,10 @@ struct mp_filter *mp_create_user_filter(struct mp_filter *parent, frame_type = MP_FRAME_VIDEO; obj_list = &vf_obj_list; defs_name = "vf-defaults"; + } else if (type == MP_OUTPUT_CHAIN_AUDIO) { + frame_type = MP_FRAME_AUDIO; + obj_list = &af_obj_list; + defs_name = "af-defaults"; } assert(frame_type && obj_list); |