13
0
Commit Graph

28362 Commits

Author SHA1 Message Date
6c37ab411c last piece of seamless-loop removal 2019-11-01 15:57:50 -06:00
833927a4ea don't send TFSM event LocateDone after a locate-for-loop-end
See comment for explanation
2019-11-01 15:56:06 -06:00
c3d68338ad fix logic error with contents of session dialog shown after "Close" 2019-11-01 15:48:16 -06:00
a072228de5 remove seamless looping as an option (it's now the only kind of looping we support) 2019-11-01 14:04:28 -06:00
fb2f1aa8e1 cut down on DEBUG::Transport noise 2019-11-01 14:04:28 -06:00
0f6ad823de if looping, squish DiskReader::playback_sample into loop range 2019-11-01 14:04:28 -06:00
d30f2180bf transportFSM: when locating due to end-of-loop, skip declick and do not transition states 2019-11-01 14:04:28 -06:00
0041e8b3ae
Disable direct master-send on fan-out 2019-11-01 20:44:14 +01:00
86def2e35e Fix thinko in aux-fader color. 2019-11-01 10:35:53 -05:00
a5140f4558
Handle Lua DSP script load failure (unknown plugin)
This handles a very specific edge-case: A script that was
successfully parsed before, fails load on session state restore.
2019-11-01 15:54:36 +01:00
7852047dca
Fix XML-writer edge-case (empty content) 2019-11-01 15:39:44 +01:00
eca27d8218
Fix MIDI Timestretch
* skip notes outside of region-range (source-start, region-length)
* handle tempo-ramps properly, apply map to stretch-fraction
* fix region properties after stretching
  (position needs to be re-set first, to set a midi-region's
   quarter-note position, which is used by the length calc)
2019-11-01 05:40:30 +01:00
fe880d9b57
Consolidate more automation-mode texts 2019-10-31 23:58:05 +01:00
d584e962ff
Fix copy/paste mess in ab298f035a 2019-10-31 18:47:08 +01:00
69cb02f213
Remove unused string translation 2019-10-31 16:33:56 +01:00
ab298f035a
Consolidate automation and meter-point strings
This also properly selects texts in dropdown-menus on the mixer-strip,
panner and plugin-controls, gain-meters.
2019-10-31 16:12:27 +01:00
3cae11936f Highlight the currently selected item in ArdourDropdown & co 2019-10-31 14:38:26 +01:00
016db85fa1 Workaround a GTKMenu bug in ArdourDropdown & co. 2019-10-31 14:21:57 +01:00
07458155a2 Work around an initialization bug of GTK menus 2019-10-31 11:34:36 +01:00
eaba4fa593 Update |offset| instead of changing the formula
So that the test to see if it fits also takes the new offset into
account.
2019-10-31 10:42:37 +01:00
fb9203998b Align vertical centers of widget and active menuitem 2019-10-31 10:29:43 +01:00
7d48b20652 Fix a thinko in x position of menu popups
This has lasted without being noticed because menus that big are not
common.
2019-10-31 10:29:43 +01:00
5e4d641488
NO-OP: whitespace 2019-10-31 00:22:26 +01:00
98db30efb1
Declare helper function static (don't export) 2019-10-31 00:22:12 +01:00
3a16b89219 Try harder to put the active item under the mouse (ArdourDropdown) 2019-10-30 23:56:36 +01:00
27a3b93152
Update latency-compensation when re-ordering processors
When re-ordering processors, the route's own latency does not
change (at first).
But it might if sends or plugins with side-chains a involved.
2019-10-30 23:51:53 +01:00
e2f5ce6f61
NO-OP: whitespace/comments 2019-10-30 23:45:27 +01:00
796558ef51
Suggest multi-out of instruments by default
When a user picks a N-channel instrument with strict i/o.
Offer N-channel (with optional fan-out) as default.
2019-10-30 15:35:52 +01:00
a16f004d24 fix vanished audio/MIDI setup window after "Start" is clicked anytime other than during startup 2019-10-29 18:20:55 -06:00
91fd927a80 fix appearance of SessionDialog presented after Session > New
Needed to be told "require_new" to make sure the correct display is shown
2019-10-29 18:09:55 -06:00
0711c87bfa missing part of working looping 2019-10-29 16:20:04 -06:00
2b2b003d50 get looping to work again 2019-10-29 16:20:04 -06:00
c368c26519 fix handling of deferred events in transportFSM
tfsm events live on intrusive lists, with only 1 hook, which means they
can only be on one list at a time, and cannot be deleted while part of
the list. This wasn't being addressed properly when deferring (and
undeferring) events.
2019-10-29 16:20:04 -06:00
78cf0e5235
Customize Lua GC, add object-memory-lock API.
Add custom API to prevent Lua Objects from being garbage collected.
This is intended to for Ardour LuaBridge bindings (~1MB Objects:
tables, functions and userdata).
The bindings are persistent and the gc can skip them in mark & sweep
phases. This is a significant performance improvement for garbage
collection.

Note. The next version of Lua (5.4) will come with a generational-gc
rather than an incremental, so extending the API at this point in time
is acceptable.
2019-10-29 05:45:43 +01:00
130211a4bd
Update Lua to upstream 5.3.5 2019-10-29 05:36:24 +01:00
814272bbac improve debug output 2019-10-28 17:34:38 -06:00
594f344cca fix thinko 2019-10-28 17:34:23 -06:00
e2bb59a3e3 limit waveview render threads to 8 2019-10-28 17:24:21 -06:00
7d3c2a4fee provide a mechanism to decide if Session::update_latency_compensation() is being called as part of a callback from the backend.
If it is, do not call AudioEngine::update_latencies() to avoid JACK1-style deadlock
2019-10-28 17:23:54 -06:00
706a9ab59f fix mistakenly-placed semi-colon 2019-10-28 17:21:46 -06:00
b97e2d5013 to avoid deadlock in JACK1 scenarios, do not invoke AudioEngine::update_latencies() from update_latency_compensation() if called from a process thread 2019-10-28 16:55:29 -06:00
6b654039fb better comments 2019-10-28 16:53:00 -06:00
43eb64d23b add new debug bit (DebugTimestamps) that adds timestamps to all debug messages 2019-10-28 16:52:18 -06:00
4073e7573d add DEBUG_TRACE for all (?) backend callbacks 2019-10-28 16:07:38 -06:00
5704f1ca9e sort debug bits in libardour alphabetically 2019-10-28 15:55:01 -06:00
b4addf5297 add new debug bit for backend callbacks 2019-10-28 15:54:18 -06:00
fe56c5931c do not hold a lock when calling AudioEngine::update_latencies() from Session::update_latency_compensation().
Only when using JACK1 is ::update_latencies() a synchronous call (ending up in Session::update_latency() which tries to take the
same lock). But the semantics of ::update_latencies() are sufficiently ill-defined that entering that call with a lock held
seems like a bad idea, so we release the lock unconditionally here.
2019-10-28 13:40:18 -06:00
8befc818eb add explanatory comment 2019-10-28 13:40:18 -06:00
7f1134e550 move reset (deletion) of click_io and ltc_output objects until after we are disconnected from the engine
We use those objects unconditionally and without caching inside process(), which could be invoked by the engine during their
deletion
2019-10-28 13:40:18 -06:00
John Emmas
5e9e7e6ed4 Add/remove source(s) in our MSVC project (gtk2_ardour) 2019-10-28 16:45:52 +00:00