From 4e244c8a4b34268445123b7d6df54ff303561fa5 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Sun, 6 Jul 2025 23:23:26 +0200 Subject: Allow audio processors to pass through HI/VI/DBox etc (#3020). Previously you couldn't map these things if you were using a processor. --- src/lib/audio_processor.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/lib/audio_processor.h') diff --git a/src/lib/audio_processor.h b/src/lib/audio_processor.h index 2c3df3add..f469f07c0 100644 --- a/src/lib/audio_processor.h +++ b/src/lib/audio_processor.h @@ -29,6 +29,7 @@ #include "named_channel.h" +#include #include #include #include @@ -58,7 +59,7 @@ public: /** @return A clone of this AudioProcessor for operation at the specified sampling rate */ virtual std::shared_ptr clone(int sampling_rate) const = 0; /** Process some data, returning the processed result truncated or padded to `channels' */ - virtual std::shared_ptr run(std::shared_ptr, int channels) = 0; + std::shared_ptr run(std::shared_ptr, int channels); virtual void flush() {} /** Make the supplied audio mapping into a sensible default for this processor */ virtual void make_audio_mapping_default(AudioMapping& mapping) const = 0; @@ -69,6 +70,10 @@ public: static std::vector visible(); static void setup_audio_processors(); static AudioProcessor const * from_id(std::string); + static std::vector pass_through(); + +protected: + virtual std::shared_ptr do_run(std::shared_ptr, int channels) = 0; private: static std::vector> _experimental; -- cgit v1.2.3