X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=nageru%2Faudio_mixer.h;fp=nageru%2Faudio_mixer.h;h=fac2fc92445420901ef084043356670d6a250bf7;hb=5156378d4ad09d54791083e4067cf002e5431cb5;hp=2b9aa4b9f77d412dc9a6d93950f4596cfff7ad00;hpb=9768e380472e6ad68c8fc06efde3fa20f18bfc00;p=nageru diff --git a/nageru/audio_mixer.h b/nageru/audio_mixer.h index 2b9aa4b..fac2fc9 100644 --- a/nageru/audio_mixer.h +++ b/nageru/audio_mixer.h @@ -136,6 +136,9 @@ public: MappingMode get_mapping_mode() const; InputMapping get_input_mapping() const; + // See extra_devices. + void set_extra_devices(const std::set &devices); + unsigned num_buses() const; void set_locut_cutoff(float cutoff_hz) @@ -451,6 +454,13 @@ private: std::unique_ptr bus_metrics; // One for each bus in . DelayAnalyzerInterface *delay_analyzer = nullptr; + + // A set of devices (potentially empty) that should be kept open even + // if they're not used in any bus. This allows the delay analyzer to + // make sure a given ALSA device is opened to tap into its data, even if + // there is no bus using it. (Non-ALSA devices are allowed to be here, + // but won't do anything.) + std::set extra_devices; }; extern AudioMixer *global_audio_mixer;