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
Robin Gareus
94187e66a2
add a test-sequence for polyphonic pressure
2016-05-27 12:12:00 +02:00
Robin Gareus
56471fd352
ensure that amp/fader is present on every route
2016-05-26 15:42:33 +02:00
Robin Gareus
00967a1982
take read-lock when saving processor order
2016-05-26 15:05:06 +02:00
Robin Gareus
eadc2ca88a
fix maths thinko
2016-05-26 10:44:13 +02:00
Robin Gareus
602344f0c5
ticks are not affected by metrum
2016-05-26 02:22:10 +02:00
Robin Gareus
d6d5903a24
fix Audio Unit BBT
2016-05-26 02:20:32 +02:00
Robin Gareus
cf6f9627e4
update VST audioMasterGetTime
...
* don't use a static struct. this fixes a concurrency issue with flags
and valid values
* send kVstTransportChanged IFF there is an actual change
* set system time
* send loop location
2016-05-26 01:04:43 +02:00
Robin Gareus
1d48648a73
fix timecode update after locate.
...
Various session rt-events set "_send_timecode_update" to true,
but at the same time queue post-transport-work.
The timecode-update is generated, but due to pending transport work
session->silent() is true and the timecode was never sent.
2016-05-25 19:20:09 +02:00
Robin Gareus
6c502b8315
allow to configure transient detection sensitivity
...
NB. this does not yet re-analyze regions when the config changes
and is hence also not [yet] exposed in the GUI.
2016-05-25 17:52:50 +02:00
Robin Gareus
5550eebe2f
fix MTC alignment
2016-05-25 17:13:09 +02:00
Robin Gareus
f34722bf49
treat different normalization settings as different formats
2016-05-25 14:24:13 +02:00
Robin Gareus
80cc70966c
missing local export config is not an error
2016-05-25 13:56:11 +02:00
Robin Gareus
cab6ae7137
backend check for rec-safe (only allow to lock if not armed)
2016-05-24 21:31:10 +02:00
Robin Gareus
a525055ce0
additional in-place check
2016-05-24 18:04:29 +02:00
Robin Gareus
1f17784ac5
fix potential undefined DnD behavior for external drags
...
dragging from the tree-view (e.g. favorite sidebar or plugin-manager)
will not set _drag_source.
drag-motion may wrongly interpret it as "re-order".
2016-05-24 17:58:24 +02:00
Robin Gareus
7aa85887da
more inter-thread progress fixes; slight change of semantics:
...
Background thread now *must* set "done" as last step. (they already do
since various error conditions don't result in "done")
This fixes a race: background thread Session::write_one_track() sets "done"
to true. Editor::freeze_route () continues, sets current_interthread_info
to NULL. thread continues and tries to set current_interthread_info.done
before terminating -> Crash.
This also ensures that singleton threads created with
"pthread_create_and_store" remain unique.
2016-05-24 03:33:08 +02:00
Robin Gareus
207d9c81db
some more route related lua bindings
2016-05-23 21:55:49 +02:00
Robin Gareus
2b53558e66
remove misspelled unused define
2016-05-23 02:29:55 +02:00
Robin Gareus
afc1186759
NO-OP indent
2016-05-22 19:36:54 +02:00
John Emmas
39ba60aaef
Make sure MSVC knows which version of 'floor()' we want
2016-05-22 15:53:16 +01:00
Robin Gareus
9ad096b611
Dummy Backend evolution
...
- pretty port-names for Dummy generators: show frequency
- add 1/3 Octave spaced sine-wave generator
2016-05-21 22:38:39 +02:00
Robin Gareus
489cef0913
Revert "debug unconfiged plugins"
...
This reverts commit 125e2014aa .
2016-05-21 17:54:34 +02:00
Robin Gareus
eb35ba1d95
fix assert/crash if unknown processor's I/O mismatches
...
This can happen on OS X. Audio Units did not have
a MIDI bypass. Ardour adds an implicit bypass and existing
"unknown/missing" plugins after the instrument will see
a different i/o config.
2016-05-21 17:54:13 +02:00
Robin Gareus
742ebe9975
const'ness -- just because
2016-05-21 16:24:30 +02:00
Robin Gareus
298abc5c8c
"biquadratic" needs no camelcase - fixes API doc.
2016-05-21 16:23:35 +02:00
Robin Gareus
50d6f146f4
allow lua to access array at an offset
2016-05-21 15:55:14 +02:00
Robin Gareus
53c188beb3
keep DSP state variables finite.
2016-05-21 15:55:14 +02:00
John Emmas
b0200b23f2
Accommodate the fact that 'msvc_resources.rc.in' got moved to a new path
2016-05-21 10:33:18 +01:00
Robin Gareus
331d9f7154
live signal analysis is for the processor -- not the plugin(s) inside
2016-05-21 00:01:11 +02:00
Robin Gareus
d7e590f9c8
add lua DSP transfer function calculation
2016-05-20 23:14:51 +02:00
Robin Gareus
125e2014aa
debug unconfiged plugins
2016-05-20 17:34:37 +02:00
Robin Gareus
77f3518571
add midi-bypass to re-configurable-i/o instruments
2016-05-19 16:29:23 +02:00
Robin Gareus
eda4662e15
fix lua instrument plugins
2016-05-19 16:29:20 +02:00
Robin Gareus
b4d4cb805e
prepare plugin configuration and replacing instruments
2016-05-19 16:29:08 +02:00
Robin Gareus
f0fd7890a1
move "needs output port selector" (from pin-dialog) to backend
2016-05-19 01:46:11 +02:00
Robin Gareus
7e463bab6e
consolidate add_processor code
...
* fixes drag/copy'ing sidechain sends (autodestruct)
* reduce duplicated code
* prepare for instrument replacement
2016-05-19 01:44:44 +02:00
Robin Gareus
69d644e979
add locale guards for export format
2016-05-18 17:35:52 +02:00
Robin Gareus
283376db4c
bypass plugin(s) - not processor (plugin-insert keeps mapping)
2016-05-18 17:35:38 +02:00