]> git.sesse.net Git - nageru/blobdiff - mixer.h
Let the theme distinguish between fake and real inputs (ie., if there is an actual...
[nageru] / mixer.h
diff --git a/mixer.h b/mixer.h
index 6a58575febd61d230b5e0cb7c65a6771a66248e5..e0f96cf16a922034f4ee64bd73cca361f08d963d 100644 (file)
--- 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<std::mutex> lock(compressor_mutex);
@@ -293,6 +308,12 @@ public:
                level_compressor_enabled = enabled;
        }
 
+       bool get_gain_staging_auto() const
+       {
+               std::unique_lock<std::mutex> lock(compressor_mutex);
+               return level_compressor_enabled;
+       }
+
        void set_final_makeup_gain_db(float gain_db)
        {
                std::unique_lock<std::mutex> 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<PBOFrameAllocator> frame_allocator;
@@ -473,7 +495,7 @@ private:
        std::atomic<bool> 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)