13
0
Commit Graph

20679 Commits

Author SHA1 Message Date
nick_m
58d4889ad3 Tempo ramps - music-locked meters now use beats rather than pulses as their reference.
- fixes many problems with a non-zero audio-locked first meter.
2016-05-27 23:38:12 +10:00
nick_m
ba3ae54f51 Tempo ramps - clean up negative beat handling in beats_to_bbt_locked () 2016-05-27 23:38:12 +10:00
nick_m
cab7335d58 Tempo ramps - fix crash with simplest case. 2016-05-27 23:38:12 +10:00
nick_m
7d06651a5c Tempo ramps - fix compilation 2016-05-27 23:38:12 +10:00
nick_m
1c1bf4a06b Tempo ramps - show grid when dragging first meter. 2016-05-27 23:38:11 +10:00
nick_m
b47bb55226 Tempo ramps - improve music-locked meter drags, improve dump().
- dump now shows cross-calculation of tempo positions.
2016-05-27 23:38:11 +10:00
nick_m
a58f862640 Tempo ramps - fix constant tempos (again). 2016-05-27 23:38:11 +10:00
nick_m
e82c997b3d Tempo ramps - remove double calls to RegionView::set_duration() and MidiRegionView::redisplay_model()
- massively improves note redrawing performance when dragging tempos
	  and audio-locked meters,
2016-05-27 23:38:11 +10:00
nick_m
9def5caeaf Tempo ramps - code cleanup 2016-05-27 23:38:11 +10:00
nick_m
f16089ba88 Tempo ramps - allow moving the first meter if audio locked.
- strangely broken wrt the grid, but kind-of works.
2016-05-27 23:38:11 +10:00
nick_m
17a6cda89a Tempo ramps - fix incorrect handling of unsloveable maps. 2016-05-27 23:38:11 +10:00
nick_m
b415b59f79 Tempo ramps - respect tempo note type and meter note divisor correctly.
- tempo and meter position is now pulse-based,
	  although meter still has a beat for convenience.
2016-05-27 23:38:11 +10:00
nick_m
a47359c382 Tempo ramps - fix erroneous tempo_at_frame(), use correct type for offsets. 2016-05-27 23:38:11 +10:00
nick_m
d3c24fe0ca Tempo ramps - midi notes resize when dragged, misc bug fixes. 2016-05-27 23:38:11 +10:00
nick_m
8fce08610a Tempo ramps - snap uses audio-locked meter offsets.
- fixes much of the fallout from the previous commit.
2016-05-27 23:38:11 +10:00
nick_m
ec791c8dd4 Tempo ramps - hook up tempo display, a new approach to audio-locked meters
- audio locked meters define an offset which is used for all public
	  TempoMap methods while the internal map remains contiguous.
	  Probably a few unexpected consequences here, but seems to work mostly.
2016-05-27 23:38:11 +10:00
nick_m
3a2ff0a4a7 Tempo ramps - new (old) map solving strategy. 2016-05-27 23:38:11 +10:00
nick_m
7e408b38d8 Tempo ramps - comment out debugging 2016-05-27 23:38:11 +10:00
nick_m
acf7c2592a Tempo ramps -consolidate code, add precision check for tempo metrics. 2016-05-27 23:38:11 +10:00
nick_m
4d9b6a4ced Tempo ramps - fix various thinkos. 2016-05-27 23:38:11 +10:00
nick_m
278ad73259 Tempo ramps - check for impossible locations tempo dialog bbt entry. reorganise code. 2016-05-27 23:38:11 +10:00
nick_m
36ec551a8a Tempo ramps - fix music-locked meter drags. 2016-05-27 23:38:11 +10:00
nick_m
eeb20bc392 Tempo ramps - grid now follows dragging meter section. 2016-05-27 23:38:11 +10:00
nick_m
a0558694df Tempo ramps - audio-locked meters have a bbt of 1|1|0
- possibly lots going wrong with this due to multiple occurences
	  of 1|1|0.
2016-05-27 23:38:11 +10:00
nick_m
6ecef52d76 Tempo ramps - meter sections drag again. 2016-05-27 23:38:11 +10:00
nick_m
b4f0695780 Tempo ramps - comment and tidy. 2016-05-27 23:38:11 +10:00
nick_m
989089a4e9 Tempo ramps - add method to handle beat-based tempo reordering. clean code. 2016-05-27 23:38:11 +10:00
nick_m
aa95ffbc97 Tempo ramps - change some prototypes, rename some methods. 2016-05-27 23:38:11 +10:00
nick_m
96b511e221 Tempo ramps - fix ordering glitches when dragging tempos. 2016-05-27 23:38:11 +10:00
nick_m
9a766c56f9 Tempo ramps - fix comments. 2016-05-27 23:38:11 +10:00
nick_m
8225d7cc6f Tempo ramps - fix constant tempo thinko. 2016-05-27 23:38:11 +10:00
nick_m
7493a27a1f Tempo ramps - fix return of constant tempo, experimentally use _at_tempo() methods. 2016-05-27 23:38:11 +10:00
nick_m
452e484faf Tempo ramps - rework mouse dragging of tempo marks, derive beat_at_tempo() and tempo_at_beat(). 2016-05-27 23:38:11 +10:00
nick_m
38df1063d3 Tempo ramps - re-enabe audio-locked meter sections, fix more locking errors. 2016-05-27 23:38:10 +10:00
nick_m
77abc08d6f Tempo ramps - fix crash-causing locking errors. clean up code a bit. 2016-05-27 23:38:10 +10:00
nick_m
474784c8ba Tempo ramps - setting bbt of an audio-locked tempo marker in the tempo dialog works. 2016-05-27 23:38:10 +10:00
nick_m
0f81899280 Tempo ramps - fixes bbt wrt frame-locked tempo sections in the tempo dialog 2016-05-27 23:38:10 +10:00
nick_m
c4fe85dd7c Tempo ramps - fix thinko 2016-05-27 23:38:10 +10:00
nick_m
b8b6d562a4 Tempo ramps - restore bbt settings in tempo dialog for audio-locked tempo markers
- see comments
2016-05-27 23:38:10 +10:00
nick_m
c98e008745 Tempo ramps - code cleanup
- what was i thinking?
2016-05-27 23:38:10 +10:00
nick_m
6d6ccaa839 Tempo ramps - all public TempoSection position parameters are session-relative. 2016-05-27 23:38:10 +10:00
nick_m
c7ff67004a Tempo ramps - fix messed up meter section state, audio-locked tempos ignore the bbt setting in the tempo dialog for now. 2016-05-27 23:38:10 +10:00
nick_m
d7ec204bf6 Tempo ramps - comment new meter section behaviour. 2016-05-27 23:38:10 +10:00
nick_m
0660705fdc Tempo ramps - fix changing to constant tempo 2016-05-27 23:38:10 +10:00
nick_m
bc42dea451 Tempo ramps - first stab at metric marks locked to frames or beats.
- pretty much untested.
2016-05-27 23:38:10 +10:00
nick_m
d8549c6ff5 Tempo ramps - demystify comments a bit. 2016-05-27 23:38:10 +10:00
nick_m
895bbbba11 Tempo ramps - minor optimisation and comment clarification. 2016-05-27 23:38:10 +10:00
nick_m
28127b1768 Tempo ramps - Remove the tick walk, store c_func, document the approach. 2016-05-27 23:38:10 +10:00
nick_m
f72eef1651 Tempo ramps - use consistent naming for _locked methods, use enum_2_string for TempoSection::Type. 2016-05-27 23:38:10 +10:00
nick_m
a2495cdff3 Tempo ramps - fix more namespace confusion 2016-05-27 23:38:10 +10:00