reuk
752c913cd2
AudioPlayHead: Move HostTimeNs out of AudioProcessor, to consolidate timing information
2 years ago
reuk
8fbd99c424
AudioPlayHead: Improve granularity of position info
2 years ago
Tom Poole
2ec861d99e
Update licensing banners to JUCE 7
3 years ago
attila
f36949c1b2
ARA Host: Add support for scanning and hosting ARA plugins
3 years ago
attila
db17713aad
AudioProcessor: Add isRealtime()
3 years ago
Tom Poole
b48dddcf4e
RTAS: Remove RTAS functionality
3 years ago
reuk
1182024fc4
LV2: Add initial hosting support
3 years ago
reuk
77090bb499
AudioProcessorGraph: Fix processing of plugins with no inputs or outputs
3 years ago
reuk
cfa289d943
AudioProcessor: Allow querying of the host timestamp in processBlock
3 years ago
Tom Poole
dea3fe60e4
Update copyright banners
3 years ago
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
3 years ago
reuk
d69706e08a
AudioProcessorGraph: Avoid race on AudioProcessor::suspended
3 years ago
reuk
26aa932e5f
AudioProcessor: Validate parameter version hints
3 years ago
reuk
7068e70758
AudioProcessorParameter: Add getVersionHint function
3 years ago
reuk
63b6ecde4f
AudioProcessorParameter: Fix documentation
3 years ago
reuk
c229d160f9
PluginDescription: Fall back to using deprecatedUID in createIdentifierString() if the new uniqueID is not known
3 years ago
reuk
068dffdb8c
AudioProcessorEditorHostContext: Fix naming of getContextMenuForParameter
3 years ago
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.
3 years ago
reuk
b80927fc91
Nodiscard: Add to builder-pattern functions
3 years ago
Tom Poole
c072b1bc8e
Fix some typos
3 years ago
reuk
b13bbbefb3
AudioChannelSet: Add atmos layouts
3 years ago
reuk
b5064f361f
HostedAudioProcessorParameter: Extract from AudioPluginInstance
3 years ago
reuk
294caba2b5
VST3: Add dirty-state set/get
Adds a mechanism to notify the host that the plugin state needs saving,
using updateHostDisplay.
Also allows JUCE hosts to detect when a plugin needs its state saving
via the AudioProcessorListener.
3 years ago
ed
b9542ccc4c
Update code to use C++14 [[deprecated]] attribute
This commit removes the various compiler-specific JUCE_DEPRECATED macros and replaces them with C++14's deprecated attribute. It also removes the JUCE_CATCH_DEPRECATED_CODE_MISUSE flag as we can rely on the override specifier catching usage of these old virtual methods, and tidies up the DOXYGEN preprocessor checks as they were inconsistent across the codebase.
3 years ago
reuk
ea250b3655
VST3 Client: Change VST3 native menu so that its position is specified in logical pixels
3 years ago
reuk
ab966fb499
PopupMenu: Add withMousePosition helper function to Options
3 years ago
reuk
07ca7ae13b
GenericAudioProcessorEditor: Update parameter names when AudioProcessor changes
3 years ago
reuk
cfec0b5356
GenericAudioProcessorEditor: Add support for grouped parameters
3 years ago
reuk
3d1d060317
AudioPluginInstance: Add API to retrieve parameter IDs from hosted plugins
3 years ago
Tom Poole
f1fecfdc88
Add some missing Doxygen tags
3 years ago
reuk
4980788516
AudioProcessor: Add checks to ensure AAX parameter ID compatibility
The AAX SDK already checks for truncated IDs internally. If any ID is
truncated, details will be written to Pro Tools' log file (you may need
to enable logging first). Search for "AAX_ASSERT" in the log to find
triggered assertions.
3 years ago
ed
a2d03d2266
Fixed some warnings flagged by Clang's static analyzer
3 years ago
Tom Poole
d53388097b
AudioProcessorGraph: Improve performance when building large graphs
3 years ago
reuk
bfb521b610
AudioProcessorEditor: Allow showing a host-provided parameter menu in VST3 plugins
4 years ago
reuk
442369bd6b
AudioPluginInstance: Add new API to query properties of hosted plugins
4 years ago
reuk
31a7c62baf
Windows: Fix and suppress some analysis warnings
This fixes warnings that are emitted when building with the `-analyze`
flag enabled.
4 years ago
ed
b9ae71ae8f
AudioProcessorEditor: Fixed a bug introduced in 5a59c92b
causing editors to always be marked as resizable by the host when using the default ComponentBoundsConstrainer
4 years ago
reuk
327fc86ff2
PluginDescription: Also check deprecatedUid when matching plugin identifier strings
4 years ago
reuk
041da08474
VST3: Add a new PluginDescription::uniqueId field
4 years ago
reuk
819736054f
GenericAudioProcessorEditor: Allow double-click on a slider to return to default value
4 years ago
reuk
6f92906107
AudioProcessor: Make wrapperType member const
4 years ago
reuk
fbe95b0b07
AudioProcessor: Fix default behaviour of updateHostDisplay
This patch fixes an issue where calling `updateHostDisplay` with no
argument would have no effect.
4 years ago
reuk
d08b526930
AudioProcessor: Fix default behaviour of updateHostDisplay
This patch fixes an issue where calling `updateHostDisplay` with no
argument would have no effect.
4 years ago
ed
ad8f2013b5
AudioProcessorEditor: Set ComponentBoundsConstrainer stretchingTop/Left/Bottom/Right values when calling setBoundsForComponent()
4 years ago
ed
5a59c92b20
AudioProcessorEditor: Allow editors to have a corner resizer without being resizable by the host and clarified the documentation regarding this and the editor's constrainer
4 years ago
reuk
b1917085db
AudioProcessor: Update listener callback with change details
4 years ago
Tom Poole
1fbd6dff9b
VST3: Fixed invalid AudioProcessorParameterGroup unit IDs
4 years ago
reuk
b41951bc4b
AudioProcessorGraph: Ensure nodes are prepared with correct precision
Previously, if `AudioProcessorGraph::prepareToPlay` was called twice,
interspersed with calls to `setProcessingPrecision`, the graph would
consider the nodes 'prepared' on the second call, and wouldn't
re-prepare the inner nodes with the new precision setting.
graph.setProcessingPrecision (juce::AudioProcessor::singlePrecision);
graph.prepareToPlay (44100, 512);
graph.setProcessingPrecision (juce::AudioProcessor::doublePrecision);
graph.prepareToPlay (44100, 512); // this wouldn't update the nodes
Now, we always explicitly unprepare all nodes at the beginning of
prepareToPlay, so that they'll always receive the newest settings.
4 years ago
ed
44c92e95c0
Defined AudioPlayHead::CurrentPositionInfo methods inline
4 years ago
reuk
013fd5e5d6
juce6: Update some referenes to JUCE 5 in docstrings
4 years ago