X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=mixer.h;h=e0f96cf16a922034f4ee64bd73cca361f08d963d;hb=e50b38a01429d41b6681db8675dc8b8f64a20c36;hp=6a58575febd61d230b5e0cb7c65a6771a66248e5;hpb=7dec19543c858de7247f64f6c82f613f9fe05825;p=nageru diff --git a/mixer.h b/mixer.h index 6a58575..e0f96cf 100644 --- a/mixer.h +++ b/mixer.h @@ -250,6 +250,11 @@ public: locut_enabled = enabled; } + bool get_locut_enabled() const + { + return locut_enabled; + } + float get_limiter_threshold_dbfs() { return limiter_threshold_dbfs; @@ -275,11 +280,21 @@ public: limiter_enabled = enabled; } + bool get_limiter_enabled() const + { + return limiter_enabled; + } + void set_compressor_enabled(bool enabled) { compressor_enabled = enabled; } + bool get_compressor_enabled() const + { + return compressor_enabled; + } + void set_gain_staging_db(float gain_db) { std::unique_lock lock(compressor_mutex); @@ -293,6 +308,12 @@ public: level_compressor_enabled = enabled; } + bool get_gain_staging_auto() const + { + std::unique_lock lock(compressor_mutex); + return level_compressor_enabled; + } + void set_final_makeup_gain_db(float gain_db) { std::unique_lock lock(compressor_mutex); @@ -403,6 +424,7 @@ private: int64_t pts_int = 0; // In TIMEBASE units. std::mutex bmusb_mutex; + bool has_bmusb_thread = false; struct CaptureCard { CaptureInterface *capture; std::unique_ptr frame_allocator; @@ -473,7 +495,7 @@ private: std::atomic should_cut{false}; audio_level_callback_t audio_level_callback = nullptr; - std::mutex compressor_mutex; + mutable std::mutex compressor_mutex; Ebu_r128_proc r128; // Under compressor_mutex. CorrelationMeasurer correlation; // Under compressor_mutex. @@ -520,5 +542,6 @@ private: }; extern Mixer *global_mixer; +extern bool uses_mlock; #endif // !defined(_MIXER_H)