Paul Davis
9a8ca01cb0
remove debug output
2019-11-23 15:54:34 -07:00
Paul Davis
f561cc6dc2
remove debug output
2019-11-23 15:54:21 -07:00
Paul Davis
e75182b418
tweak comment text
2019-11-23 15:54:09 -07:00
Paul Davis
205bfb9416
2nd part of fix for autoloop event removal when loop bounds are changed while looping
2019-11-23 15:53:54 -07:00
Paul Davis
bcd47ebffb
remove debug message about LOCATE WITHOUT DECLICK. This behavior is normal and legal when looping
2019-11-23 15:52:49 -07:00
Paul Davis
d39f19f559
fix incorrect removal of autoloop event when loop bounds are changed while looping
2019-11-23 15:52:05 -07:00
Paul Davis
dbf06eb2cf
fix locate-while-rolling
2019-11-23 15:51:30 -07:00
Paul Davis
8972f69e68
fix startup crash if no loop range is defined
2019-11-23 13:37:00 -07:00
Paul Davis
d04c9b3244
more tweaks to correctly (or more correctly) reload disk reader buffers when loop fade choice changes
2019-11-23 00:09:46 -07:00
Paul Davis
1a2665e25f
redesign of declicking and fades around loop boundaries
2019-11-22 23:41:56 -07:00
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
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
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
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
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
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
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