Commit Graph

28538 Commits

Author SHA1 Message Date
Robin Gareus
98bcfb1485 Save VST paths after successful scan
Ardour only saves Config when the session is saved.
When changing the VST Path and starting a plugin-scan the newly
discovered plugins would otherwise not be avalable unless
the session is explicitly saved after a scan.
2019-11-22 20:06:43 +01:00
Robin Gareus
f7b3dffebe Inform LV2 plugins about main window ID 2019-11-22 20:05:04 +01:00
Robin Gareus
c2d44c0f05 Add support for LV2/KX transient-ID option 2019-11-22 20:01:32 +01:00
Robin Gareus
512c27d277 Fix buffer-overflow when vari-speeding
Session::process() can call split-cycle which offset the
buffer pointers. When vari-speeding at speed > 1.0, the
engine also splits the cycle every n_samples, to not exceed
the configured buffersize. This needs to take prior buffer
offsets into account.
2019-11-21 23:37:31 +01:00
Robin Gareus
6ee21fb77e GUI: Use new boost::optional API
get_value_or() has been deprecated since boost 1.56
2019-11-21 17:49:20 +01:00
Robin Gareus
d4ecfc7d85 Use new boost::optional API
get_value_or() has been deprecated since boost 1.56
2019-11-21 17:48:56 +01:00
Robin Gareus
216492c60c Bump boost version requirement
1.56 is needed for boost::optional::value_or
2019-11-21 17:43:32 +01:00
Robin Gareus
53b1d17c60 Fix multi-channel de-click
_declick_amp gain needs to be reset for each channel before
the test (_declick_amp.gain() != target_gain) if de-clicking
is needed.
2019-11-21 02:54:19 +01:00
Paul Davis
78d5e6af28 add mixer actions for toggle disk & input monitoring; bind to d and i in mixer bindings 2019-11-20 09:37:33 -07:00
Robin Gareus
7fec401b8d Fix declick offset position for multi-channel tracks 2019-11-19 16:20:28 +01:00
Paul Davis
4534af0a4c DiskReader::_declick_offs should only advance once per ::run() call 2019-11-18 21:45:39 -07:00
Paul Davis
9b92084ed6 DiskReader::_declick_amp needs to repeat the same work for each audio channel handled 2019-11-18 21:45:39 -07:00
Paul Davis
530a4393dc fix transport FSM to stop first and declick later 2019-11-18 21:45:39 -07:00
Paul Davis
5048b86d5d small changes to make declick out triggered by just stopping 2019-11-18 21:45:39 -07:00
Robin Gareus
cf8a808bd7 Fix some script icons for non-square buttons 2019-11-19 04:41:12 +01:00
Robin Gareus
7aaf212a9b Fix Lua Pangolayout ellipsis width 2019-11-19 04:41:12 +01:00
Robin Gareus
7b733eb3f0 Consistent toolbar button height 2019-11-19 04:41:11 +01:00
Robin Gareus
605a87f402 Improve toolbar layout consistency
Directly pack Lua Script buttons into top-level table,
use same size-constraints.

Use consistent Lua Action button width, in particular for buttons 10..12.
prefer "a" instead of "10" for default numeric label
2019-11-19 04:41:06 +01:00
Paul Davis
c07db6d655 unset _reversed whenever RTMidiBuffer gets ::clear()'ed 2019-11-18 15:38:18 -07:00
Paul Davis
75cb57194e add missing NULL check 2019-11-18 13:07:40 -07:00
Robin Gareus
e52fd47049 Latency compensation is independent of transport-logic
This also fixes a concurrency issue when when non-realtime-stop
and graph-reorder or other rt-latency changes coincide.
2019-11-18 20:22:08 +01:00
Paul Davis
a8d62ce056 use reverse-reading of MIDI data in DiskReader 2019-11-18 12:01:43 -07:00
Paul Davis
725a6fc67f support backwards reading of MIDI from RTMidiBuffer 2019-11-18 12:01:43 -07:00
Paul Davis
80cab52a06 fix typo/thinko in logic to decide if MIDI buffers in DiskWriter require the butler (to write to disk) 2019-11-18 12:01:43 -07:00
Robin Gareus
3cf888498a Fix automation lookup when rolling backwards 2019-11-18 15:55:32 +01:00
Robin Gareus
3b2b946d4e NO-OP: simplify code
find_next_ac_event, needs to find the next event *after* (but not
at) start.

std::upper_bound returns an iterator pointing to the first element
in the range [first, last) that is greater than value.
This is equivalent to using std::lower_bound an iterating until
finding the first element greater than.
2019-11-18 15:55:17 +01:00
Robin Gareus
f49d11d5e3 Automation event lookup when rolling backwards
When rolling backwards we need to be able to find
the *next* event before "start".
2019-11-18 15:55:13 +01:00
Robin Gareus
81d8f0faa7 Tweak LFO script
* thin automation to prevent too dense events
* add icon (cosine wave)
2019-11-17 14:52:22 +01:00
Paul Davis
8e8249b595 remove debug output 2019-11-15 20:42:15 -07:00
Paul Davis
bd509bba49 fix questionable and not entirely intended change that was a part of dad47e445c 2019-11-15 20:40:23 -07:00
Paul Davis
1c7e446cb4 better transport master behavior when working with sample-clock-synced transport masters 2019-11-15 16:06:04 -07:00
Paul Davis
d64cf7a762 improve behavior when synced to JACK transport
Heuristic and actions when a locate is needed are different for
JACK transport than TC
2019-11-15 16:06:04 -07:00
Paul Davis
098bce1ece improve initial coordinate with JACK transport state 2019-11-15 16:06:04 -07:00
Paul Davis
3d74af6c1f better debugging message 2019-11-15 16:06:04 -07:00
Paul Davis
a7613eb191 consolidate setting of "get roll after locate" in TFSM 2019-11-15 16:06:04 -07:00
Paul Davis
4c688fe7f9 NO-OP: move brace 2019-11-15 16:06:04 -07:00
Paul Davis
8f71b6430b when synced to JACK transport, transport requests go there first. 2019-11-15 16:06:04 -07:00
Paul Davis
df4a30b1a0 fix behavior of Session::maybe_stop() when synced to JACK Transport 2019-11-15 16:06:04 -07:00
Paul Davis
ba4e7015de make comment more accurate 2019-11-15 16:06:04 -07:00
Paul Davis
5c9e7b8234 consolidate Session::locate() and Session::do_locate()
The first no longer needs to handle requests by passing them to
JACK transport
2019-11-15 16:06:04 -07:00
Paul Davis
7199b657ba no need for MidiClockTransportMaster::starting() method 2019-11-15 16:06:04 -07:00
Paul Davis
4637c49838 improve behavior of JACK transport sync callback.
Do not call transport actions directly, just report back to JACK
on transport status.
2019-11-15 16:06:04 -07:00
Paul Davis
0b52ea7a9c add a bit of debugging to JACK transport code 2019-11-15 16:06:04 -07:00
Paul Davis
302fe227b8 fix resampling ratio when stopped (corner case - not typically called) 2019-11-15 16:06:04 -07:00
Paul Davis
ec2ba35997 move DiskReader::inc_no_disk_output() into .cc to allow for easier debugging 2019-11-15 16:04:58 -07:00
Paul Davis
16c571c9b6 fix crash with -D slave caused by too-early use of a transport master's _port member 2019-11-15 16:04:58 -07:00
Paul Davis
8a847dbf34 fix oddly damaged code (vs. 5.x) for EngineSlave core methods (JACK transport) 2019-11-15 16:04:58 -07:00
Paul Davis
c69227fd8d eliminate hacky design for being able to deliver the correct time as JACK timebase master 2019-11-15 16:04:58 -07:00
Paul Davis
2f87b111e5 fix up the creation & state restore of the TransportMasterManager 2019-11-15 16:04:58 -07:00
Paul Davis
457ab6d35f put JACK time master option back in the menus 2019-11-15 16:04:58 -07:00