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
nick_m
36f04367df
Tempo ramps - fix crazy compilable namespace thinko
2016-05-27 23:38:10 +10:00
nick_m
bdef9b2466
Tempo ramps - fix constant tempo assumption wrt midi ghost note.
2016-05-27 23:38:10 +10:00
nick_m
d14c660261
Tempo ramps - fix save/restore of region position_lock_style.
2016-05-27 23:38:10 +10:00
nick_m
87d49cd6ec
Tempo ramps - api rename, fix various meter and tempo dialog bugs.
2016-05-27 23:38:10 +10:00
nick_m
885f1fd684
Tempo ramps - update midi regions and locations when dragging tempo.
...
- also make locations and regions use a double beat rather than bbt for musical position.
2016-05-27 23:38:10 +10:00
nick_m
772683d2df
Tempo ramps - improve the performance of recompute_map().
2016-05-27 23:38:10 +10:00
nick_m
2f5b6b6b85
Tempo ramps - clean up TempoSection, fix thinko in position function.
2016-05-27 23:38:10 +10:00
nick_m
70cb8719df
Tempo ramps - replace ugly bootstrapping code in TempoMap::frame_time() with new api.
...
- also fix some type confusion.
2016-05-27 23:38:10 +10:00
nick_m
458036b894
Tempo ramps - meter sections work again.
...
- also fix *some* of the more hackish code in this branch.
2016-05-27 23:38:10 +10:00
nick_m
5c6e18e6a0
Tempo ramps - remove the concept of bars from tempo sections.
...
- this helps where tempo and meter have a somewhat circular
dependency.
MetricSection now has a musical position expressed in beats (a double).
MeterSection still has a bbt, but it really isn't needed as we have
enough information to discover the number of bars at a given beat without it.
TempoSection now has a hack to enable loading of legacy sessions, which will
ultimately be a lot cleaner than the current code.
Removing bars from tempo sections also allows us to place them
at arbitrary frames (implemented here).
2016-05-27 23:38:09 +10:00
nick_m
41c8b534b7
Tempo ramps - amend previous commit.
2016-05-27 23:38:09 +10:00
nick_m
8d007e8a77
Tempo ramps - fix many problems wrt dragging tempos over each other.
...
- also preparation for metric lock style and meter bug fix.
2016-05-27 23:38:09 +10:00
nick_m
feece53838
Tempo ramps - fix odd display when dragging one tempo past another.
...
- also preparations for removal of beat limitation on tempos
- some code clean ing
2016-05-27 23:38:09 +10:00
nick_m
ba0cfe81a4
Tempo ramps - massively speed up dragging of tempo marks.
2016-05-27 23:38:09 +10:00
nick_m
db77ca99a1
Tempo ramps - don't use methods we don't need to use.
...
- more room for improvement here
2016-05-27 23:38:09 +10:00
nick_m
340bd42c62
Tempo ramps - allow live updating of tempo markers.
...
- all a bit slow, but should be ok once we can lock
markers to frames.
2016-05-27 23:38:09 +10:00
nick_m
7898435d3f
Tempo ramps - define_one_bar() delivers constant tempo.
...
- also some renaming and code review
2016-05-27 23:38:09 +10:00
nick_m
9eeccf0c17
Tempo ramps - port audio unit and midi clock slave.
...
- untested.
2016-05-27 23:38:09 +10:00
nick_m
2d649ceac1
Tempo ramps - get tests to comile again.
2016-05-27 23:38:09 +10:00
nick_m
af07762f98
Tempo ramps - play nicely with legacy sessions.
2016-05-27 23:38:09 +10:00
nick_m
6dac0e0f14
Fis inability to make the first tempo section constant tempo.
2016-05-27 23:38:09 +10:00
nick_m
dbfe991cd8
Tempo ramps - fix changing from const to ramp in the gui.
...
- also fixes some midi mouse over problems
- start using replacements for frames_per_bar() frames_per_beat() etc.
2016-05-27 23:38:09 +10:00
nick_m
0d0e458dde
tempo ramps - fix dumb iterator error. thanks robin.
2016-05-27 23:38:09 +10:00
nick_m
6cb752dc15
Tempo ramps - locking debugging.
2016-05-27 23:38:09 +10:00
nick_m
7fc3b0c34c
Initial stab at tempo ramps.
...
Replaces the list of points in TempoMap with TempoSection functions, which
compute tempo-at or tick-at time relative to tempo section start.
TempoMap consults them additively to determine things like bbt_time(),
frame_time() get_grid() etc.
This has a marked effect on scrolling speed along with the code simplification
in the places it has been attempted.
Several things are broken here.
Currently every ramp except the last one is an exponential ramp. this may
be simple to fix :).
Mouse-over midi grid doesn't match mouse click grid. should also be simple.
Many things seem to work, but their accuracy should be in question until
each area has been addressed.
2016-05-27 23:38:09 +10:00
94187e66a2
add a test-sequence for polyphonic pressure
2016-05-27 12:12:00 +02:00
56471fd352
ensure that amp/fader is present on every route
2016-05-26 15:42:33 +02:00
00967a1982
take read-lock when saving processor order
2016-05-26 15:05:06 +02:00
eadc2ca88a
fix maths thinko
2016-05-26 10:44:13 +02:00
602344f0c5
ticks are not affected by metrum
2016-05-26 02:22:10 +02:00
d6d5903a24
fix Audio Unit BBT
2016-05-26 02:20:32 +02:00
9678be9b6a
fix clang compile
2016-05-26 01:52:34 +02:00