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
reuk
d69706e08a
AudioProcessorGraph: Avoid race on AudioProcessor::suspended
2022-03-23 16:51:40 +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
reuk
63b6ecde4f
AudioProcessorParameter: Fix documentation
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
068dffdb8c
AudioProcessorEditorHostContext: Fix naming of getContextMenuForParameter
2022-02-18 16:43:25 +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
b80927fc91
Nodiscard: Add to builder-pattern functions
2022-01-27 18:43:21 +00:00
Tom Poole
c072b1bc8e
Fix some typos
2022-01-25 11:48:46 +00:00
reuk
b13bbbefb3
AudioChannelSet: Add atmos layouts
2021-11-19 16:35:22 +00:00
reuk
b5064f361f
HostedAudioProcessorParameter: Extract from AudioPluginInstance
2021-10-14 13:15:25 +01:00
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.
2021-10-06 16:59:07 +01:00
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.
2021-09-29 16:14:00 +01:00
reuk
ea250b3655
VST3 Client: Change VST3 native menu so that its position is specified in logical pixels
2021-09-28 11:31:48 +01:00
reuk
ab966fb499
PopupMenu: Add withMousePosition helper function to Options
2021-09-28 11:31:48 +01:00
reuk
07ca7ae13b
GenericAudioProcessorEditor: Update parameter names when AudioProcessor changes
2021-09-27 15:44:48 +01:00
reuk
cfec0b5356
GenericAudioProcessorEditor: Add support for grouped parameters
2021-09-27 15:44:48 +01:00
reuk
3d1d060317
AudioPluginInstance: Add API to retrieve parameter IDs from hosted plugins
2021-09-27 15:44:47 +01:00
Tom Poole
f1fecfdc88
Add some missing Doxygen tags
2021-09-20 11:36:56 +01:00
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.
2021-07-23 10:58:44 +01:00
ed
a2d03d2266
Fixed some warnings flagged by Clang's static analyzer
2021-07-19 15:48:31 +01:00
Tom Poole
d53388097b
AudioProcessorGraph: Improve performance when building large graphs
2021-07-08 10:47:36 +01:00
reuk
bfb521b610
AudioProcessorEditor: Allow showing a host-provided parameter menu in VST3 plugins
2021-06-11 11:12:35 +01:00
reuk
442369bd6b
AudioPluginInstance: Add new API to query properties of hosted plugins
2021-06-11 10:53:26 +01:00
reuk
31a7c62baf
Windows: Fix and suppress some analysis warnings
...
This fixes warnings that are emitted when building with the `-analyze`
flag enabled.
2021-05-26 15:34:26 +01:00
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
2021-05-26 09:21:13 +01:00
reuk
327fc86ff2
PluginDescription: Also check deprecatedUid when matching plugin identifier strings
2021-04-22 14:28:52 +01:00
reuk
041da08474
VST3: Add a new PluginDescription::uniqueId field
2021-04-07 15:14:20 +01:00
reuk
819736054f
GenericAudioProcessorEditor: Allow double-click on a slider to return to default value
2021-03-25 11:51:28 +00:00
reuk
6f92906107
AudioProcessor: Make wrapperType member const
2021-03-24 16:11:07 +00:00
reuk
d08b526930
AudioProcessor: Fix default behaviour of updateHostDisplay
...
This patch fixes an issue where calling `updateHostDisplay` with no
argument would have no effect.
2021-03-23 14:37:10 +00:00
ed
ad8f2013b5
AudioProcessorEditor: Set ComponentBoundsConstrainer stretchingTop/Left/Bottom/Right values when calling setBoundsForComponent()
2021-03-12 18:25:22 +00:00
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
2021-03-05 18:40:04 +00:00
reuk
b1917085db
AudioProcessor: Update listener callback with change details
2021-02-18 10:54:29 +00:00
Tom Poole
1fbd6dff9b
VST3: Fixed invalid AudioProcessorParameterGroup unit IDs
2020-12-21 10:50:57 +00:00
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.
2020-10-23 15:50:47 +01:00
ed
44c92e95c0
Defined AudioPlayHead::CurrentPositionInfo methods inline
2020-08-12 17:02:57 +01:00
reuk
013fd5e5d6
juce6: Update some referenes to JUCE 5 in docstrings
2020-07-01 10:00:43 +01:00
reuk
394c4fd475
Clang: Fix warnings when building with clang 10
2020-07-01 10:00:43 +01:00
ed
009d685179
Updated all license headers
2020-06-29 08:30:22 +01:00
ed
b5214a341e
Normalised lambda whitespace
2020-06-05 09:37:56 +01:00
ed
d510b73cdf
Normalised all whitespace before args in std::function
2020-06-05 09:37:49 +01:00
ed
606e8a509b
AudioProcessorGraph: Return Node::Ptr from removeNode()
2020-06-01 12:18:23 +01:00
Tom Poole
894e7d2bd2
Updated all license headers
2020-04-23 17:30:39 +01:00
reuk
55fb6e1bb1
AudioProcessorGraph: Allow extracting nodes
2020-04-16 12:18:47 +01:00
reuk
8433c098b9
MIDI: Add Midi Logger plugin demo PIP
...
We also build this into the AudioPluginHost, as a convenient way to
check the midi outputs of plugins and devices.
2020-04-16 12:18:46 +01:00
reuk
5f348c3040
Warnings: Add warning-wrangling header
2020-04-13 13:16:05 +01:00
reuk
ece5644a20
CMake: Add support for building JUCE projects with CMake
2020-04-13 12:10:11 +01:00
reuk
327f817b9b
Copyrights: Update commercial/gpl headers to be gpl-only
2020-04-09 15:22:56 +01:00