scope engine dsp timing to input metering

This commit is contained in:
Paul Davis 2021-06-07 20:27:13 -06:00
parent 6884a09b7b
commit a2a3ae5ea6
3 changed files with 10 additions and 1 deletions

View file

@ -250,6 +250,8 @@ class LIBARDOUR_API AudioEngine : public PortManager, public SessionHandlePtr
void add_pending_port_deletion (Port*);
void queue_latency_update (bool);
PBD::TimingStats dsp_stats;
private:
AudioEngine ();

View file

@ -489,8 +489,12 @@ AudioEngine::process_callback (pframes_t nframes)
/* tell all Ports that we're starting a new cycle */
PortManager::cycle_start (nframes, _session);
{
PBD::TimerRAII tr (dsp_stats);
PortManager::cycle_start (nframes, _session);
}
/* test if we are freewheeling and there are freewheel signals connected.
* ardour should act normally even when freewheeling unless /it/ is
* exporting (which is what Freewheel.empty() tests for).

View file

@ -7254,6 +7254,9 @@ Session::get_dsp_stats () const
double avg;
double dev;
AudioEngine::instance()->dsp_stats.get_stats (min, max, avg, dev);
ss << "Engine: " << min << ' ' << max << ' ' << avg << ' ' << dev << endl;
dsp_stats.get_stats (min, max, avg, dev);
ss << "Session: " << min << ' ' << max << ' ' << avg << ' ' << dev << endl;