X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fcrossfade.cc;h=c687c60cd1a4341ae40c0c8436538da79e53eaab;hb=3f647a9dcd6129fdbbb78a10859516bb275648af;hp=a988585b906e24c3d66bc46b1fe620ed3ade8895;hpb=da89cd0c9b545c418fe2d6692844ff05779bb258;p=ardour.git diff --git a/libs/ardour/crossfade.cc b/libs/ardour/crossfade.cc index a988585b90..c687c60cd1 100644 --- a/libs/ardour/crossfade.cc +++ b/libs/ardour/crossfade.cc @@ -17,13 +17,9 @@ */ - -#include "pbd/stacktrace.h" - #include "ardour/debug.h" #include "ardour/types.h" #include "ardour/crossfade.h" -#include "ardour/crossfade_compare.h" #include "ardour/audioregion.h" #include "ardour/playlist.h" #include "ardour/utils.h" @@ -89,14 +85,15 @@ Crossfade::operator== (const Crossfade& other) Crossfade::Crossfade (boost::shared_ptr in, boost::shared_ptr out, framecnt_t length, - framepos_t position, AnchorPoint ap) - : AudioRegion (in->session(), position, length, in->name() + string ("<>") + out->name()) + : AudioRegion (in->session(), 0, length, in->name() + string ("<>") + out->name()) , CROSSFADE_DEFAULT_PROPERTIES , _fade_in (Evoral::Parameter(FadeInAutomation)) // linear (gain coefficient) => -inf..+6dB , _fade_out (Evoral::Parameter(FadeOutAutomation)) // linear (gain coefficient) => -inf..+6dB { + register_properties (); + _in = in; _out = out; _anchor_point = ap; @@ -112,6 +109,8 @@ Crossfade::Crossfade (boost::shared_ptr a, boost::shared_ptr -inf..+6dB , _fade_out (Evoral::Parameter(FadeOutAutomation)) // linear (gain coefficient) => -inf..+6dB { + register_properties (); + _in_update = false; _fixed = false; _follow_overlap = false; @@ -132,6 +131,8 @@ Crossfade::Crossfade (const Playlist& playlist, XMLNode const & node) , _fade_out (Evoral::Parameter(FadeOutAutomation)) // linear (gain coefficient) => -inf..+6dB { + register_properties (); + boost::shared_ptr r; XMLProperty const * prop; LocaleGuard lg (X_("POSIX")); @@ -153,7 +154,7 @@ Crossfade::Crossfade (const Playlist& playlist, XMLNode const & node) */ r = RegionFactory::region_by_id (id); } - + if (!r) { error << string_compose (_("Crossfade: no \"in\" region %1 found in playlist %2 nor in region map"), id, playlist.name()) << endmsg; @@ -176,7 +177,7 @@ Crossfade::Crossfade (const Playlist& playlist, XMLNode const & node) if (!r) { r = RegionFactory::region_by_id (id2); } - + if (!r) { error << string_compose (_("Crossfade: no \"out\" region %1 found in playlist %2 nor in region map"), id2, playlist.name()) << endmsg; @@ -202,11 +203,14 @@ Crossfade::Crossfade (boost::shared_ptr orig, boost::shared_ptr