diff options
author | Carl Hetherington <carl@carlh.net> | 2010-04-14 23:58:07 +0000 |
---|---|---|
committer | Carl Hetherington <carl@carlh.net> | 2010-04-14 23:58:07 +0000 |
commit | 7939dd9399e8e86b579bbddeba73d997ec6cf1b7 (patch) | |
tree | 4658f948d46b8fcdc69910859c6765d611746f86 /libs | |
parent | 18f2af10ae766bc2e90cc6064728c4d3f77fc7f5 (diff) |
Don't run meters either during freeze.
git-svn-id: svn://localhost/ardour2/branches/3.0@6904 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs')
-rw-r--r-- | libs/ardour/audio_track.cc | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libs/ardour/audio_track.cc b/libs/ardour/audio_track.cc index 07930c49e6..4cf50d0f0b 100644 --- a/libs/ardour/audio_track.cc +++ b/libs/ardour/audio_track.cc @@ -45,6 +45,7 @@ #include "ardour/utils.h" #include "ardour/session_playlists.h" #include "ardour/delivery.h" +#include "ardour/meter.h" #include "i18n.h" using namespace std; @@ -595,14 +596,16 @@ AudioTrack::export_stuff (BufferSet& buffers, sframes_t start, nframes_t nframes /* note: only run processors during export. other layers in the machinery will already have checked that there are no external port processors. - Also, don't run deliveries that write to real output ports. + Also, don't run deliveries that write to real output ports, and don't + run meters. */ for (ProcessorList::iterator i = _processors.begin(); i != _processors.end(); ++i) { boost::shared_ptr<Processor> processor = boost::dynamic_pointer_cast<Processor> (*i); boost::shared_ptr<Delivery> delivery = boost::dynamic_pointer_cast<Delivery> (*i); + boost::shared_ptr<PeakMeter> meter = boost::dynamic_pointer_cast<PeakMeter> (*i); - if (processor && (!delivery || !Delivery::role_requires_output_ports (delivery->role()))) { + if (processor && (!delivery || !Delivery::role_requires_output_ports (delivery->role())) && !meter) { processor->run (buffers, start, start+nframes, nframes, true); } } |