Paul Davis
2c80aab912
libtemporal: do not emit MapChanged from methods that change TempoMap, only when we use RCU to switch ptrs
2021-08-13 12:51:32 -06:00
Paul Davis
1ab27fd98f
libardour: session listens to tempo map change again
2021-08-13 12:51:32 -06:00
Paul Davis
37399f7d50
libtemporal: move TempoMap::update() into .cc, add debug output and emit relevant signal at end
2021-08-13 12:51:32 -06:00
Paul Davis
6a9330b2b0
libtemporal: fix TempoMap::fetch_writable() so that it actually does what its name describes
2021-08-13 12:51:32 -06:00
Paul Davis
364fffd458
temporal: TempoMap::Changed is now a static member named TempoMap::MapChanged
2021-08-13 12:51:32 -06:00
Paul Davis
657350455e
temporal: implement copy operator and operator= for TempoMap
2021-08-13 12:51:32 -06:00
Paul Davis
146b432c51
temporal: extend debug output
2021-08-13 12:51:32 -06:00
Paul Davis
4b52e1bf23
temporal: slightly reduce overflow risk (see comment)
2021-08-13 12:51:32 -06:00
Paul Davis
279d1aa5dc
temporal: catch a special case when converting between superclock and beats
2021-08-13 12:51:32 -06:00
Paul Davis
a783f2d4f3
fixup another NUTEMPO #warning
2021-08-13 12:51:32 -06:00
Paul Davis
016aada4df
libtemporal: fix/improve/correct parsing of timecnt_t from string
2021-08-13 12:51:32 -06:00
Paul Davis
d165c492af
temporal: fix/simplify/improve parsing of time values from strings
2021-08-13 12:51:32 -06:00
Paul Davis
e590598dcf
libtemporal: move DEBUG::Beats into correct location
2021-08-13 12:51:32 -06:00
Paul Davis
f015c08dd9
libtemporal: move Beats operator<< and operator>> to .cc and add exceptions for input
2021-08-13 12:51:32 -06:00
Paul Davis
af2474ab80
fix setting VST loop times (in beats)
2021-08-13 12:51:32 -06:00
Paul Davis
968da60e90
fix MIDI timestretch (libardour part)
2021-08-13 12:51:32 -06:00
Paul Davis
3197d24f38
fix expression ordering when multiplying region length by ratio_t
2021-08-13 12:51:32 -06:00
Paul Davis
683512f5a9
fix initializer for TimeFXRequest::time_fraction (denominator not allowed to be zero)
2021-08-13 12:51:32 -06:00
Paul Davis
78233b343f
libtemporal: add operator<<() for ratio_t
2021-08-13 12:51:32 -06:00
Paul Davis
209908f700
libtemporal: improve/fix implementation of timepos_t::operator+=(timepos_t)
2021-08-13 12:51:32 -06:00
Paul Davis
9438295607
libtemporal: fix implementation of timecnt_t::operator+ (timecnt_t)
2021-08-13 12:51:32 -06:00
Paul Davis
13f4ee2c1e
temporal: remove unnecessary TempoMap::dump_locked() method
2021-08-13 12:51:32 -06:00
Paul Davis
47aa232f60
temporal: fix up creating/resetting tempo map state via XML
2021-08-13 12:51:32 -06:00
Paul Davis
d1c695a1a6
fix logic for setting state of tempo map from XML
...
We are using RCU for the tempo map so ... we need to use it
2021-08-13 12:51:32 -06:00
Paul Davis
fa67e07d87
temporal: remove debug output
2021-08-13 12:51:32 -06:00
Paul Davis
1e9e02e42f
temporal: fix setting tempos and meters from XML state
2021-08-13 12:51:32 -06:00
Paul Davis
37332af742
fix incorrect use of TempoMetric API
2021-08-13 12:51:32 -06:00
Paul Davis
7dc3db49eb
use DoubleableBeats in VST3 to provide plugin API required doubles for beat time
2021-08-13 12:51:32 -06:00
Paul Davis
3eac6ac7dc
Temporal: remove last (?) double-based method
2021-08-13 12:51:32 -06:00
Paul Davis
f66a6c779e
adapt to DoubleableBeats and so forth (libs edition)
2021-08-13 12:51:32 -06:00
Paul Davis
3e8f4d80fb
remove (almost) all floating point operations from Beats, add DoubleableBeats
...
The latter is a "wrapper" around Beats that provides ::to_double() for those times when we
absolutely need a floating point representation
2021-08-13 12:51:32 -06:00
Paul Davis
3010bed4ef
remove old tempo(map) implementation
2021-08-13 12:51:32 -06:00
Paul Davis
e38e828152
use explicit timepos_t() for region start property in property lists (libardour edition)
2021-08-13 12:51:31 -06:00
Paul Davis
94afcba111
libardour: fix comment in Region::source_beats_to_absolute_time()
2021-08-13 12:51:31 -06:00
Paul Davis
80986b9445
libtemporal: add (commented) debug output for timepos_t::distance() methods
2021-08-13 12:51:31 -06:00
Paul Davis
6fe4394c54
fix parameter name in comment
2021-08-13 12:51:31 -06:00
Paul Davis
8c22ade428
libtemporal: fix Beats::round_to_subdivision()
2021-08-13 12:51:31 -06:00
Paul Davis
0fa56402be
move DEBUG::SnapBBT into libtemporal
2021-08-13 12:51:31 -06:00
Paul Davis
7c61fe405c
Evoral: cleanup for explicit Beats::operator bool()
2021-08-13 12:51:31 -06:00
Paul Davis
34d798327b
libardour: cleanup for explicit Beats::operator bool()
2021-08-13 12:51:31 -06:00
Paul Davis
e188fbe0ee
fix incorrect use timepos_t::position (incorrect ordering)
2021-08-13 12:51:31 -06:00
Paul Davis
df0ac42f54
Temporal: cleanup for explicit Beats::operator bool()
2021-08-13 12:51:31 -06:00
Paul Davis
05740e7069
Temporal: mark Beats::operator bool() as explicit, to avoid unintended/accidental use when implicitly casting to int/float types
2021-08-13 12:51:31 -06:00
Paul Davis
5e0cf747bb
Temporal: removed unused std::numeric_limits<> definitions for timeline types
...
There can be no single ::max() or ::min() value for these types because the time domain matters. With a given
tempo map, a certain beat value represent a time before or after the maximum possible audio domain value
2021-08-13 12:51:31 -06:00
Paul Davis
de3eb54958
Temporal: in an update to the previous commit, actually remove timepos_t::compute_ticks() rather than claim to implement it
2021-08-13 12:51:31 -06:00
Paul Davis
400018e121
Temporal: implement timepos_t::compute_ticks()
2021-08-13 12:51:31 -06:00
Paul Davis
0ce40fc648
Temporal: fix timepos_t (Beats) constructor
...
flag bit was set incorrectly
2021-08-13 12:51:31 -06:00
Paul Davis
a01bb90c04
libardour: remove _length_beats member from MidiSource and use Source::_length
...
timecnt_t can represent either time domain
2021-08-13 12:51:31 -06:00
Paul Davis
9e58c43ecd
libardour: change flow control to return early rather than use condition scope in Region::set_length()
2021-08-13 12:51:31 -06:00
Paul Davis
9ca376c232
libardour: fix another NUTEMPO warning by replacing a BeatSamplesConverter with timecnt_t
2021-08-13 12:51:31 -06:00