summaryrefslogtreecommitdiff
path: root/libs/ardour/session_export.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2012-02-06 17:09:53 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2012-02-06 17:09:53 +0000
commit009c7a9e44d65184d6b6c613569decc9d93fb490 (patch)
tree48a6d2eb194c9b4871016042bd213a62d36fa1c9 /libs/ardour/session_export.cc
parentf4f2a9a111c32d4761308eb94a8c7cfa214b7116 (diff)
attempt to stop sending MMC/MTC while exporting or freewheeling for any reason
git-svn-id: svn://localhost/ardour2/branches/3.0@11457 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/session_export.cc')
-rw-r--r--libs/ardour/session_export.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/libs/ardour/session_export.cc b/libs/ardour/session_export.cc
index 4f46535a97..4d2944aad5 100644
--- a/libs/ardour/session_export.cc
+++ b/libs/ardour/session_export.cc
@@ -21,6 +21,9 @@
#include "pbd/error.h"
#include <glibmm/thread.h>
+#include <midi++/manager.h>
+#include <midi++/mmc.h>
+
#include "ardour/audioengine.h"
#include "ardour/butler.h"
#include "ardour/export_failed.h"
@@ -89,6 +92,11 @@ Session::pre_export ()
export_status->running = true;
export_status->Aborting.connect_same_thread (*this, boost::bind (&Session::stop_audio_export, this));
export_status->Finished.connect_same_thread (*this, boost::bind (&Session::finalize_audio_export, this));
+
+ /* disable MMC output early */
+
+ _pre_export_mmc_enabled = MIDI::Manager::instance()->mmc()->send_enabled ();
+ MIDI::Manager::instance()->mmc()->enable_send (false);
return 0;
}
@@ -223,6 +231,8 @@ Session::finalize_audio_export ()
_engine.freewheel (false);
export_freewheel_connection.disconnect();
+ MIDI::Manager::instance()->mmc()->enable_send (_pre_export_mmc_enabled);
+
/* maybe write CUE/TOC */
export_handler.reset();