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
ed
c1cb7cea9a
Fixed some issues flagged by the Xcode static analysis tool
2020-03-18 10:18:54 +00:00
ed
18523101be
Windows: Refactored DPI handling in the VST wrapper and hosting code
2020-03-02 15:41:08 +00:00
reuk
c2f058df80
Threadsafety improvements
2020-02-25 16:21:10 +00:00
reuk
68b02efea1
AudioProcessorGraph: Immediately rebuild the graph if topology changes on the message thread
2020-02-10 16:41:49 +00:00
ed
dde8f4b68c
Re-attach ResizableCornerComponent when calling AudioProcessorEditor::setContrainer() so the new constrainer is respected
2020-01-28 11:11:31 +00:00
ed
44428a399d
Updated the documentation for AudioProcessorGraph::addNode()
2020-01-20 09:26:15 +00:00
reuk
5d1a5e804c
ProcessorGraph: Fix issue where initialising empty graphs failed
2020-01-07 17:26:23 +00:00
ed
a54da0b832
Fixed some more typos
2020-01-07 08:53:23 +00:00
ed
bad6500424
Added activeEditorLock to AudioProcessor to replace callbackLock when accessing its activeEditor member to prevent priority inversion issues
2020-01-06 14:45:41 +00:00
reuk
7d2310795f
Threadsafety improvements
2019-12-19 09:13:14 +00:00
reuk
6a27649a85
AudioProcessorGraph: Fixed an issue where processBlock could be called simultaneously with releaseResources
2019-12-09 10:42:17 +00:00
Tom Poole
5e209b37d3
AudioProcessorGraph: Fixed some thread safety issues
2019-12-09 09:56:26 +00:00