diff --git a/gtk2_ardour/strip_silence_dialog.cc b/gtk2_ardour/strip_silence_dialog.cc index 3e68f0dd06..6a591c08b9 100644 --- a/gtk2_ardour/strip_silence_dialog.cc +++ b/gtk2_ardour/strip_silence_dialog.cc @@ -84,12 +84,9 @@ StripSilenceDialog::StripSilenceDialog (Session* s, list const & v) _minimum_length.set_mode (AudioClock::Frames); _minimum_length.set (1000, true); - /* Add this back when we finally do something with it */ - /* table->attach (*Gtk::manage (new Gtk::Label (_("Fade length"), 1, 0.5)), 0, 1, n, n + 1, Gtk::FILL); table->attach (_fade_length, 1, 2, n, n + 1, Gtk::FILL); ++n; - */ _fade_length.set_session (s); _fade_length.set_mode (AudioClock::Frames); @@ -282,7 +279,7 @@ StripSilenceDialog::minimum_length () const framecnt_t StripSilenceDialog::fade_length () const { - return _minimum_length.current_duration (views.front().view->region()->position()); + return _fade_length.current_duration (views.front().view->region()->position()); } void diff --git a/libs/ardour/strip_silence.cc b/libs/ardour/strip_silence.cc index d04612f604..ee6bfb7a5e 100644 --- a/libs/ardour/strip_silence.cc +++ b/libs/ardour/strip_silence.cc @@ -123,9 +123,12 @@ StripSilence::run (boost::shared_ptr r, Progress* progress) ); copy->set_name (RegionFactory::new_region_name (region->name ())); + + framecnt_t const f = std::min (_fade_length, (i->second - i->first)); copy->set_fade_in_active (true); - copy->set_fade_in (FadeLinear, _fade_length); + copy->set_fade_in (FadeLinear, f); + copy->set_fade_out (FadeLinear, f); results.push_back (copy); if (progress && (n <= N)) {