13
0
Commit Graph

30884 Commits

Author SHA1 Message Date
e71cc6892e
Fix MSVC linker issue
Static globals are not shared between .dll and .exe
the FUID needs to be declared in the GUI as well for
FUnknownPtr<> cast by UUID lookup to work
2020-10-09 18:28:53 +02:00
0edd0c2abc
Do not bind pure virtual functions, use indirection
This fixes Windows/MSVC builds, where linking fails due
to binding a pure virtual function.
2020-10-09 18:23:53 +02:00
734a31accf
VST3: announce support for implemeted features 2020-10-09 17:45:15 +02:00
e8c6d20b18
Factor out namespace 2020-10-09 14:13:07 +02:00
85acfb0842
Use explicit cast to bool 2020-10-09 14:12:58 +02:00
37475308ee
VST3: store all input controls (not only automatable ones) 2020-10-09 14:12:52 +02:00
d0ec83fb35
Fix mistake in 10b05df189 2020-10-09 05:14:28 +02:00
1cc1bc996c
Improve AU debug facilities (2/2) 2020-10-09 02:29:29 +02:00
323fe16d4d
Improve AU debug facilities (1/2)
Use a common prefix "AudioUnit" but allow to only debug setup/config
changes without regular process-callback debug clutter.
2020-10-09 02:29:19 +02:00
10b05df189
Rename plugin pin I/O API (NO-OP)
This allows to distinguish Processor::configure_io from the
Plugin API with the same name. Despite the identical name,
both functions serve different purposes.
Likewise the ::can_support_io_configuration() API is renamed.
The signature of that function call has already diverged.

The Plugin-API has to handle optional busses (e.g. side-chain)
and replication. The PluginInsert processor provides context.

This change is in preparation for AudioUnit and VST3 busses.
Currently a stereo-input (1 bus) cannot be distinguished from
mono + sidechain (2 busses).
2020-10-09 02:19:43 +02:00
64391334a4
NO-OP: Remove unused API implementation 2020-10-09 02:06:50 +02:00
e4bbb1bc81
VST3: Implement ContextInfo (console) extension 2020-10-08 15:36:36 +02:00
e3ca1f0605
VST3: Implement GUI scale factor extension 2020-10-08 15:36:36 +02:00
65c433dce2
VST3: Implement PSI extensions
* Register classes
* Implement automation-state notification
* Implenent parameter slave
2020-10-08 15:36:35 +02:00
042f0a192f
VST3: Add PreSonus Plug-In Extensions 2020-10-08 15:36:35 +02:00
9746a63625
VST3: implement ChannelContext::IInfoListener 2020-10-08 15:36:35 +02:00
bbbd6a36ec
VST3: set owner (prepare for context-info extensions) 2020-10-08 15:36:35 +02:00
c4bc3b00d2
Plugin-scan: display module/bundle name without file extension 2020-10-08 15:35:50 +02:00
6e6eb4c13e
Fix VST3 scan message (use bundle, not module name) 2020-10-08 15:35:50 +02:00
John Emmas
386b894094 Add a new #include path to our MSVC project (vst3_scan) 2020-10-08 09:29:11 +01:00
53d406e47d
VST3: Implement ISizeableStream and IStreamAttributes 2020-10-08 04:18:53 +02:00
6dc909696f
Allow src/dst MIDI buffer offsets
This is needed for ARDOUR::PluginInsert::automate_and_run
when processing is split on events.
2020-10-08 04:18:50 +02:00
9419d6f76f
VST3: implement optional IEditController interfaces 2020-10-08 03:05:09 +02:00
fa3051fb24
Better version of previous commit (fa3ae33a1f)
Since the file-modification timestamp of the module-path is used
if the cache is up-to-date, the file must exist.
For macOS/X bundles the mandatory file as per VST3 spec is Info.plist
2020-10-08 00:09:12 +02:00
fa3ae33a1f
VST3: relax bundle-name requirement on MacOS 2020-10-07 18:50:39 +02:00
953901ad3b
Fix typo in 05c039629c (VST -> VST2, not 3) 2020-10-07 17:51:01 +02:00
c0b4e575d9
VST3: add support for hiding parameters 2020-10-07 17:49:55 +02:00
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
0fac5c9c2c
Fix previous commit (reset, not zero shared_ptr) 2020-10-06 05:24:34 +02:00
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
7ab664d5a4
Properly emit Plugin::DropReferences (1/2) 2020-10-05 19:57:14 +02:00
df55af6483
Fix include path prefix 2020-10-05 19:57:08 +02:00
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
e76055d63d
LAN: Display messages for edge-case errors (#8437) 2020-10-04 16:37:29 +02:00
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
ec2eedacc6
Fix C++89 builds, (vst3 interface needs nullptr) 2020-10-02 20:42:40 +02:00
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
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
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
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
e2639a1a58
Fix path to LV2s 2020-10-02 13:58:10 +02:00
6e89df412a
VST3: Fix another potential crash when removing a plugin 2020-10-01 23:39:59 +02:00
02c03a36be
Fix running on macOS from the src-tree 2020-10-01 23:38:55 +02:00
5f6aa7ffdb
Add Status-bar snapshot name & modified indicator 2020-10-01 18:27:59 +02:00
c8df8418dc
Consolidete script author names 2020-09-30 22:06:35 +02:00
46e895aaad
Re-brand a-* plugins as Ardour Community Effects (ACE) 2020-09-30 21:59:20 +02:00
e4cb7a14e8
VST3: reduce debug output 2020-09-30 17:10:24 +02:00
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
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