From df3eaf91886d1d33fc60235f15a4e45b260bd4db Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Sat, 17 Mar 2012 23:41:51 +0000 Subject: [PATCH] Remove erroneous non-run of plugins when the transport is stopped and plugins-stop-with-transport is true; this option is supposed to mean the flush() is called on processors on transport stop, in order to silence reverb tails etc. Comment this and try to make the GUI option name more helpful. Should fix #4748. git-svn-id: svn://localhost/ardour2/branches/3.0@11725 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/rc_option_editor.cc | 2 +- libs/ardour/ardour/rc_configuration_vars.h | 3 +++ libs/ardour/route.cc | 5 ----- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/gtk2_ardour/rc_option_editor.cc b/gtk2_ardour/rc_option_editor.cc index ee0a9828a0..3dc5972eac 100644 --- a/gtk2_ardour/rc_option_editor.cc +++ b/gtk2_ardour/rc_option_editor.cc @@ -1269,7 +1269,7 @@ RCOptionEditor::RCOptionEditor () add_option (_("Audio"), new BoolOption ( "plugins-stop-with-transport", - _("Stop plugins when the transport is stopped"), + _("Flush plugins when the transport is stopped"), sigc::mem_fun (*_rc_config, &RCConfiguration::get_plugins_stop_with_transport), sigc::mem_fun (*_rc_config, &RCConfiguration::set_plugins_stop_with_transport) )); diff --git a/libs/ardour/ardour/rc_configuration_vars.h b/libs/ardour/ardour/rc_configuration_vars.h index 766db9db1c..9c631b11ee 100644 --- a/libs/ardour/ardour/rc_configuration_vars.h +++ b/libs/ardour/ardour/rc_configuration_vars.h @@ -111,6 +111,9 @@ CONFIG_VARIABLE (gain_t, click_gain, "click-gain", 1.0) /* transport control and related */ +/** if true, we call Processor::flush() on all processors when the transport is stopped. + * Note that processors are still run when the transport is not moving. + */ CONFIG_VARIABLE (bool, plugins_stop_with_transport, "plugins-stop-with-transport", false) CONFIG_VARIABLE (bool, do_not_record_plugins, "do-not-record-plugins", false) CONFIG_VARIABLE (bool, stop_recording_on_xrun, "stop-recording-on-xrun", false) diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc index c726aec833..f5bd4dc636 100644 --- a/libs/ardour/route.cc +++ b/libs/ardour/route.cc @@ -518,11 +518,6 @@ Route::process_output_buffers (BufferSet& bufs, continue; } - if (Config->get_plugins_stop_with_transport() && _session.transport_speed() == 0 && boost::dynamic_pointer_cast (*i)) { - /* don't run plugins with the transport stopped, if configured this way */ - continue; - } - #ifndef NDEBUG /* if it has any inputs, make sure they match */ if (boost::dynamic_pointer_cast (*i) == 0 && (*i)->input_streams() != ChanCount::ZERO) {