tempo map: when resetting, set beat/quarter positions as well as audio positions
introducing a new time signature that uses non-quarter notes as the denominator will move the beat position a given BBT time (since the middle "B" of BBT refers to "beats" given by the denominator, not quarters).
This commit is contained in:
parent
6af9dffa7c
commit
f5887b978d
@ -1238,8 +1238,8 @@ TempoMap::reset_starting_at (superclock_t sc)
|
|||||||
if (!mtp) {
|
if (!mtp) {
|
||||||
DEBUG_TRACE (DEBUG::MapReset, string_compose ("recompute %1 using %2\n", p->bbt(), metric));
|
DEBUG_TRACE (DEBUG::MapReset, string_compose ("recompute %1 using %2\n", p->bbt(), metric));
|
||||||
superclock_t sc = metric.superclock_at (p->bbt());
|
superclock_t sc = metric.superclock_at (p->bbt());
|
||||||
DEBUG_TRACE (DEBUG::MapReset, string_compose ("\tbased on %1 move to %2,%3\n", p->bbt(), sc, p->beats()));
|
DEBUG_TRACE (DEBUG::MapReset, string_compose ("\tbased on %1 move to %2,%3\n", p->bbt(), sc, metric.meter().quarters_at (p->bbt())));
|
||||||
p->set (sc, p->beats(), p->bbt());
|
p->set (sc, metric.meter().quarters_at (p->bbt()), p->bbt());
|
||||||
} else {
|
} else {
|
||||||
DEBUG_TRACE (DEBUG::MapReset, "\tnot recomputing this one\n");
|
DEBUG_TRACE (DEBUG::MapReset, "\tnot recomputing this one\n");
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user