Commit graph

32457 commits

Author SHA1 Message Date
Robin Gareus
a28b1f548e
Add interface to inform plugins about replicated instances
This allows for asking plugins to synchronize internal state
that isn't visible to the host between plugin instances.
2020-10-06 23:34:25 +02:00
Robin Gareus
0fac5c9c2c
Fix previous commit (reset, not zero shared_ptr) 2020-10-06 05:24:34 +02:00
Robin Gareus
0f7850b0b7
Properly emit Plugin::DropReferences (2/2)
This also destroys the shadow plugin used for analysis as soon
as the analysis pane is hidden.
2020-10-05 19:57:17 +02:00
Robin Gareus
7ab664d5a4
Properly emit Plugin::DropReferences (1/2) 2020-10-05 19:57:14 +02:00
Robin Gareus
df55af6483
Fix include path prefix 2020-10-05 19:57:08 +02:00
Robin Gareus
01b52ce221
Fix adding MIDI automation points on an existing line #7683
This follows 973d58e8f9, which allows to ignore y-axis
position when drawing new events to parameter automation lanes.
2020-10-04 22:18:54 +02:00
Robin Gareus
e76055d63d
LAN: Display messages for edge-case errors (#8437) 2020-10-04 16:37:29 +02:00
Robin Gareus
f5c1830263
Show monitor-section button only in the mixer window
Previously it was possible to to also have it visible on the
editor-mixer.

Also always use "Mon", the text also fits on narrow mixer-strips
2020-10-04 16:28:28 +02:00
John Emmas
6155558c76 Add a new #include path to our MSVC project (libardour) 2020-10-03 11:23:54 +01:00
Robin Gareus
ec2eedacc6
Fix C++89 builds, (vst3 interface needs nullptr) 2020-10-02 20:42:40 +02:00
Paul Davis
05018164df fix computation of recording rect/layer when recording in stacked view
Code was using Region::start() which is an offset into the source, but should use
Region::position() which is the position on the timeline
2020-10-02 12:13:53 -06:00
Robin Gareus
c069709939
VST3: do not create persistent view to test has_editor()
This is a better variant of 05d2a0f4a4. Mainly becuase
some plugins crash when view->remove() is called for a
view that was never attached.
2020-10-02 16:45:49 +02:00
Robin Gareus
05d2a0f4a4
VST3: explicitly close and release view
A call to VST3Plugin::has_editor() can create the view of
a plugin. If the GUI is never displayed, the view would
not have been released, which can lead to crashes when
unloading the plugin.
2020-10-02 15:29:04 +02:00
Robin Gareus
3c4801bc96
VST3: common factory instantiating and release
This may address some issues with multiple references
(and incremental releases) of a plugin's factory.
2020-10-02 15:01:01 +02:00
Robin Gareus
e2639a1a58
Fix path to LV2s 2020-10-02 13:58:10 +02:00
Robin Gareus
6e89df412a
VST3: Fix another potential crash when removing a plugin 2020-10-01 23:39:59 +02:00
Robin Gareus
02c03a36be
Fix running on macOS from the src-tree 2020-10-01 23:38:55 +02:00
Robin Gareus
5f6aa7ffdb
Add Status-bar snapshot name & modified indicator 2020-10-01 18:27:59 +02:00
Robin Gareus
c8df8418dc
Consolidete script author names 2020-09-30 22:06:35 +02:00
Robin Gareus
46e895aaad
Re-brand a-* plugins as Ardour Community Effects (ACE) 2020-09-30 21:59:20 +02:00
Robin Gareus
e4cb7a14e8
VST3: reduce debug output 2020-09-30 17:10:24 +02:00
Robin Gareus
00b5b61a43
VST3: implement some restart component flags
Re-order handling of the flags, do not return early,
and log warnings for unhandled flags.
2020-09-30 17:09:32 +02:00
Robin Gareus
814eca48af
VST3: disable MIDI busses before removing plugin
There is anecdotal evidence that some plugins require this
to exit cleanly.
2020-09-30 16:43:42 +02:00
Robin Gareus
8209b4b948
VST3: handle zero length plugin state 2020-09-30 04:41:59 +02:00
Robin Gareus
5e882afe10
Fix dereferencing empty vectors 2020-09-30 03:18:19 +02:00
Robin Gareus
c6fc4f36a3
Include version in crashdump 2020-09-29 17:34:21 +02:00
Robin Gareus
71212e0c81
Remove debug/profile message in optimized builds 2020-09-29 16:46:29 +02:00
Robin Gareus
c45982ee5a
Console needs to be set up early on
If there is any output printed before setting up the console,
there will be no output at all.
2020-09-29 16:46:00 +02:00
Robin Gareus
d97b0fbf96
Use a better location for windows crashdumps
On Windows, a user's $HOME dir may not exist, or not be writable,
also cluttering up the $HOME with crashlogs is not great.
2020-09-29 16:42:27 +02:00
Robin Gareus
5ebb016544
Add support for Dr.Mingw 2020-09-29 06:06:11 +02:00
Robin Gareus
d4d3d84d8c
Hide LV1, VST2 instruments in dropdown if matching LV2, LV3 exist 2020-09-28 22:35:15 +02:00
Robin Gareus
dcc14e9f6c
Never write #ifdef'ed code after 4am 2020-09-28 17:23:32 +02:00
Robin Gareus
d4b774e935
VST3: partially revert debcda25b4 implicit notifications to self 2020-09-28 04:35:10 +02:00
Robin Gareus
ff26258461
Fix sloppy typing 2020-09-28 03:41:48 +02:00
Robin Gareus
117184c3bd
Fix 32bit alignment in prev commits
this amends
  f52c5ca3ac
and
  5abe677fea
2020-09-28 03:20:14 +02:00
Robin Gareus
f52c5ca3ac
ARM RTMidiBuffer alignment 2020-09-28 03:12:38 +02:00
Robin Gareus
5abe677fea
Fix ARM MIDI buffer alignment
Both TimeType (8byte) and EventType (4byte) are written
in an un-aligned buffer (usually 3 byte MIDI messages).
This caused an Illegal Instruction for 32bit ARM builds
2020-09-28 01:23:02 +02:00
Robin Gareus
7e1ce160e9
ARM 32bit enum alignment (used in MIDIBuffer)
Evoral::EventType is written directly into a uint8_t buffer
by dereferncing a pointer-type:
*(reinterpret_cast<Evoral::EventType*>((uintptr_t)...)
2020-09-28 01:21:43 +02:00
Robin Gareus
37ec50cbf8
Remove C++11ism 2020-09-27 20:42:23 +02:00
Robin Gareus
5cbc5cc52a
VST3: setProcessing, setActive calls are optional 2020-09-27 20:30:44 +02:00
Robin Gareus
debcda25b4
VST3: use a dedicated connection list 2020-09-27 20:29:36 +02:00
Robin Gareus
1d6d4dc7b8
VST3: add set-dirty/state-changed support 2020-09-27 18:01:50 +02:00
Robin Gareus
554bd9958a
Use abs-path when running from source-tree
This fixes an issue with plugins changing directories,
dexed.vst3 for example.

Also remove PWD from include paths. This resolves potential
ambiguities.
2020-09-27 15:55:20 +02:00
Robin Gareus
f3fbf58185
Set default transient parent to the main window
This is mainly useful for plugin windows, but also relevant
for other Ardour WM managed dialogs and windows.
2020-09-27 02:07:19 +02:00
Robin Gareus
55df465fb3
VST3: load custom state after restoring port value
This fixes restoring the sate of Spitfire LABS and possibly
other plugins
2020-09-26 21:42:57 +02:00
Robin Gareus
6a780f9cbc
VST3: fix pitchbend range 2020-09-26 21:40:09 +02:00
Robin Gareus
751db481a6
Use linear fades for loop-range cross-fades
The cross-over point of an exponential fade occurs further towards
start of the fade. This increases consistency of cross-fades moving
the cross-over point to the center of the fade.

Also looped material is likely correlated in which a linear fade
is more appropriate.
2020-09-25 17:09:25 +02:00
Robin Gareus
c08298e6d8
Fix loop cross-fade glitch #8420
This fixes an off-by one when assigning `fade_length` and
also solves an edge-case with different fade length for
fade-in/fade-out.
2020-09-25 17:09:25 +02:00
John Emmas
7b0fdeda5e VST3: Change the order of some preprocessor directives in our MSVC project
(will simplify things a bit when building Mixbus)
2020-09-25 07:51:34 +01:00
Robin Gareus
929e88aac1
VST3: Prepare to debug plugin bus/channel count 2020-09-24 18:46:03 +02:00