Commit Graph

13743 Commits

Author SHA1 Message Date
Robin Gareus
a3ec164450 Set VST cache file mtime to be at least as new as the plugin
Fixes issues with timezones when installing pluins from a .zip
2017-11-29 15:08:25 +01:00
Robin Gareus
d1183770de ArdourButton: ignore double+tripple clicks 2017-11-29 12:06:42 +01:00
Robin Gareus
5fd723b1f0 Update LuaProc GC stat calc 2017-11-29 12:06:42 +01:00
Robin Gareus
77d16999b5 Tweak Lua GC 2017-11-29 12:06:42 +01:00
Robin Gareus
44cf448839 update to lua-5.3.4 2017-11-29 12:06:42 +01:00
Len Ovens
06ea56a2ce OSC: add /select/plugin/activate cause some add deactivated
And clean up plugin code as well
2017-11-28 12:33:20 -08:00
Robin Gareus
3856d525fb Fix "open folder" for non-ASCII paths on Windows 2017-11-27 00:42:55 +01:00
Robin Gareus
7a7fc60a8d Remove unused API 2017-11-26 09:51:00 +01:00
Robin Gareus
e02952a26c Sidechain latency compensation - part one
This properly sets the port-latencies of PluginInsert owned ports as well
as handles external sends (send-target playback latency).

NB. This needs more work to ensure that Sidechain input port playback
latency is set before the feeding send queries it the connected latency.
Re-ordering process may change sidechain or external-send latencies,
but since re-ordering does not change the route's latency,
engine.update_latency() may not be called.
2017-11-26 09:51:00 +01:00
Robin Gareus
f149fd2653 Add convenience methods to set port latencies 2017-11-26 09:51:00 +01:00
Len Ovens
da467cf39b OSC: Only send new select send values
no clear first, no double send
2017-11-23 12:04:54 -08:00
Len Ovens
155156cfb2 OSC personal monitor fix off by one bug. 2017-11-23 12:04:54 -08:00
Robin Gareus
07f940016c fix call to std::unique; to actually erase dups. 2017-11-23 10:23:54 +01:00
Robin Gareus
1a46ee716d remove useless test, fgets() already ensures MAX_STRING_LEN
Found by PVS-Studio - https://www.viva64.com/en/b/0540/
2017-11-23 09:56:57 +01:00
Robin Gareus
2fec64f0bd Fix another duplicate if from session/system config consolidation
Found by PVS-Studio - https://www.viva64.com/en/b/0540/
2017-11-23 09:53:50 +01:00
Robin Gareus
7d4353dddc Fix typo in 318e7efb 2017-11-23 00:13:46 +01:00
Robin Gareus
1be2790cac Add clock-delta mode enum 2017-11-23 00:12:00 +01:00
Robin Gareus
e275154a40 Introduce a dedicated "Clock Origin" Marker 2017-11-23 00:11:55 +01:00
Robin Gareus
318e7efb9e Release (debug) lock before emitting signal 2017-11-22 18:12:29 +01:00
Len Ovens
18306f3d37 OSC: only reset cue sends that do not have a new send 2017-11-13 17:19:09 -08:00
Len Ovens
a6205cef40 OSC: /cue/previous_aux should always refresh 2017-11-13 17:19:09 -08:00
Len Ovens
2d85eceb0e OSC: cue buttons can accept float or int 2017-11-13 17:19:09 -08:00
Robin Gareus
e6f2d77605 Add API to allow buffer offsets when applying gain 2017-11-12 00:22:34 +01:00
Robin Gareus
93e32af9f4 Add a noise generator (Lua DSP) 2017-11-12 00:22:34 +01:00
Damien Zammit
52aa9bf848 a-comp: Fix typo with previous patch 2017-11-12 00:16:44 +11:00
Damien Zammit
f3efff4c7e a-comp: Fix noise floor - asymptotics 2017-11-11 14:26:50 +11:00
Len Ovens
69603bb76e OSC link: make whole link set follow strip_types
strip should not run periodic when blank - crash fix
2017-11-10 08:38:08 -08:00
Len Ovens
634c620b07 OSC: set_surface sets linkset, linkid
/set_surface/* deals with linked surfaces
2017-11-08 09:36:32 -08:00
Len Ovens
3a2c481b96 OSC: catch bad commands on /cue/* created crash on exit 2017-11-07 20:18:59 -08:00
Robin Gareus
4c58ada24b Fix a-reverb bypass/enable 2017-11-08 01:38:17 +01:00
Len Ovens
ba383b4726 OSC link: Clean up link not ready and surface refresh 2017-11-07 09:31:14 -08:00
Len Ovens
bb8d65c528 OSC link: make selection work correctly 2017-11-06 13:38:18 -08:00
Robin Gareus
77a94e1015 Optimize zresampler for no re-sampling case. 2017-11-06 00:13:14 +01:00
Robin Gareus
4cdd3f5df6 Some further notes (and experiments) on optimizations 2017-11-06 00:12:32 +01:00
Robin Gareus
da4cea0526 Add some notes for future optimizations (and prepare API) 2017-11-04 17:11:10 +01:00
Robin Gareus
8366fbaa62 Change Delayline to use power-of-two size and bitmasking 2017-11-04 16:39:08 +01:00
Robin Gareus
06abdee652 [Re]-Implement Delayline flush.
Also don't automatically flush the delayline at transport or monitor-
changes anymore.

With full-graph latency compensation, delaylines are before the
disk-reader, aligning input (disk uses read-ahead to align).

Flushing the delayline should only happen when input-monitoring
is disengaged. It's best degated to the Route or object using the
Delayline (potentially latency-aligned delayed flush).
2017-11-04 16:24:09 +01:00
Robin Gareus
d26ad5573c Optimize Delaylines: block-process (not one sample at a time)
This also tweaks fade behavior when the latency changes to prefer a
x-fade when possible.

This new variant does not support concurrent re-allocation and
execution. Hence the auto-connect thread needs to take a lock before
updating latencies (actually there's no need for an explicit update with
built-in backends, so this case remains to be updated further)
2017-11-04 07:14:12 +01:00
Robin Gareus
5fdd6ca21e Clean up delayline API: don't use 'get_' for accessor method-name 2017-11-04 07:14:12 +01:00
Len Ovens
3eee4fe8a5 OSC link: first working commit for linking two surfaces as one 2017-11-03 14:04:52 -07:00
Robin Gareus
edff34a59b Auditioner, silence buffer at end. 2017-11-03 04:26:33 +01:00
Robin Gareus
c63f7f775d Don't crash when auditioning empty .mid files. 2017-11-03 04:14:23 +01:00
Robin Gareus
0c041dc372 Fix polarity-control size (and crash during audition)
Also initialize new polarity-invert with gain 1.0, not inverted.
Don't fade-in.
2017-11-03 03:06:22 +01:00
John Emmas
f7bca32ab1 Accommodate newly added/removed source(s) in our MSVC project (libardour) 2017-11-02 10:16:24 +00:00
Robin Gareus
c291cb64b1 Wrap automation on loop-position, split plugin processing 2017-11-01 15:46:23 +01:00
Robin Gareus
c411e05b6f Click-free polarity inversion, also use accelerated (AVX, SSE) Amp 2017-10-31 22:21:12 +01:00
Robin Gareus
466cbecaba Fix samples-moved (and invalid use of not initialized CubicInterpolation) 2017-10-31 22:01:46 +01:00
Robin Gareus
f5c5adee6a Interpolation phase[] is initially empty 2017-10-31 22:01:04 +01:00
Robin Gareus
79b1275b7c Fix set_loop() return value (amend 00a4ad) 2017-10-31 22:00:22 +01:00
Robin Gareus
8cf323c15d Relax assertion to allow rolling backwards into 0. 2017-10-31 19:54:08 +01:00