13
0
Commit Graph

17858 Commits

Author SHA1 Message Date
433a9ebe48 libtemporal: catch attempts to convert max audio time values into beats, early 2021-08-13 12:51:34 -06:00
d576fc8ca9 libtemporal: when computing Beats from a ticks value, do not try to pass potentially overflowing ticks value 2021-08-13 12:51:34 -06:00
1af74f7398 libtemporal: correct the definition of std::numeric_limits<Beats>::max(). Comment in code contains details. 2021-08-13 12:51:34 -06:00
bbb3ca01fa libtemporal: remove several BBT-related methods that are not used and problematic for BBT/position markers 2021-08-13 12:51:34 -06:00
0667a50a11 libtemporal: improve TempoMap::get_grid()'s decision making about what bar points to include when bar_mod == 1 2021-08-13 12:51:34 -06:00
877e896caf libtemporal: TempoMap::apply_with_metrics() needs to use *all* metrics (inc. MusicTimePoints) 2021-08-13 12:51:34 -06:00
a49ed5505e libtemporal: no need for a default MusicTimePoint in the tempo map (default tempo+meter points serve same role) 2021-08-13 12:51:34 -06:00
5153124664 change (GUI) Marker objects to accept any Canvas::Item as parent, and use this to draw BBT position markers in the BBT ruler 2021-08-13 12:51:34 -06:00
34a3db7eaa use existing (inline) method for updating thread local tempo map after update (avoid code duplication) 2021-08-13 12:51:34 -06:00
901f593af5 avoid unnecessary extra fetch of thread-local tempo map after undo/redo 2021-08-13 12:51:34 -06:00
25ecc54208 possible minor optimizations of atomic loads in int62_t class 2021-08-13 12:51:34 -06:00
38b1f5eee1 fixup mistakes from a manual conflict resolution during rebase on master 2021-08-13 12:51:34 -06:00
4a43f5aa0b newly-added InternalReturn processor requires a time domain (post-rebase on master) 2021-08-13 12:51:34 -06:00
cffc25a11c libtemporal: make TempoMap::metric_at() variants use all Points, to account for music time points as well as explicit tempo/meter points 2021-08-13 12:51:34 -06:00
c2401c3097 libtemporal: redesign TempoMap::get_grid() to iterate over _points rather than separated _tempos and _meters 2021-08-13 12:51:34 -06:00
8124bec5a1 libtemporal: fix XML node structure for MusicTimePoint 2021-08-13 12:51:34 -06:00
1035f9bd62 libtemporal: fix crash caused by thinko 2021-08-13 12:51:34 -06:00
388fa1b894 libtemporal: when removing tempos/meters/musictime points, remove them from TempoMap::_points also 2021-08-13 12:51:34 -06:00
982ccec7ab libtemporal: when adding tempos/meters/musictime points, add them to TempoMap::_points also 2021-08-13 12:51:34 -06:00
b43eca15b0 Revert "libtemporal: the TempoMap::_points list serves no purpose, so remove it"
This reverts commit edc93fc62b6a36949b3cc37aee333904bc6b97f0.
2021-08-13 12:51:34 -06:00
d6d0eb0d9e libtemporal: MusicTimePoint now IS-A Point,Tempo and Meter, all at once 2021-08-13 12:51:34 -06:00
cc0d065443 libtemporal: preparations to solve upcoming diamond inheritance problem 2021-08-13 12:51:34 -06:00
4e6c06bc95 libtemporal: add maybe-not-required operator>> for timeline types 2021-08-13 12:51:34 -06:00
4aa7e21e12 remove declarations and one call to methods removed in master (lld(1) failed to pick this up; ld(1) does) 2021-08-13 12:51:34 -06:00
cf0ad83f05 extra debug output to track down deep(er) issues in the TempoMap 2021-08-13 12:51:34 -06:00
12454f0a96 fix delivery of music time to LV2 plugins 2021-08-13 12:51:34 -06:00
ce82efafcf libtemporal: slightly improve output from conversion statistics 2021-08-13 12:51:34 -06:00
f61ba0ccdc fix up broken passing of tempo grid information to LV2 plugins 2021-08-13 12:51:34 -06:00
5f67bbe5e4 fix dangling and incorrect use of numeric_limits<double> as a control event position 2021-08-13 12:51:34 -06:00
8a47dc39f1 remove NUTEMPO warning by replacing with an explanatory comment 2021-08-13 12:51:34 -06:00
92749a1b73 remove another NUTEMPO warning - use implicit conversions 2021-08-13 12:51:34 -06:00
ffc9ab66b5 libtemporal: remove TempoMap::metric_at_locked() methods
There is no lock anymore, all modifications are done via RCU
2021-08-13 12:51:33 -06:00
3702da5488 fix up osc support after rebase/merge conflicts 2021-08-13 12:51:33 -06:00
c9d3381935 libtemporal: increase DEBUG_TRACE utility for ::get_grid() and related matters 2021-08-13 12:51:33 -06:00
bd1b6dcda3 libtemporal: start making tempo map work with non-monotonic BBT "bar times" present 2021-08-13 12:51:33 -06:00
c8175b7c49 libtemporal: add new constructors for MusicTimePoint and MeterPoint 2021-08-13 12:51:33 -06:00
f86395688e libtemporal: Beats::round_to_subdivision() was incorectly folding the "beats" part of the value back into the answer.
The "beats" value is already implicit in the "ticks" we actually do the math with
2021-08-13 12:51:33 -06:00
82e4545f7c remove nutempo #warning (already fixed, just remove preprocessor line) 2021-08-13 12:51:33 -06:00
1637c13fbf extend Lua API a little to allow callers to specify time domain for script/plugin automation data 2021-08-13 12:51:33 -06:00
ff77b3eb75 remove nutempo #warning (already fixed, just remove preprocessor line) 2021-08-13 12:51:33 -06:00
6608700e82 no more need to update locations after a tempo map change 2021-08-13 12:51:33 -06:00
3b06ce6e67 remove 3 nutempo #warnings - use plugin (processor) time_domain() when creating AutomationLists 2021-08-13 12:51:33 -06:00
9d4d3908e6 remove some nutempo #warnings and fix up Location time domain API 2021-08-13 12:51:33 -06:00
97a3469972 use new Tempo API in two places where Tempo is explicitly constructed 2021-08-13 12:51:33 -06:00
b8a7de43b6 libtemporal: change Tempo API to ensure that the correct construtor is called
This could be probably be improved with an even more distinct ramped/non-ramped API
2021-08-13 12:51:33 -06:00
12855c1a83 fix types for MIDI source API, and remove unusued loop length member 2021-08-13 12:51:33 -06:00
4e761807bf remove NUTEMPO warning 2021-08-13 12:51:33 -06:00
18e925e4ac remove another NUTEMPO warning (potentially allows audio regions to have beat time position) 2021-08-13 12:51:33 -06:00
c32de2355e extra DEBUG_TRACE statement in tempo map grid computation 2021-08-13 12:51:33 -06:00
e36affe3ae remove another NUTEMPO #warning (use time_domain() of the processor) 2021-08-13 12:51:33 -06:00