1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-15 00:24:19 +00:00
Commit graph

8809 commits

Author SHA1 Message Date
reuk
6feeb7dcdd
VST3 Host: Avoid updating bus layout and activation of activated plug-ins
According to the VST3 spec, activateBus and setBusArrangements shall not
be called when a plugin is in the 'activated' state.

Previously, if prepareToPlay was called twice in a row on a hosted VST3
plugin, during the second call the plug-in would already be activated,
but its bus layout would still be adjusted. Now, we always ensure that
the plugin is inactive before the bus properties are adjusted.
2022-09-01 15:44:26 +01:00
reuk
6c3b410e6f
VST3 Client: When emulating MIDI CCs with parameters, generate a MIDI event for each parameter event
Based on a similar patch in the Surge-XT fork of JUCE.

Co-authored-by: Paul Walker <paul@pwjw.com>
2022-09-01 15:44:26 +01:00
reuk
b663c36c97
AU Host: Refactor PositionInfo usage
This avoids repeating the 'fallback' values in the case that the
AudioPlayHead or PositionInfo is not available.

As a side-effect of this change, when an AudioPlayHead is available but
does not supply a valid BPM value, a fallback of 120 will be used,
instead of 0. This fixes an issue where the Microtonic sequencer failed
to play in the AudioPluginHost.
2022-09-01 15:44:26 +01:00
reuk
d28815601a
GenericInterpolator: Refactor to avoid repetition
Also fixes an issue in which `numInputSamplesAvailable` was assigned
instead of `exceeded`, Github issue #1114.

Co-authored-by: Tatsuya Shiozawa <shio.tatsu99@gmail.com>
2022-09-01 15:44:26 +01:00
reuk
34341bc597
APVTS: Avoid calling null function when unspecified 2022-09-01 15:44:26 +01:00
reuk
8ec8e36f5c OpenGLContext: Swap buffers on the main thread
This change fixes an issue where opening multiple OpenGLContexts on
certain versions of macOS (observed on 10.13) could cause a deadlock.

The issue can be reproduced by:
- Attaching an OpenGL context to the AudioPluginDemo editor
- Opening multiple copies of the editor simultaneously in a plugin host.
  I tested with Live 10.

I also observed the issue in a standalone app that opened new windows
containing OpenGLContexts on a timer.
2022-08-31 17:42:48 +01:00
reuk
322aa64459 OpenGLContext: Share CVDisplayLinks with NSViewComponentPeer 2022-08-31 17:42:47 +01:00
reuk
20584cf201 NSViewComponentPeer: Fix bug where OpenGLViews would fail to display after window deminiaturization
This bug was introduced in 869760cb2a
2022-08-31 17:42:47 +01:00
reuk
bc177c2252 NSViewComponentPeer: Share display links between all windows 2022-08-31 17:42:47 +01:00
reuk
4b94c9b54a NSViewComponentPeer: Use RAII to manage display link 2022-08-31 17:42:47 +01:00
reuk
d4184b120d WebBrowserComponent: Allow developer tools in debug builds on macOS 2022-08-31 17:42:47 +01:00
reuk
e0fd976779 VST2: Always request a resize from the host when attaching an editor
This fixes an issue in Live 11.2 where editors using OpenGL would be
scaled incorrectly after closing and reopening the editor.
2022-08-31 17:42:47 +01:00
reuk
b27af5def9 OpenGL: Tidying 2022-08-31 17:42:47 +01:00
reuk
e64f87b26c OpenGL: Allow setting window bounds from repaint callback
On Windows, the OpenGL context window sometimes receives a repaint
request after moving between screens with different scale factors.
If the screen has changed size/scale since the last paint operation,
failing to invalidate the painted area may cause the screen contents
to be drawn at the wrong scale until paint is next called.
2022-08-31 17:42:47 +01:00
reuk
02b5ab748a OpenGL: Add support for a few more OpenGL profiles
- 4.1 and 4.3 contexts can now be requested
- The requested context version is no longer ignored on Linux
- Debugging contexts are now enabled in Debug builds with GL 4.3
- Fixes a bug where glEnable(GL_TEXTURE_2D) was called in core profiles
2022-08-31 17:42:47 +01:00
reuk
ac6a455229 VST Host: Fix iOS/Android build issue 2022-08-31 17:42:47 +01:00
reuk
11b4672b55 VST3 Client: Fix occasional incorrect scaling in Ableton Live when rendering with OpenGL
This patch fixes an issue where closing and reopening a plugin editor in
Live could cause it to display at the wrong scale when using OpenGL.
2022-08-31 17:42:47 +01:00
reuk
ceb601af64 LV2 Host: For parameters with scale points, correctly convert values to text 2022-08-31 17:42:47 +01:00
reuk
7ebd34012c LV2 Client: Use preferredChannelConfiguration if available when writing manifest 2022-08-31 17:42:47 +01:00
reuk
028d1eea78 Projucer: Fix signing issue when building LV2 plugins on Arm macs 2022-08-31 17:42:47 +01:00
chroma
6bd1582b47 Stats: Unique Machine ID 2022-08-31 16:20:48 +01:00
Tom Poole
4418376335 macOS/iOS: Fixed an issue creating native FileChoosers 2022-08-30 11:30:53 +01:00
attila
988d65e24f CoreAudio: Report error if combined devices don't share a common sample rate 2022-08-25 15:20:24 +02:00
attila
3323c68f96 AudioDeviceManager: Take sample rate compatibility into account during default device selection 2022-08-25 15:20:24 +02:00
attila
5ec536f13f CoreAudio: Forward errors to callback during device initialisation 2022-08-25 15:18:26 +02:00
reuk
5b355f6373
Graph: Tidy up names 2022-08-25 10:52:34 +01:00
reuk
44a7987322
Graph: Add unit tests 2022-08-25 10:52:34 +01:00
reuk
5746bc99da
Graph: Add isAnInputTo overload 2022-08-25 10:52:34 +01:00
reuk
ecdebbd885
Graph: Define functions inline 2022-08-25 10:52:33 +01:00
reuk
e6c8857351
Graph: Pimpl-ify 2022-08-25 10:52:33 +01:00
reuk
6c762f74d1
Graph: Refactor so that connections are stored as a single value type 2022-08-25 10:52:33 +01:00
reuk
01d51a860a
Graph: Modify the RenderSequenceBuilder so that it only needs a const ref to the graph during building 2022-08-25 10:52:33 +01:00
reuk
c44c0e0e9e
Graph: Reduce templating in RenderSequenceBuilder 2022-08-25 10:52:33 +01:00
reuk
a6c2f1d46e
Graph: Tidy and refactor 2022-08-25 10:52:33 +01:00
reuk
455c865d37
CoreAudio: Avoid occasional deadlocks when calling AudioDeviceStart 2022-08-25 10:52:33 +01:00
reuk
5d328f2038
AU Host: Tidy and refactor 2022-08-25 10:52:33 +01:00
reuk
6d267c2fdc
AUv3 Client: Improve const-correctness 2022-08-25 10:52:33 +01:00
reuk
a1e8aa4278
AUv3 Client: Remove unnecessary base class 2022-08-25 10:52:32 +01:00
reuk
064fb6fa53
AUv3 Client: Switch static data member for proper singleton 2022-08-25 10:52:32 +01:00
reuk
dedfac8dd8
AUv3 Client: Tidy up static methods 2022-08-25 10:52:31 +01:00
reuk
ef4b5957ec FileChooserDialogBox: Fix documentation bug 2022-08-23 19:20:06 +01:00
reuk
6de9927347 CMake: Avoid building juce_lv2_helper unless required for LV2 target 2022-08-23 18:10:27 +01:00
reuk
c920eb95fd Fonts: Fix issue where default fonts were set to use non-existent styles 2022-08-23 13:43:03 +01:00
Tom Poole
7296b8e3f7 Bump version number to 7.0.2 2022-08-15 17:26:35 +01:00
attila
997ed696c2 ARA Client: Fix GCC warnings 2022-08-15 12:07:40 +02:00
attila
9d73008dc2 ARA: Fix ARA debug configuration
The ARA SDK's debug functionality is included in the audio_processors
module, hence the configuration had to be moved there from
juce_plugin_client.
2022-08-15 12:07:40 +02:00
attila
acc6addb86 DragAndDropContainer: Manage keyboard focus for the drag image when the target needs it hidden
The previous implementation would trigger assertions in
grabKeyboardFocus() when the DragImageComponent was hidden due to the
target returning false from shouldDrawDragImageWhenOver().

Hiding the image would also mean that its keyboard focus was lost. Now
focus is restored when the image becomes visible again.
2022-08-15 12:07:40 +02:00
chroma
ea84e14be0 VST Host: Avoid sending unnecessary window size messages to non-DPI-aware plugins
Fixes an issue on Windows that caused superfluous HWND messages on DPI aware plugins that resulted in dismissing focused components.
2022-08-11 18:13:27 +01:00
reuk
603c98c9d1
Android: Fix crash on startup for devices with API level < 23 2022-08-11 11:49:13 +01:00
Tom Poole
61fd8827e1 macOS/iOS: Fix a scaled multiple-rects drawing issue 2022-08-05 13:27:32 +01:00