Tom Poole
b48dddcf4e
RTAS: Remove RTAS functionality
2022-05-03 08:16:37 +01:00
reuk
c0d02fc75a
LV2 Host: Add missing path separator to UI bundle path
2022-04-28 16:08:47 +01:00
reuk
7ea93ce5d2
LV2 Host: Avoid potential deadlock in AudioProcessorGraph
...
Previously, preparing an AudioProcessorGraph containing hosted LV2
plugins would recreate the plugins and then set their state. For plugins
without threadsafe restore, setting the state would take the
callbackLock to avoid races with processBlock. This meant that
- During prepare, the graph would take the processorLock, then the
processor would take its own callbackLock.
- During playback, the graph would take the processor's callbackLock,
and then would take the node's processorLock.
This is probably benign (prepare shouldn't be called concurrently with
processBlock at all), but to be on the safe side we now avoid taking the
callbackLock when setting new plugin state during prepareToPlay.
2022-04-28 11:05:40 +01:00
reuk
b88b8f13c7
LV2 Host: Supply correct bundle path during instantiation
2022-04-28 11:05:40 +01:00
Tom Poole
db3c6e6216
macOS/iOS: Fix unguarded availability warnings
2022-04-26 15:37:03 +01:00
Tom Poole
e984395b1d
GCC: Fix some compiler warnings in GCC 11
2022-04-26 15:30:54 +01:00
Tom Poole
a77936ecda
VST3: Fix a compiler warning in the VST3 SDK
2022-04-26 11:38:19 +01:00
reuk
1182024fc4
LV2: Add initial hosting support
2022-04-22 14:18:51 +01:00
reuk
6fffbdae92
LV2: Add generated resources
2022-04-22 14:18:51 +01:00
reuk
e4b3eda5ef
LV2: Add supporting library files
2022-04-22 14:18:51 +01:00
reuk
77090bb499
AudioProcessorGraph: Fix processing of plugins with no inputs or outputs
2022-04-22 14:18:51 +01:00
reuk
092314deac
VST2 Host: Avoid bad window errors when editor peer is deleted
2022-04-22 14:18:50 +01:00
reuk
c30b3a1a31
Plugin Hosting: Take custom scaling into account when computing editor sizes
2022-04-22 14:18:49 +01:00
reuk
cfa289d943
AudioProcessor: Allow querying of the host timestamp in processBlock
2022-04-22 14:18:49 +01:00
reuk
19ddbe2368
Warnings: Fix missing-prototypes warnings
2022-04-22 14:18:48 +01:00
Tom Poole
dea3fe60e4
Update copyright banners
2022-04-04 12:36:32 +01:00
reuk
624a898e00
VST3 Host: Avoid disabling midi buses while plugin is active
2022-04-01 16:41:47 +01:00
reuk
c7a17934e3
Formatting
2022-04-01 16:41:47 +01:00
Oli
b918fd3159
AudioProcessorGraph: Fix MIDI channel bug and graph execution modification
...
MIDI only plugins are no longer provided valid audio buffers
Graph nodes are only executed when they have active connections
2022-03-28 20:47:30 +01:00
attila
5343f70d02
AU Host: Avoid using wrong BundleResourceMap when opening plugin from file
...
Previously it was possible to have a dangling resource map. In that case
opening an AU from a file that did not have a resource map would lead to
using the previously unclosed map and attempting to load the previous
plugin again.
2022-03-23 18:40:47 +00:00
reuk
fe3d42025b
VST3: Add channel mapping tests
2022-03-23 16:51:40 +00:00
reuk
bb2b36a253
VST3 Client: Properly map between VST3 and JUCE layouts
2022-03-23 16:51:40 +00:00
reuk
bfa4f93a43
VST3 Host: Properly map between VST3 and JUCE layouts
2022-03-23 16:51:40 +00:00
reuk
d69706e08a
AudioProcessorGraph: Avoid race on AudioProcessor::suspended
2022-03-23 16:51:40 +00:00
reuk
5b3aa7fc2d
AU Client: Ensure processBlock receives AudioBuffer of correct size
...
fc378aaf9a introduced a regression where
plugins with no audio channels (such as MIDI FX plugins) would receive
an audio buffer with a length-in-samples of '0', rather than the actual
block length.
2022-03-23 16:51:40 +00:00
reuk
88b5f0dc95
VST: Remove unused function
2022-03-23 16:51:40 +00:00
reuk
a8c160691c
VST3: Tidy up channel layout conversion tables
2022-03-23 16:51:40 +00:00
reuk
8c718e7ac7
VST3: Map proximity channels correctly
2022-03-23 16:51:40 +00:00
reuk
e6b6bc2cfc
AudioProcessorValueTreeState: Add default values for Parameter constructor arguments
...
These were mistakenly removed in afe5199848
2022-03-23 11:26:57 +00:00
reuk
ebac835673
Fix some deprecation warnings
2022-03-22 17:27:54 +00:00
reuk
afe5199848
AudioProcessorParameter: Add new ParameterID and Attributes types
2022-03-03 13:47:05 +00:00
reuk
26aa932e5f
AudioProcessor: Validate parameter version hints
2022-03-03 13:44:49 +00:00
reuk
7068e70758
AudioProcessorParameter: Add getVersionHint function
2022-03-03 13:44:48 +00:00
Tom Poole
111bbc0979
Bump version number to 6.1.6
2022-02-28 12:53:10 +00:00
reuk
288765b3c8
AU Client: Avoid potential out-of-bounds write when clearing buffers
...
Fixes an issue introduced in 72fa2d98e1
where zeromem might write past the end of the channel buffer.
2022-02-23 10:56:12 +00:00
reuk
63b6ecde4f
AudioProcessorParameter: Fix documentation
2022-02-23 10:56:10 +00:00
reuk
fb1f94767d
AU Host: Improve allocation checks
...
If the block size changes from block to block, then it's possible for
inputBuffer to be smaller than buffer, but for buffer to be smaller than
the initially-allocated size of inputBuffer.
2022-02-23 10:56:10 +00:00
reuk
c229d160f9
PluginDescription: Fall back to using deprecatedUID in createIdentifierString() if the new uniqueID is not known
2022-02-23 10:56:10 +00:00
reuk
ec867690b7
VST3: Fix leak when setting/getting state via extensions mechanism
2022-02-18 16:43:27 +00:00
reuk
72fa2d98e1
AU Wrapper: Ensure that correct input channels are cleared before processing
2022-02-18 16:43:26 +00:00
reuk
1bf9ebb4b1
VST3 Host: Avoid calling initialize twice on objects that implement both IComponent and IEditController
2022-02-18 16:43:26 +00:00
reuk
a3c55a967f
VST3 Host: Only call IPlugView::removed() if a previous call to attached() succeeded
2022-02-18 16:43:26 +00:00
reuk
068dffdb8c
AudioProcessorEditorHostContext: Fix naming of getContextMenuForParameter
2022-02-18 16:43:25 +00:00
reuk
903873dad2
VST3: Add local search path on Windows
...
We haven't updated the default post-build copy paths yet, as the new
local directory is not yet well-supported by DAWs.
2022-01-28 16:09:59 +00:00
reuk
ad94a69263
GenericAudioProcessorEditor: Refresh parameter value text when parameter info changes
...
When plugins change their 'parameter info' this often means that their
previous parameter text is no longer valid, so we should fetch new text
to represent the parameter value.
This change was primarily tested with Kontakt.
2022-01-28 16:09:59 +00:00
reuk
70b667281f
AU Host: Refresh parameter names and labels when requested by the plugin
2022-01-28 16:09:58 +00:00
reuk
093dbc7df1
Plugin Scanning: Fix thread sanitizer issues in the AudioPluginHost
2022-01-27 18:43:22 +00:00
reuk
6c046ffc04
AudioPluginHost: Allow out-of-process scanner to scan AUv3 plugins
2022-01-27 18:43:21 +00:00
reuk
b80927fc91
Nodiscard: Add to builder-pattern functions
2022-01-27 18:43:21 +00:00
reuk
3d1818f5bd
AU Host: Correctly reorder hosted audiounit channels
...
This change was tested with FabFilter Pro Q 3, which supports new AU
channel layouts for Atmos.
2022-01-27 18:43:21 +00:00