From b5942f80de481cabab07ce1cee7a2b6a537b4c93 Mon Sep 17 00:00:00 2001 From: wm4 Date: Thu, 2 Oct 2014 02:50:12 +0200 Subject: audio/filter: allow removing filters by label Although the "af" command already could do this, it seems it's better to introduce a lower level mechanism for now. This avoids some messy issues, since that code would recursive call reinit_audio_chain(). To be used by the next commit. --- audio/filter/af.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'audio/filter/af.h') diff --git a/audio/filter/af.h b/audio/filter/af.h index 579ac271ef..b95039b4d0 100644 --- a/audio/filter/af.h +++ b/audio/filter/af.h @@ -76,6 +76,7 @@ struct af_instance { * the number of samples passed though. (Ratio of input * and output, e.g. mul=4 => 1 sample becomes 4 samples) .*/ bool auto_inserted; // inserted by af.c, such as conversion filters + char *label; }; // Current audio stream @@ -132,6 +133,8 @@ void af_destroy(struct af_stream *s); int af_init(struct af_stream *s); void af_uninit(struct af_stream *s); struct af_instance *af_add(struct af_stream *s, char *name, char **args); +int af_remove_by_label(struct af_stream *s, char *label); +struct af_instance *af_find_by_label(struct af_stream *s, char *label); int af_filter(struct af_stream *s, struct mp_audio *data, int flags); struct af_instance *af_control_any_rev(struct af_stream *s, int cmd, void *arg); void af_control_all(struct af_stream *s, int cmd, void *arg); -- cgit v1.2.3