View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0004260 | ardour | bugs | public | 2011-08-11 18:08 | 2020-04-19 20:15 |
| Reporter | royvegard | Assigned To | cth103 | ||
| Priority | normal | Severity | tweak | Reproducibility | always |
| Status | closed | Resolution | fixed | ||
| Target Version | 3.0-beta1 | ||||
| Summary | 0004260: Region crossfades not recalculated when moving region | ||||
| Description | When moving a region overlapping one end of another region, to the other end of that other region, in one motion, crossfades are not recalculated. | ||||
| Tags | No tags attached. | ||||
|
2011-08-11 18:09
|
|
|
2011-08-11 18:09
|
|
|
|
See screenshots for illustration of what happens. After moving the selected region to the other end of the stationary region, the crossfade length remains the same as it was before the move. Doing another move of the region will recalculate the crossfade length. Use different overlap lengths to make the effect more obvious. |
|
2011-08-20 18:52
|
4260.patch (2,131 bytes)
diff --git a/libs/ardour/crossfade.cc b/libs/ardour/crossfade.cc
index 9cbbbf1..dc8d3e3 100644
--- a/libs/ardour/crossfade.cc
+++ b/libs/ardour/crossfade.cc
@@ -586,8 +586,8 @@ Crossfade::compute (boost::shared_ptr<AudioRegion> a, boost::shared_ptr<AudioReg
} else {
_position = top->last_frame() - short_xfade_length;
}
-
- _length = min (short_xfade_length, top->length());
+
+ set_xfade_length (min (short_xfade_length, top->length()));
_follow_overlap = false;
_anchor_point = EndOfIn;
_active = true;
@@ -621,7 +621,7 @@ Crossfade::compute (boost::shared_ptr<AudioRegion> a, boost::shared_ptr<AudioReg
_in = top;
_out = bottom;
_position = top->first_frame();
- _length = min (short_xfade_length, top->length());
+ set_xfade_length (min (short_xfade_length, top->length()));
_follow_overlap = false;
_anchor_point = StartOfIn;
_active = true;
@@ -670,11 +670,11 @@ Crossfade::compute (boost::shared_ptr<AudioRegion> a, boost::shared_ptr<AudioReg
if (model == FullCrossfade) {
_position = bottom->first_frame(); // "{"
- _length = _out->first_frame() + _out->length() - _in->first_frame();
+ set_xfade_length (_out->first_frame() + _out->length() - _in->first_frame());
/* leave active alone */
_follow_overlap = true;
} else {
- _length = min (short_xfade_length, top->length());
+ set_xfade_length (min (short_xfade_length, top->length()));
_position = top->last_frame() - _length; // "]" - length
_active = true;
_follow_overlap = false;
@@ -694,11 +694,11 @@ Crossfade::compute (boost::shared_ptr<AudioRegion> a, boost::shared_ptr<AudioReg
_anchor_point = StartOfIn;
if (model == FullCrossfade) {
- _length = _out->first_frame() + _out->length() - _in->first_frame();
+ set_xfade_length (_out->first_frame() + _out->length() - _in->first_frame());
/* leave active alone */
_follow_overlap = true;
} else {
- _length = min (short_xfade_length, top->length());
+ set_xfade_length (min (short_xfade_length, top->length()));
_active = true;
_follow_overlap = false;
|
|
|
I think the attached patch fixes this but I need to run it past Paul. |
|
|
This should be fixed in SVN 10028. |
|
|
Issue has been closed automatically, by Trigger Close Plugin. Feel free to re-open with additional information if you think the issue is not resolved. |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2011-08-11 18:08 | royvegard | New Issue | |
| 2011-08-11 18:09 | royvegard | File Added: ardour_crossfade_01.png | |
| 2011-08-11 18:09 | royvegard | File Added: ardour_crossfade_02.png | |
| 2011-08-11 18:14 | royvegard | Note Added: 0011301 | |
| 2011-08-12 16:00 | cth103 | cost | => 0.00 |
| 2011-08-12 16:00 | cth103 | Target Version | => 3.0-beta1 |
| 2011-08-20 18:52 | cth103 | File Added: 4260.patch | |
| 2011-08-20 18:52 | cth103 | Note Added: 0011388 | |
| 2011-08-29 16:00 | cth103 | Note Added: 0011412 | |
| 2011-08-29 16:00 | cth103 | Status | new => resolved |
| 2011-08-29 16:00 | cth103 | Resolution | open => fixed |
| 2011-08-29 16:00 | cth103 | Assigned To | => cth103 |
| 2020-04-19 20:15 | system | Note Added: 0022713 | |
| 2020-04-19 20:15 | system | Status | resolved => closed |