diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2013-09-10 22:58:33 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2013-09-10 22:58:33 -0400 |
commit | 676ff806970925972b165cd7621ba7ea8c82c08a (patch) | |
tree | 8a28169d0f08824c0b3ce1f5cec375a89029d9f2 /libs/ardour/ardour/audioengine.h | |
parent | 209e4bdcaed8e0f7d66fa5673f9049948e1f1d53 (diff) |
basic functionality for hardware latency measurement
Diffstat (limited to 'libs/ardour/ardour/audioengine.h')
-rw-r--r-- | libs/ardour/ardour/audioengine.h | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/libs/ardour/ardour/audioengine.h b/libs/ardour/ardour/audioengine.h index 4db1604345..980f507be5 100644 --- a/libs/ardour/ardour/audioengine.h +++ b/libs/ardour/ardour/audioengine.h @@ -47,6 +47,8 @@ #include <jack/session.h> #endif +class MTDM; + namespace ARDOUR { class InternalPort; @@ -182,6 +184,14 @@ public: /* sets up the process callback thread */ static void thread_init_callback (void *); + /* latency measurement */ + + MTDM* mtdm(); + void start_latency_detection (); + void stop_latency_detection (); + void set_latency_input_port (const std::string&); + void set_latency_output_port (const std::string&); + private: AudioEngine (); @@ -205,7 +215,12 @@ public: framecnt_t _processed_frames; Glib::Threads::Thread* m_meter_thread; ProcessThread* _main_thread; - + MTDM* _mtdm; + bool _measuring_latency; + PortEngine::PortHandle _latency_input_port; + PortEngine::PortHandle _latency_output_port; + framecnt_t _latency_flush_frames; + void meter_thread (); void start_metering_thread (); void stop_metering_thread (); |