summaryrefslogtreecommitdiff
path: root/libs/ardour/session_vst.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/session_vst.cc')
-rw-r--r--libs/ardour/session_vst.cc12
1 files changed, 12 insertions, 0 deletions
diff --git a/libs/ardour/session_vst.cc b/libs/ardour/session_vst.cc
index 1b25659cc9..ffff11510b 100644
--- a/libs/ardour/session_vst.cc
+++ b/libs/ardour/session_vst.cc
@@ -500,11 +500,23 @@ intptr_t Session::vst_callback (
case audioMasterBeginEdit:
SHOW_CALLBACK ("audioMasterBeginEdit");
// begin of automation session (when mouse down), parameter index in <index>
+ if (plug && plug->plugin_insert ()) {
+ boost::shared_ptr<AutomationControl> ac = plug->plugin_insert ()->automation_control (Evoral::Parameter (PluginAutomation, 0, index));
+ if (ac) {
+ ac->start_touch (ac->session().transport_sample());
+ }
+ }
return 0;
case audioMasterEndEdit:
SHOW_CALLBACK ("audioMasterEndEdit");
// end of automation session (when mouse up), parameter index in <index>
+ if (plug && plug->plugin_insert ()) {
+ boost::shared_ptr<AutomationControl> ac = plug->plugin_insert ()->automation_control (Evoral::Parameter (PluginAutomation, 0, index));
+ if (ac) {
+ ac->stop_touch (ac->session().transport_sample());
+ }
+ }
return 0;
case audioMasterOpenFileSelector: