3f19db4180
Mitigate issues of expensive plugin analysis -- #7795
...
Plugin analysis uses a GUI thread instance of a given plugin to
perform a IR analysis.
Some plugins can be rather CPU expensive to analyze.
e.g. a-hi/lo-filter when interpolating is recalculating biquad
coefficients every 64samples during the 8k IR analysis. This can take
a significant amount of time on older CPUs.
Furthermore live-signal collection happens in the rt-thread,
using cross-thread signals. Signal collection is periodically initiated
from the same timeout signal as analysis.
Analysis is was done using default thread priority, which is higher
than the GUI redraw priority (PRIORITY_HIGH_IDLE).
So it was possible to contiguously initiate analysis, loading the CPU
and preventing redraws.
2019-08-24 17:11:10 +02:00
ab62c8a926
Towards fixing luadoc, manual page creation
2019-08-24 03:32:47 +02:00
89f0e70b82
Fix memory-leak in case of Vamp plugin setup error
2019-08-24 03:31:49 +02:00
1ea3435de6
Add missing Lua bindings for function arguments
...
PortEngine was accidentally removed in 1339d42c78
2019-08-24 03:31:45 +02:00
02cc959d93
Add missing headers for lua-doc
2019-08-24 01:35:38 +02:00
9c785749ba
Lua binding to change region name
2019-08-24 01:35:14 +02:00
69688d24c4
Another fix for input only ALSA-slave devices
2019-08-24 00:15:10 +02:00
f7968f15dd
LCXL: Fix uninitialized pointer function
...
See also 026b74e25d
. FilterFunction must point to a valid function.
2019-08-24 00:01:28 +02:00
2920bd0253
Region selection cannot change without a session
...
Without a session, there are no regions. Besides,
there is an unconditional call using _session directly
after the if (_session) clause, which would segfault...
2019-08-23 23:54:34 +02:00
37d51037b9
Add tool to render ArdourIcon set
2019-08-23 21:09:38 +02:00
000d331ea1
NO-OP: cleanup
...
* remove unused code
* replace "default" to check for switch() enum completeness
2019-08-23 15:50:26 +02:00
f1c29a9324
Re-order enum, use "NoIcon" as sentinel
2019-08-23 15:49:25 +02:00
88a0429188
ArdorIcon is for display only, remove registration
...
These enum values are not used serialized in any state, and can
be removed.
2019-08-23 15:46:39 +02:00
9836bd786f
Some hints for clang static analysis
2019-08-23 05:15:17 +02:00
e5927d689c
Fix for half-duplex ALSA-slave devices
2019-08-23 04:39:51 +02:00
8fadf44978
Fix possible segfault when ALSA MIDI port registration fails
2019-08-23 04:39:12 +02:00
d52cf0f739
Tweak graph display, check direct sends
...
->feeds() follows connections "track -> master -> monitor"
(to detect feedback). Use direct_feeds_according_to_reality()
to correctly show sends-only.
2019-08-23 02:12:47 +02:00
b858b3b692
Detect monitor-send by instance, not name
2019-08-23 01:05:57 +02:00
22aa61b674
Use icons for plugin bypass and pinout
2019-08-22 21:03:44 +02:00
a0d53b81b9
Update plugin-ui related icons
2019-08-22 21:03:07 +02:00
026b74e25d
Fix potential call of uninitialized pointer function
...
_template_number can be set via sysex to an arbitrary number, this
can lead to calling a filter-function at an undefined address, usually
a segfault.
2019-08-21 03:53:46 +02:00
c38c91ddbd
Initialize variable, fix branch condition
2019-08-21 03:09:32 +02:00
e6c9bcfd07
Prefer to use API defined return status
2019-08-21 03:06:28 +02:00
df60eca33c
Initialize uninitialized variable
...
This fixes a potentially undefined branch if the USB device list is empty.
dev is NULL, the loop is never entered, 'r' isn't set.
if (!dev && !r) is undefined.
2019-08-21 03:05:17 +02:00
e9e761565b
Use Icons for plugin preset buttons.
...
This reduces the preset task-bar's min-width, useful for plugins with
narrow UIs.
2019-08-21 01:27:36 +02:00
dfa93e0b17
Tweak Ardourbutton: support (VectorIcon | Indicator)
2019-08-21 01:25:34 +02:00
1d8a6076ab
Add more vector-icons, plugin toolbar related
...
This allows to replace "Add", "Save", "Delete", "Reset", "Bypass"
text with icons.
2019-08-21 01:24:49 +02:00
a5e2012ead
Consistent preset layout
...
Use the same order as AU, VST, LV2 GUIs. Show the "modified" asterisk
left of the preset-dropdown. This avoids a blank space between the
dropdown and the Add, Save, Delete buttons.
2019-08-20 23:45:49 +02:00
2d4eb7d505
Replace OOM segfault with abort :)
2019-08-20 05:07:16 +02:00
3ccaaf1ea5
There's always a previous tempo/meter section
2019-08-20 04:53:00 +02:00
0972e9a513
Skip potential garbage midi-step
2019-08-20 04:46:42 +02:00
114b5088c7
There is always at least a tempo and meter section
2019-08-20 04:29:06 +02:00
6227dd5b04
Shuttle Surface: Fix uninitialized argument in case of incomplete state
2019-08-20 04:18:43 +02:00
f5330d763a
NO-OP: whitespace
2019-08-20 04:15:11 +02:00
73d0b6894a
Skip invalid plugin-tag spec
2019-08-20 04:15:01 +02:00
bb27d10fd4
Fix potential ambiguous state-restore
...
Don't allow uninitialized argument values in case of corrupt XML
state.
2019-08-20 04:11:32 +02:00
a1b0991d26
Fix uninitialized argument value
...
TrimDrag::aborted() -> TrimDrag::finished() -> TrimDrag::motion ()
uses event->button.state
2019-08-20 04:06:31 +02:00
2dae4fc5e1
Bundle x42-tuner, drop rule-based midifilter
2019-08-20 03:44:02 +02:00
05e0cc4035
Fix prev commit, state-restore of plugins
2019-08-20 02:06:55 +02:00
031847f88e
LV2 extension to override strict-i/o per plugin
...
This allows mono to stereo plugins to override the default
routing and forces both outputs to be connected.
2019-08-19 23:28:04 +02:00
8775087ea6
Remove explicit pulse version check (debian/wheezy builds)
2019-08-17 00:18:39 +02:00
531fa74eb1
Suffix complete hw: ID to make ALSA card names unique
2019-08-16 20:00:29 +02:00
ae2b6e6b09
Further tweaks to .pending file removal
...
* only delete it after successful save
* show unlink notification in debug-builds
2019-08-16 05:31:50 +02:00
994b59c836
Prefer implicit deletion of .pending
...
Session destruction removes ".pending", no need to explicitly delete
the file.
2019-08-16 01:55:54 +02:00
6dc8f5ed1d
Fix periodic backup saves
...
Retain ".pending" files until explicit save or session destruction.
Previously every transport-stop deleted them :(
2019-08-16 01:54:21 +02:00
c89e58046a
Fix C++98 compat
2019-08-16 01:51:51 +02:00
76048c050d
Prefer "one track per file" as default
2019-08-15 01:30:17 +02:00
316880b9cf
Don't print usage to stdout for invalid parameters
2019-08-15 01:09:26 +02:00
4aedf9c3ea
Tweak .clang-format
2019-08-13 01:06:12 +02:00
e08ab1e30a
NO-OP: clang format, comments & whitespace
2019-08-13 01:05:51 +02:00