13
0
Commit Graph

11824 Commits

Author SHA1 Message Date
Nathan Stewart
84c66c75db Initialize uninitialized member variables in ctor - warning suppression 2016-10-17 15:58:39 -04:00
3e32a00a52 fast region export -- don't call process() 2016-10-17 21:35:00 +02:00
8519677a24 fix potentially crash-inducing race condition by removing event loops' x-thread channel from an event loop when it is destroyed 2016-10-17 14:48:15 -04:00
157253c2c6 remove debug output 2016-10-17 13:41:22 -04:00
9a3c1dbfe7 fix thinko in d2835bc80 (re-enables mute, solo and likely other automation controls) 2016-10-17 13:20:03 -04:00
5b22e67387 add more DEBUG_TRACE statements for port/destruction debugging 2016-10-17 11:16:07 -04:00
2c2ce7aa55 convert cerr<< to DEBUG_TRACE 2016-10-17 11:16:07 -04:00
1fd7ec58cd use existing method rather than inline code for pending port deletions 2016-10-17 11:16:07 -04:00
nick_m
46d137414b Initialize TempoMetric _pulse in sonstructor. 2016-10-18 02:14:15 +11:00
nick_m
0585393989 Music locked regions stay positive after tempo map change. 2016-10-18 02:12:33 +11:00
466141229f ignore send buffers for which there's no return
This fixes an issue with Audio+Midi sends feeding into an audio only return.
2016-10-17 00:33:02 +02:00
d2835bc802 improved and hopefully correct fix for "setting AutomationControl marks session dirty even when it should not, if in playback mode"
Hopefully comment is more explanatory as well.
2016-10-16 15:51:50 -04:00
nick_m
92920307ae Tempo curve cleanup, now also works on optimized builds. 2016-10-17 01:28:33 +11:00
f52443e17e Increase range of a-comp release time.
This facilitates ducking music for voice-overs w/o hold-time.
2016-10-15 21:27:29 +02:00
07ee9b6164 Source and AudioSource Lua bindings 2016-10-15 21:27:29 +02:00
nick_m
8ae0c1b36c Minor cleanup (don't set pulse twice in Region::set_position()). 2016-10-16 03:50:14 +11:00
nick_m
3a0a628a75 Rework duration clock and TempoMap::insert_time to include meter at offset.
- should fix 7072

	- also fixes scroll behavior over multiple tempi.
2016-10-16 02:33:49 +11:00
102547089b remove debug output 2016-10-14 11:50:27 -04:00
9066dd731b much simpler implementation of fix originally in c104c9d4726f3: don't call Session::set_dirty() or emit Changed() unless AutomationControl actually changes value 2016-10-14 11:42:41 -04:00
92f1eb6be9 Revert "change return type of AutomationControl::actually_set_value() from void to bool, to indicate if value was changed."
This reverts commit c104c9d472.
2016-10-14 11:42:41 -04:00
c21a0760a4 allow feedback (loops) from internal sends
This facilitates custom "Echo" chains:

  Bus 1 [FX] [aux-send to Bus 2] -> master
  Bus 2 [FX] -> Bus 2
2016-10-14 15:06:49 +02:00
88dedfcbdb fix math ambiguity & OSX compilation
cc121.cc: In member function 'void ArdourSurface::CC121::encoder_handler(MIDI::Parser&, MIDI::EventTwoBytes*)':
cc121.cc:413: error: ISO C++ says that these are ambiguous, even though the worst conversion for the first is better than the worst conversion for the second:
/usr/include/architecture/i386/math.h:343: note: candidate 1: double pow(double, double)
/usr/include/c++/4.2.1/cmath:357: note: candidate 2: float std::pow(float, float)
2016-10-13 23:41:49 +02:00
8f9a9523d2 new scheme for managing port deletion
shared_ptr<Port> now uses a deleter functor which pushes Port* to a lock-free FIFO so that the Port is
always deleted (and thus unregistered with the PortEngine/backend) in a safe context w.r.t. various
callbacks in the host. Currently the auto_connect_thread in Session has been tasked with doing these
deletions.
2016-10-13 17:18:54 -04:00
1552547f65 stop using gkd_pango_context_get() in ArdourCanvas::Canvas and require concrete instances to supply a Pango::Context; do this for GtkCanvas and Push2Canvas 2016-10-13 17:18:54 -04:00
228556ab9c fix panner reset when switching to aux-sends -- fixes #6893 2016-10-13 19:57:50 +02:00
W.P. van Paassen
279b19258b Small improvement and change to comply with coding standard 2016-10-13 12:10:39 -04:00
W.P. van Paassen
5a3fe4aa20 Inital support for Steinberg's CC121 control surface 2016-10-13 12:10:39 -04:00
Michiel de Roo
bbb20272d5 OSC added plugin activate/deactivate 2016-10-13 12:08:31 -04:00
215d88ac87 Allow a LV2 plugin to mark the session dirty
If some plugin-internal state changes (GUI <> Plugin e.g. load a sample)
no ports change and the host does not know that the plugin state has
changed. The session may be closed without save.

This is a prototype using an ardour.org URI, pending upstream lv2plug.in
2016-10-13 16:04:28 +02:00
nick_m
c09e467595 Improve check in tempoAtPulseTest 2016-10-13 14:26:54 +11:00
nick_m
d824e696c0 Fix ramp test, add tempoAtPulseTest. 2016-10-13 14:14:27 +11:00
eae567bd9e Allow opening sessions with files embedded from removable drives
Otherwise Windows shows a critical error for files embedded from
removable devices.
2016-10-13 02:07:34 +02:00
c104c9d472 change return type of AutomationControl::actually_set_value() from void to bool, to indicate if value was changed.
Don't call Session::set_dirty() when no change occurs
2016-10-12 17:26:46 -04:00
Nathan Stewart
0df00465fd Fixed array index out of bounds in Push2Menu::set_active() 2016-10-12 14:50:03 -04:00
Nathan Stewart
ca98c7a051 map::clear() calls erase. Cleans up cpp check warning 'iterator used after element has been erased' 2016-10-12 14:50:02 -04:00
0b51d760ad cleaner version of feed9648 -- fixes #7067 2016-10-11 22:57:38 +02:00
6c933c7789 Revert "Allow loading sessions with missing external files #7067"
This reverts commit feed9648e1.
2016-10-11 22:54:21 +02:00
feed9648e1 Allow loading sessions with missing external files #7067
The issue was introduced in dbf86a495b, forcing must_exist = true
for *all* files that have a absolute _origin, including stub
SilentFileSources.

If an external file is no longer available and a user chooses to
"ignore, skip" an SilentFile is created instead of the actual source,
The SilentFileSource has the same XML state which includes _origin.

ARDOUR::SilentFileSource::SilentFileSource () c'tor calls
AudioFileSource::AudioFileSource (,.., must_exit = false)
but since the file has an absolute _origin, the AudioFileSource c'tor sets
must_exist = true; throws and the session cannot be loaded.
2016-10-11 22:05:27 +02:00
c60b4ff4cb add missing symbol for windows compile 2016-10-11 19:55:35 +02:00
78fef4a253 cater for Note translations. e.g. "Ré ♯" UTF-8 2016-10-11 14:09:54 +02:00
74ba1b2691 Hide Dummy backend from optimized release builds
Prepare to bundle session-utils with releases.
Session-utils use libardour which needs an Engine. "Dummy" is the only
engine that always works
2016-10-11 00:29:56 +02:00
b997232aad skip Push2 unit-test for now:
The test segfaults due to missing screen and prevents other libardour
unit tests from running.
2016-10-11 00:05:08 +02:00
99e9382cdb Unit-tests to check Lua session+DSP scripts 2016-10-11 00:00:52 +02:00
2eb58913e8 add const'ness (allowing LuaScriptList::const_iterator) 2016-10-10 23:49:19 +02:00
0517e186c7 Add Lua-bindings for inter-processor communication 2016-10-10 17:34:18 +02:00
b9791aa63c Forward "owner" from Processor to Plugin 2016-10-10 17:34:18 +02:00
4f8fdf0af7 Allow to get a route reference from SessionObject*
The motivation is to allow a Processor (here Lua) to get a pointer
to the owning Route without resorting to iterative lookup.
2016-10-10 17:34:18 +02:00
8d710a5f8a Wrong iterator used with IDSortedList 2016-10-10 14:10:39 +01:00
de24d3fddf add missing #include 2016-10-10 14:37:03 +02:00
cdded19b9f convert VST parameter names to UTF8
Another fix for "µ-iness" (ec8cf4e4f5, d121e6bf15, 57b9dab27c)
this time for Windows.
2016-10-10 14:06:32 +02:00