Robin Gareus
d8ee0fbf33
Tweak fluidsynth performance on ARM CPUs
2020-12-12 22:03:05 +01:00
Robin Gareus
5e76d63c06
Resolve some Xcode12 C++11, sigc++ issues
2020-12-12 04:46:22 +01:00
Robin Gareus
1db219b3d8
Fix compilation with mingw/gcc-8
2020-12-10 20:21:29 +01:00
Robin Gareus
4ef6ba0039
VST3: allow filename mismatch inside the bundle
...
This amends 5950df2b74 . The VST3 SDK does not recursively search
directories that are bundles IFF the file inside the bundle's
architecture folder matches the bundle's name.
In case there's a file with a different name resides inside the
bundle it is treated as standalone, unbundled plugin.
Since Ardour, PBD::Searchpath always does a recursive search, the
bundled plugins need to be weeded after the fact.
This now follows the VST3 SDK by not just checking the arch name,
but also Contents and bundle.vst3 parent dirnames.
2020-12-09 17:36:14 +01:00
Robin Gareus
fc4b2441dd
VST2: relax MIDI port detection
...
Apparently the official spec suggests singular for canDo
"receiveVstMidiEvent", "sendVstMidiEvent" requests.
However with "receiveVstEvents", "sendVstEvents" the plural form
is used. confusion ensued.
might fix:
https://discourse.ardour.org/t/no-midi-input-for-plugin-which-support-it-littlealterboy-vst/105126
2020-12-08 17:07:50 +01:00
Robin Gareus
062aeb0262
Bail out if export cannot be started
2020-12-08 01:10:00 +01:00
Robin Gareus
f8b5424d9f
Fix deadlock during export
...
When using the export-tool, the very first callback may already be
freewheeling. In this case the first call to the butler also happens
directly from the freewheel process-callback and initial session events
are handled there. Setting PostTransportAdjustPlaybackBuffering
took the process-lock, which caused a deadlock:
Glib::Threads::Mutex::Lock::Lock(Glib::Threads::Mutex&) at /usr/include/glibmm-2.4/glibmm/threads.h:687
ARDOUR::Session::butler_transport_work() at ../libs/ardour/session_transport.cc:1157
ARDOUR::Session::process_export_fw(unsigned int) at ../libs/ardour/session_export.cc:303
ARDOUR::AudioEngine::process_callback(unsigned int) at ../libs/ardour/audioengine.cc:486
ARDOUR::DummyAudioBackend::main_process_thread() at ../libs/backends/dummy/dummy_audiobackend.cc:951
2020-12-08 01:09:57 +01:00
Robin Gareus
13e6fdb6b3
Ensure ringbuffers are never copy-constructed
2020-12-07 02:54:51 +01:00
Robin Gareus
bc9b94dfab
Fix -Wcatch-value in unit-tests
2020-12-06 22:06:59 +01:00
Robin Gareus
e750cab915
LuaDSP use vectorized peak-finding
2020-12-06 22:06:55 +01:00
Robin Gareus
34769a9062
NO-OP: whitespace
2020-12-03 22:10:26 +01:00
Robin Gareus
60901d26b7
ALSA: improve debug output
2020-12-03 21:29:21 +01:00
Robin Gareus
b79520d316
VST3: Use a proxy for connecting and passing messages #8481
...
This separates channels in each direction component <> controller,
preventing recursions.
2020-12-03 02:48:20 +01:00
Robin Gareus
a974a3135e
Prevent duplicate search paths
...
This fixes an issue with VST3 plugins being listed up multiple times
if a user also explicitly adds standard built-in search paths.
2020-12-02 21:34:52 +01:00
David Robillard
7e9d4f9e73
Fix C function prototypes
...
This fixes Wstrict-prototypes warnings.
2020-12-01 12:08:09 +01:00
David Robillard
0404876d7b
Fix reliance on deprecated implicit assignment operators
...
Either both, or neither, a copy constructor and assignment operator should be
defined. This fixes Wdeprecated-copy warnings.
2020-12-01 12:03:38 +01:00
David Robillard
91f15300b8
Remove support for deprecated LV2 event extension
2020-12-01 11:40:35 +01:00
David Robillard
80a22953b0
Remove support for the long-deprecated LV2 uri-map extension
...
This has been supplanted by the urid extension.
2020-12-01 11:40:35 +01:00
Robin Gareus
d5a2f6b2e0
Add Lua binding to get a file's basename
2020-11-30 22:15:26 +01:00
Robin Gareus
b043336c86
Fix monitor-sends with templates
...
This fixes an issues with missing monitor-sends when creating
a session from a template with monitor-section, or when creating
tracks from a route-template.
2020-11-27 00:11:41 +01:00
Robin Gareus
a62fd0379e
Consolidate monitor-send setup
2020-11-26 23:58:15 +01:00
Robin Gareus
52f62f0c14
Possible fix for linking with new libdbus
...
libdbus_1_la-dbus-sysdeps-pthread.o): in function _dbus_platform_condvar_new':
undefined reference to pthread_condattr_setclock’
2020-11-26 00:50:56 +01:00
Robin Gareus
8d0a655608
VST3: cleanup, drop references (2/2)
2020-11-25 05:33:53 +01:00
Robin Gareus
3a74c5e602
VST3: add more debug messages
2020-11-25 02:20:37 +01:00
Robin Gareus
5e853d0977
VST3: fix plugin bus configuration
...
This fixes crashes when configuring some plugins that have more
input busses than output busses. e.g. TDR Nova.
2020-11-25 02:18:22 +01:00
Robin Gareus
ce43161d4e
WebSockets: log hostname and listen-port
2020-11-23 20:12:57 +01:00
Robin Gareus
80e3c191e4
Pulseaudio: allow steam being suspended during export
...
When exporting long sessions with freewheeling, pulseaudio
may meanwhile suspend the corked audio device. The "FAIL_ON_SUSPEND"
option then prevents ardour to uncork it after export, and the
audio-backend is halted.
2020-11-22 21:41:47 +01:00
Robin Gareus
da4d1cd779
Yet another export fix (amend a529122249)
2020-11-22 20:44:45 +01:00
Robin Gareus
ef8eb36189
Fix export (amend a529122249)
2020-11-22 20:20:05 +01:00
Robin Gareus
767d5f93ba
Fix segfault when plugin insantiation fails
...
*PluginInfo::load() eventually calls `plugin->set_info()`
which depends on a valid PluginPtr. The method needs to return
early if `plugin` is unset or null.
2020-11-21 22:28:48 +01:00
Robin Gareus
a529122249
Optimize stem and direct-out export
2020-11-20 20:14:52 +01:00
Robin Gareus
a1f40979bd
VST3: fix failed c'tor case
...
~VST3PI() may call terminate() w/o a VST3 component.
2020-11-20 19:48:39 +01:00
Robin Gareus
a329de9d2f
NO-OP: help out clang-analyzer
2020-11-20 19:42:33 +01:00
Robin Gareus
7d4cd5c76a
Fix C++11ism
2020-11-20 13:32:20 +01:00
Robin Gareus
6ca4980e71
FP8: Allow to sort plugin-params by priority
2020-11-20 06:04:32 +01:00
Robin Gareus
3ac7e11eea
Support lv2:port-props:displayPriority
2020-11-20 06:03:49 +01:00
Robin Gareus
7558c1316e
VST3: inform plugins about last bar
2020-11-20 02:07:49 +01:00
Robin Gareus
50d8eff0d6
Allow const tempo-map lookups
2020-11-20 02:07:37 +01:00
luna
8f00826803
Make sure VST3 projectTimeMusic is updated
2020-11-20 01:43:21 +01:00
Luciano Iam
9ee828b47b
WS: properly support MIDI strips
2020-11-19 17:03:36 +01:00
Porrumentzio
a8d924d9e1
Update and rework Basque translation
2020-11-19 16:48:58 +01:00
Hector Martin
4b9e46f11d
Fix normalization in Temporal::Beats for times between -1 and 0 beats
...
Also fix normalization of times with negative beats and positive ticks
2020-11-18 13:40:31 -07:00
Robin Gareus
ff51e315e3
VST3: fix kMaxSendLevel, on Mixbus 15dB gain can be added
2020-11-17 14:54:31 +01:00
Robin Gareus
5a27cb9780
Fix copy/edit in 0d8f4eb95a
2020-11-17 03:16:30 +01:00
Robin Gareus
5fd2d6cc81
VST3: add debug message for preset/state restore
2020-11-17 02:44:11 +01:00
Robin Gareus
0d8f4eb95a
VST3: Fix uninitialized variable, likely fixes #8460
2020-11-17 02:43:55 +01:00
Robin Gareus
4a8e9f28f3
VST3: unconditionally set controller's component state
...
This synchronizes component and controller when loading presets
like the VST3 SDK does.
2020-11-17 00:56:54 +01:00
Robin Gareus
de76d583b4
Remove unused variable
2020-11-17 00:16:36 +01:00
Robin Gareus
f9e9c6248d
Initialize inline_ctrl variable, fix erratic inline ctrls
2020-11-16 18:27:09 +01:00
Robin Gareus
5950df2b74
VST3: fix duplicate plugin list (windows bundle vs dll)
2020-11-16 18:26:29 +01:00