13
0
Commit Graph

12259 Commits

Author SHA1 Message Date
4a5abf61b0 don't repeat-hard-code names for 3 automation types.
Fixes warning during session loading
2017-01-21 15:41:16 +00:00
2b081ca642 use SSE/AVX for scaling gain automation buffer via masters' value 2017-01-21 15:22:38 +00:00
94c11ebd90 remove debug cruft from wscript for push2 that breaks with python3 2017-01-21 15:04:39 +00:00
94a136a6bf Amp is the one place where we generate a per-sample vector for automation playback. Scale this by the masters' value(s) if appropriate 2017-01-21 15:02:29 +00:00
2f530d4fd8 SlavableAutomationControl::get_value(), if doing automation playback, should still scale the returned value by the masters' value(s) 2017-01-21 15:01:16 +00:00
2dc392b517 update bbe62da55a - use last-modified-with, strip git-rev 2017-01-21 01:19:19 +01:00
7a36ce4925 Instrument insert options:
* allow to directly fan-out when adding a multi-channel instrument
 * Mixbus: move multi-channel instruments after Comp & EQ.
2017-01-21 00:38:43 +01:00
b588be2dea Instrument channel option when adding track
By setting strict-io on the Instrument plugin early during track
creation, adding the plugin will trigger a PluginSetup Dialog for
multi-out instruments in a strict i/o track.
2017-01-20 21:46:47 +01:00
b25cd7683b Allow Lua bindings up to 10 args 2017-01-20 21:23:05 +01:00
bbe62da55a Extract program version that a session was created with 2017-01-20 18:15:44 +01:00
de2612f7b4 remove cruft 2017-01-20 17:36:18 +01:00
99d284930d fix a -Wformat 2017-01-20 17:36:09 +01:00
8f8d0a70d8 Reap invalidation records 2017-01-20 13:54:03 +01:00
fbae5f5ffd Free dead request-buffers
This partially plugs a memory leak of event-loops.
2017-01-20 13:53:59 +01:00
f05a07837b MIDI leaks -- the Controllergate conspiracy debunked 2017-01-20 11:40:53 +01:00
02d484de8a Plug some libardour memory leaks 2017-01-20 11:32:55 +01:00
6b5dce2c66 Yet another pane pain: allow deleting children using forall_vfunc
We not only need to make sure the iterator remains valid, but also
the object pointed to.

Valgrind trace:
Invalid read of size 8
 Gtkmm2ext::Pane::forall_vfunc(int, void (*)(_GtkWidget*, void*), void*) (pane.cc:617)
 Gtk::Container_Class::forall_vfunc_callback(_GtkContainer*, int, void (*)(_GtkWidget*, void*), void*)
 gtk_container_destroy (gtkcontainer.c:1073)
 g_closure_invoke (gclosure.c:804)
...
 g_object_run_dispose (gobject.c:1084)
2017-01-20 03:13:41 +01:00
4ee8a0e9fc Plug a memory leak (recent session list, session info) 2017-01-20 01:49:23 +01:00
7e766be2cb Add a note. 2017-01-20 00:50:29 +01:00
b084036c87 Fix oddities when replacing VST-presets.
VST used the count of available of presets as URI:
 - add 2 presets (1,2)
 - remove first, add another one -> two presets with same URI (2,2)

PluginInfo::get_presets() simply lists all (name only) in a vector.
Plugin::find_presets() uses the URI in a map (unique by URI).

..various ensuing bugs: eg. Plugin::remove_preset() looked up by name,
but didn't check for NULL.
2017-01-20 00:50:14 +01:00
7617477609 Scale default Atom Ringbuffer size with samplerate
This increases the safe-margin for plugins producing more messages
sent to the plugin GUI (usually fixed ~25Hz updates)
2017-01-19 21:35:22 +01:00
5d7b6fdd62 ancillary change related to removal of boost::optional<Rect> 2017-01-19 20:55:38 +01:00
4fa4b9a135 remove use of boost::optional to define "undefined" Canvas::Rect, and use Rect::empty instead.
This commit includes Rect::operator bool() which might be a candidate for removal in a future commit, in an attempt
to make the meaning clearer
2017-01-19 20:54:54 +01:00
dc11651694 Relax monitor-section processor channel restriction 2017-01-19 18:32:45 +01:00
8fba1cacd7 Add some comment 2017-01-19 13:05:54 +01:00
9c08a403c4 Add alternative preroll record mode:
* Start recording at preroll, trim region to skip preroll at rec-stop
* Keep old punch-in rec-at-preroll API for tape-tracks (later)
2017-01-19 13:05:54 +01:00
e959a762b5 Rework preroll-rec API:
* rename: indicate that recording happens after preroll, punch-in
* move API into libardour: rec+roll (no separate setup, seek, roll APIs)
2017-01-19 13:05:54 +01:00
0f020e59b8 Move preroll duration calc into libardour 2017-01-19 13:05:54 +01:00
b4cf8cfc49 fix up Canvas::Grid child layout 2017-01-19 00:24:54 +01:00
73acd5b413 correct translation matrix for Canvas::Widget 2017-01-19 00:24:54 +01:00
c91c028c37 do not add items twice to their canvas parent! 2017-01-19 00:24:54 +01:00
efd10abdfb Implement record with preroll 2017-01-18 15:15:48 +01:00
a6e02c0d71 Implement Count-In (before recording), fixed BPM, up to 2 bars 2017-01-17 20:43:55 +01:00
fcbed9c1dc Split metronome methods into re-usable parts (for count-in) 2017-01-17 20:20:34 +01:00
88d797bd64 Prepare session-wide implicit monitoring overrides 2017-01-16 19:54:42 +01:00
88b3aa926a Accommodate newly introduced source(s) in our MSVC project (cairocanvas) 2017-01-16 15:21:47 +00:00
09a8ec534f canvas::grid: get padding and margin to work; remove some debug output 2017-01-15 21:40:42 +00:00
Hiroki Inagaki
777647259e Add Japanese translation 2017-01-15 15:37:38 +01:00
7c17327f56 get grid layout working 2017-01-15 12:13:03 +00:00
04e346a3d8 tweak Grid repositioning code to be a little more O(N) 2017-01-15 12:13:03 +00:00
99b86f0f05 basic (and probably wrong) Canvas::Grid child placement 2017-01-15 12:13:03 +00:00
0d1a083a5d include Canvas::Grid in build script 2017-01-15 12:13:03 +00:00
9ed87f6693 initial skeleton for a Grid canvas item 2017-01-15 12:13:03 +00:00
126dd02c85 Set rate and blocksize for multi-instance VSTs 2017-01-13 11:29:30 +01:00
38e47c2f5f Accommodate newly introduced source(s) in our MSVC project (ardour_osc) 2017-01-13 10:18:38 +00:00
cd14e8f2e1 add API to query name of bound action 2017-01-12 20:53:20 +01:00
c9715af5d9 OSC: We want to see aux buses even if the gui has them hidden 2017-01-11 19:57:19 -08:00
19e6273502 OSC: Fix aux mute to check stripable exists first 2017-01-10 22:09:30 -08:00
bcbe8424ad fix nested templates for ye ancient compilers of the worlde 2017-01-10 09:58:26 +00:00
74e38365e9 Fix MTC slave implicit return on transport-stop
MTC returns not-locked (no flywheel) when the signal is lost, in which case
Session::follow_slave() jumps to no_roll and ignores the slave-position.
The MTC slave does explicitly request a transport-locate and transport-stop.

Yet, Session::realtime_stop() honors _requested_return_frame for whatever
reason
2017-01-10 10:39:22 +01:00