13
0
Commit Graph

10766 Commits

Author SHA1 Message Date
a3c5b81ca1 Session API changes to enable VCAs to set soloed-by-upstream on assigned routes 2016-05-31 15:30:39 -04:00
9a0f4b1ef3 move vca assignment up to the Route level (from GainControl) 2016-05-31 15:30:39 -04:00
04e26fe7e6 move VCA assignment up to Route level 2016-05-31 15:30:39 -04:00
c3afeab49c don't increment actual VCA counter when saving session state 2016-05-31 15:30:39 -04:00
7b62e08233 add required header 2016-05-31 15:30:39 -04:00
0dca11cb47 save+restore VCA counter value across instances 2016-05-31 15:30:39 -04:00
1132d3f4c8 VCA solo and mute controls need to call AutomationControl::set_value() to emit a signal 2016-05-31 15:30:39 -04:00
aee283f056 use redesigned Route and VCA object architecture/API 2016-05-31 15:30:39 -04:00
1f6800d421 redesign Route and VCA objects to inherit from ARDOUR::Stripable 2016-05-31 15:30:39 -04:00
00b7385e4c correctly restore VCA-VCA slave/master relationships at session load time 2016-05-31 15:30:39 -04:00
aa80321976 fix deadlock caused by VCA=>VCA slaving and set_state() 2016-05-31 15:30:39 -04:00
dd31ef2d1b fix ambiguity in VCA constructors 2016-05-31 15:30:39 -04:00
6b7a384e34 add solo/mute logic to VCA masters 2016-05-31 15:30:39 -04:00
17853bc472 ensure that GainControl::get_value() never returns > Config->get_max_gain() 2016-05-31 15:30:39 -04:00
0c5e5f54a0 change master-record management to use std::map to avoid const iterators; drop connection to master Changed signal when unassigning 2016-05-31 15:30:39 -04:00
562ec7df8f probably get the design of VCAs basically correct: use a per-master ratio model
See comments in the code for a bit more detail
2016-05-31 15:30:39 -04:00
d07ed3b04f add GainControl::slaved() predicate 2016-05-31 15:30:39 -04:00
a4935eca6d forward-propagate Changed signals through VCA master-slave connections 2016-05-31 15:30:39 -04:00
a879310349 add VCAStatusChange message to GainControl 2016-05-31 15:30:39 -04:00
35172bb369 change API for GainControl, VCA and VCAManager
This allows sane state save/restore
2016-05-31 15:30:39 -04:00
cab88c6aad add VCA debug bit 2016-05-31 15:30:38 -04:00
f5df3c291e fix VCA name/number 2016-05-31 15:30:38 -04:00
acaaa98bd0 start shaping up VCA assign process 2016-05-31 15:30:38 -04:00
984f4487e0 remove debug output 2016-05-31 15:30:38 -04:00
4d14ae4e23 mostly restore VCA state on session loading.
This does not restore VCA assignments
2016-05-31 15:30:38 -04:00
d2c405416c save/restore VCAManager state 2016-05-31 15:30:38 -04:00
0d5705d096 reorder destruction of VCAManager and Routes 2016-05-31 15:30:38 -04:00
bfd0ba7bf3 add a bit of state to VCAManager 2016-05-31 15:30:38 -04:00
4478bdc1d1 add a bit of state to VCAs 2016-05-31 15:30:38 -04:00
f44cac5cc6 expand and improve VCA API 2016-05-31 15:30:38 -04:00
8eafe8b804 vca design: gain controls cannot silently "merge" the master(s) value into their own 2016-05-31 15:30:38 -04:00
405f9fc712 change VCA model to facilitate Harrison *and* SSL designs 2016-05-31 15:30:38 -04:00
3daad04936 don't force size allocation to recompute pixfader patterns unless size actually changes 2016-05-31 15:30:38 -04:00
99d251de7d first pass at making the GUI for a VCA visible 2016-05-31 15:30:38 -04:00
c61a5cabc7 Session HAS-A VCAManager 2016-05-31 15:30:38 -04:00
ab9bb49f39 initial implementation of a VCA Manager object 2016-05-31 15:30:38 -04:00
cfc55e392f add name() method to VCA 2016-05-31 15:30:38 -04:00
5c658db4bf most of the changes required to add a new master faders tabbable
the visibility button isn't actually working correctly
2016-05-31 15:30:38 -04:00
87481a2ee1 initially pass at libardour VCA implementation 2016-05-31 15:30:38 -04:00
nick_m
829c257f45 Make TempoMap::framepos_plus_beats() & TempoMap::framepos_minus_beats() more correct. 2016-05-30 11:03:45 +10:00
39e818a03a prototype lua midi generators & filters and port event-rewrite 2016-05-29 20:36:32 +02:00
60200bf923 bump max number of possible ALSA backend channels 2016-05-29 20:36:32 +02:00
nick_m
1316fe6601 Make TempoMap::framewalk_to_beats () more correct. 2016-05-30 01:23:19 +10:00
nick_m
ecd93207ad Fix bbt dragging wrt audio-locked tempos. 2016-05-29 06:58:24 +10:00
nick_m
0d7f73cb27 Hopefully finally fix tempo curve flickering. 2016-05-29 05:12:07 +10:00
22e031135a Emulate 'log1p()' and 'expm1()' using 'log()' and 'exp()'
(for MSVC which didn't implement those functions until very recent versions).
2016-05-28 19:07:22 +01:00
4c4bb98052 Accommodate newly introduced source(s) in our MSVC project (cairocanvas) 2016-05-28 10:43:50 +01:00
nick_m
a924e938aa Allow non-musical snap when dragging bbt ruler.
- probably not what the user wants,
	  unless snapping beats to timecode frames.
2016-05-28 06:50:22 +10:00
nick_m
3e6c80bbc0 Ifdef out some debugging-related code. 2016-05-28 04:37:52 +10:00
4aea1285c9 fix some false-positive compiler warnings 2016-05-27 18:28:26 +02:00
46709de8ab AU tempo API updates 2016-05-27 18:28:23 +02:00
nick_m
10228a4bc3 Tempo ramps - fix missing rt call. 2016-05-28 00:24:02 +10:00
nick_m
78bec77c3e Tempo ramps - fix merge conflicts, add bbt_at_frame_rt(). 2016-05-28 00:10:53 +10:00
nick_m
bf96a74e96 Tempo ramps - more comment fixes. 2016-05-27 23:38:18 +10:00
nick_m
7ab9f36c8a Tempo ramps - comments, 2016-05-27 23:38:18 +10:00
nick_m
877a0de3a8 Tempo ramps - code cleanup. 2016-05-27 23:38:18 +10:00
nick_m
5bdd16fbee Tempo ramps - implement TempoMap::tempo_at_beat(). 2016-05-27 23:38:18 +10:00
nick_m
023a48a41c Tempo ramps - fiddle with gradient limit. 2016-05-27 23:38:18 +10:00
nick_m
73db86bf49 Tempo ramps - add a gradient limit to the ramp, more comments.
- things are fine without this, but overall it feels slicker with a linit.
2016-05-27 23:38:18 +10:00
nick_m
aad7b129b6 Tempo ramps - rename meter/tempo_section_at() -> meter/tempo_section_at_frame() 2016-05-27 23:38:18 +10:00
nick_m
1d85229500 Tempo ramps - fix up previous commit. 2016-05-27 23:38:18 +10:00
nick_m
e2330739ed Tempo ramps - add TempoMap::frame_at_tempo() 2016-05-27 23:38:18 +10:00
nick_m
34c9ac9dd7 Tempo ramps - rename bbt_time() -> bbt_at_frame(), frame_time() -> frame_at_bbt() 2016-05-27 23:38:17 +10:00
nick_m
b564f07635 Tempo ramps - add comment 2016-05-27 23:38:17 +10:00
nick_m
baf8f37967 Tempo ramps - rename meter_at() -> meter_at_frame() & make the ticker slightly more efficient. 2016-05-27 23:38:17 +10:00
nick_m
8f3bc6f809 Tempo ramps - rename tempo_at() -> tempo_at_frame().. 3 decimals for the audioclock tempo display. 2016-05-27 23:38:17 +10:00
nick_m
250c88c038 Tempo ramps - check the curve not the integral. 2016-05-27 23:38:17 +10:00
nick_m
2d31fa7bb1 Tempo ramps - finally fix flicker in framed curve. 2016-05-27 23:38:17 +10:00
nick_m
48fa2e7582 Tempo ramps - fix erroneous paste. 2016-05-27 23:38:17 +10:00
nick_m
533e5c4069 Rwbi ramps - midi regions resize when tempo map changed. 2016-05-27 23:38:17 +10:00
nick_m
2a8104f2f8 Yr,[p ramps - fix flickering tempo curves when zoomed in. 2016-05-27 23:38:17 +10:00
nick_m
5d5fba0cfb Tempo ramps - rename no-op 2016-05-27 23:38:17 +10:00
nick_m
cfe1c85f4f Tempo ramps - first tempo is a ramp, fix extra meter recompute. 2016-05-27 23:38:17 +10:00
nick_m
2c331341cc Tempo ramps -remove unused code. 2016-05-27 23:38:17 +10:00
nick_m
43922a1fe1 Tempo ramps - clean up tempo dragging. 2016-05-27 23:38:17 +10:00
nick_m
6309807bc7 Tempo ramps - rename for consistency, remove some testing code, add meter based bbt->pulse conversions. 2016-05-27 23:38:17 +10:00
nick_m
f54b75c869 Tempo ramps - consolidate meter dragging code. 2016-05-27 23:38:17 +10:00
nick_m
8b2f73d5ac Tempo ramps - rework tempo drags, improve comments. 2016-05-27 23:38:17 +10:00
nick_m
f182235410 Tempo ramps - consolidate TempoMap::predict_tempo() 2016-05-27 23:38:17 +10:00
nick_m
d1a075110a Tempo ramps - more code cleanup, fix cross-marker jumping using tempo dialog bbt 2016-05-27 23:38:17 +10:00
nick_m
6894f468d4 Tempo ramps - no more tempo dilation on meter drag.
- its now a bbt ruler / marker lane thing with the constraint modifier.
2016-05-27 23:38:17 +10:00
nick_m
7db39a206e Tempo ramps - code layout, check_solved() is lock-style agnostic, remove uncalled code. 2016-05-27 23:38:17 +10:00
nick_m
0757dc7729 Tempo ramps - remove commented code 2016-05-27 23:38:17 +10:00
nick_m
074db3b861 Tempo ramps - more code consolidation wrt add meter/tempo. 2016-05-27 23:38:16 +10:00
nick_m
82d876b48b Tempo ramps - clean up add/replace tempo 2016-05-27 23:38:16 +10:00
nick_m
820e9a43f5 Tempo ramps - fix various sub-beat tempo line bugs.
- actual meter is taken into account now.
2016-05-27 23:38:16 +10:00
nick_m
2d3d7a5355 Tempo ramps - fix ambiguous api, fix flickering tempo curves. 2016-05-27 23:38:16 +10:00
nick_m
e5ba2bc34c Tempo ramps - rebase fixes 2016-05-27 23:38:16 +10:00
nick_m
0c7ecc6cbb Tempo ramps - add Canvas::FramedCurve and use it in the tempo marker bar. 2016-05-27 23:38:16 +10:00
nick_m
6209b3f445 Tempo ramps - revert earlier change to Canvas::Curve 2016-05-27 23:38:16 +10:00
nick_m
a68ff8e540 Tempo ramps - remove unused code, small meter dilation drag cleanup. 2016-05-27 23:38:16 +10:00
nick_m
c3119852c0 Tempo ramps - remove pasted casts. 2016-05-27 23:38:16 +10:00
nick_m
5ccfeea5bc Tempo ramps - more bbt dragging work.
- display prev tempo and tempo at mouse while dragging
	- simplify ramp dilation somewhat.
2016-05-27 23:38:16 +10:00
nick_m
abac4ce854 Tempo ramps - more bbt ruler dragging work. 2016-05-27 23:38:16 +10:00
nick_m
49bd710b9b Tempo ramps - more bbt ruler drag work. 2016-05-27 23:38:16 +10:00
nick_m
8724a9f68f Tempo ramps - improve constraint mod + bbt dragging begavior. 2016-05-27 23:38:16 +10:00
nick_m
86b0268e8b Tempo ramps - add visualtempo curve, dragging bbt or music rulers with constraint modifier dilates previous tempo. 2016-05-27 23:38:16 +10:00
nick_m
652a59b317 Tempo ramps - fix recompute thinko 2016-05-27 23:38:16 +10:00
nick_m
9fb78d091d Tempo ramps - correct fix for adding/replacing meters. 2016-05-27 23:38:16 +10:00
nick_m
89ba10c05a Yempo ramps - fix new meters ending up at 0, clean code a bit. 2016-05-27 23:38:16 +10:00