X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fstrip_silence.cc;h=62b08cbb0a3114b1b4997e5d344e07cf3bf950f3;hb=86d927b4ddbcedd1d6c120b1176aaef7352773cd;hp=ee6bfb7a5e46bea740a21802696a2a44caec7811;hpb=f9b1e437a5ef408fe6ab279625bf9cc081bd897a;p=ardour.git diff --git a/libs/ardour/strip_silence.cc b/libs/ardour/strip_silence.cc index ee6bfb7a5e..62b08cbb0a 100644 --- a/libs/ardour/strip_silence.cc +++ b/libs/ardour/strip_silence.cc @@ -49,7 +49,7 @@ StripSilence::run (boost::shared_ptr r, Progress* progress) results.clear (); /* we only operate on AudioRegions, for now, though this could be adapted to MIDI - as well I guess + as well I guess */ boost::shared_ptr region = boost::dynamic_pointer_cast (r); InterThreadInfo itt; @@ -102,14 +102,14 @@ StripSilence::run (boost::shared_ptr r, Progress* progress) --last_silence; frameoffset_t const end_of_region = r->start() + r->length(); - + if (last_silence->second != end_of_region - 1) { audible.push_back (std::make_pair (last_silence->second, end_of_region - 1)); } int n = 0; int const N = audible.size (); - + for (AudioIntervalResult::const_iterator i = audible.begin(); i != audible.end(); ++i) { PBD::PropertyList plist; @@ -117,20 +117,20 @@ StripSilence::run (boost::shared_ptr r, Progress* progress) plist.add (Properties::length, i->second - i->first); plist.add (Properties::position, r->position() + (i->first - r->start())); - + copy = boost::dynamic_pointer_cast ( RegionFactory::create (region, (i->first - r->start()), plist) ); - + 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, f); copy->set_fade_out (FadeLinear, f); results.push_back (copy); - + if (progress && (n <= N)) { progress->set_progress (float (n) / N); }