1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-09 23:34:20 +00:00
Commit graph

993 commits

Author SHA1 Message Date
Tom Poole
acc4b9c6d0 Bump version number to 8.0.12 2025-12-16 08:48:49 +00:00
reuk
caac369b45
MIDI: Remove separating ':' between endpoint name and group name 2025-12-08 14:15:50 +00:00
Tom Poole
ae3b811c50 Bump version number to 8.0.11 2025-12-01 10:21:13 +00:00
attila
fd1c29e56b WASAPI: Fix bug where an external device sample rate change could permanently stop audio processing 2025-11-25 20:23:26 +01:00
reuk
e465b71188
Docs: Update language to be more diplomatic 2025-11-18 15:47:42 +00:00
reuk
83e5264c86
Formatting: Remove double-dots from comments and other strings 2025-11-18 15:47:42 +00:00
reuk
e890736965
AudioDeviceManager: Improve initialise() parameter naming 2025-11-17 19:33:54 +00:00
reuk
b1ec95db6e
Revert "AudioDeviceManager: Handle loading of XML with missing fields more gracefully"
This reverts commit 3c1012baeb.

This change caused the AudioDeviceManager to open a fallback device if
the device name was empty, the requested number of channels was
positive, and selectDefaultDeviceOnFailure was true.

The new behaviour conflicted with the documented behaviour of
initialise(). The number of input/output channels is to be treated as a
maximum, rather than a preferred count. If a positive channelsNeeded is
requested but the device name is empty, a default device should not be
opened since the actual number of channels (0) is lower than the maximum
specified number.
2025-11-17 19:33:54 +00:00
reuk
8b0ae502ff
CoreMidi: Fix timestamps for incoming MIDI messages
Previously, the elapsed time in nanoseconds was multiplied by 1e6
instead of 1e-6, leading to incorrect timestamps on incoming messages.

This change also DRYs the code handling time conversions between the
native/host time and JUCE timestamps (milliseconds in double format).
2025-11-03 18:30:24 +00:00
reuk
89fc608a34
ASIO: Bundle required headers from SDK 2025-10-21 17:32:36 +01:00
Tom Poole
81ca9e63ef Linux MIDI: Fix a compiler warning 2025-09-30 11:39:22 +01:00
reuk
6c627b7b25
UMPEndpoint: Fix -Wimplicit-int-enum-cast warning under clang 21 2025-09-25 18:38:24 +01:00
Anthony Nicholls
d0aa6d0486 iOS and macOS: Use consistent capitalisation with @available syntax 2025-09-25 14:56:34 +01:00
Anthony Nicholls
e68627c9ed Smart Pointers: Add a new enum for indicating if a smart point should increment a reference count or not 2025-09-25 14:56:34 +01:00
reuk
a9a99a0a08
CoreMidi: Correctly apply protocol conversions for incoming messages 2025-09-24 13:12:19 +01:00
reuk
fa1b4b07ef
CoreMidi: Respect input protocol request 2025-09-24 13:00:55 +01:00
reuk
774819540e
CoreMidi: Fetch detailed error information on supported platforms 2025-09-17 12:50:07 +01:00
reuk
883d3cdce3
UMP: Fix typos and add detail to docs 2025-09-17 12:50:07 +01:00
reuk
c1c9c5c066
UMP: Move StaticDeviceInfo definition to a new header file 2025-09-17 12:50:07 +01:00
reuk
a99bff1e1d
JACK: Fix build failure on Linux when JUCE_JACK=1 2025-09-17 12:50:07 +01:00
reuk
ba7593df26
MIDI: Add support for MIDI 2.0 I/O using Universal MIDI Packets
Includes support for communication with USB and Bluetooth devices, as well as virtual devices.
2025-09-17 12:50:07 +01:00
reuk
3636f2c666
WaitFreeListeners: Add new ListenerList implementation for listeners that must be called in a realtime context 2025-09-17 12:50:06 +01:00
reuk
71b1d001de
BluetoothMidiDevicePairingDialogue: Improve formatting 2025-09-17 12:50:06 +01:00
reuk
9a7e70ced3
MIDI: Get rid of InputHandler types that are no longer required 2025-09-17 12:50:06 +01:00
reuk
7dc906fa1b
MIDI: Update UMPDispatcher to allow dispatching on a specific group 2025-09-17 12:50:06 +01:00
reuk
fa1f8ed54e
MIDI: Switch BytestreamMidiView for BytesOnGroup in a few places 2025-09-17 12:50:06 +01:00
reuk
835216c581
MIDI: Use Spans instead of pointer pairs in more places 2025-09-17 12:50:06 +01:00
reuk
9a7ac1f743
Bela: Drop support 2025-09-17 12:50:05 +01:00
reuk
8ce1f19bf0
JNI: Tidying 2025-09-17 12:50:05 +01:00
reuk
99d8b9b5e1
iOS: Fix sample rate detection on iOS 26 2025-09-16 22:46:56 +01:00
Tom Poole
360dfe5f3d Bump version number to 8.0.10 2025-09-15 09:30:11 +01:00
Tom Poole
cb9ec7e38f Bump version number to 8.0.9 2025-09-01 14:44:25 +01:00
reuk
9be03bc99e
Android Oboe: Reopen streams correctly after device disconnection
Even if the output stream is the only one receiving callbacks, it's
possible that the input device got disconnected, in which case we'll
still need to recreate both streams.
2025-08-27 16:57:17 +01:00
Anthony Nicholls
36d07a6ce3 Docs: Replace doxygen preprocessor conditionals with @cond and @endconds 2025-07-21 18:11:43 +02:00
reuk
37bb7a6c30
iOS: Fix deprecation warning 2025-06-10 20:16:02 +01:00
reuk
dcf0bf1c2a
WASAPI: Fix bug where attempting to clear output buffers had no effect 2025-06-03 16:12:00 +01:00
reuk
4045b0f8f6
WASAPI: Attempt to avoid potential races on state flags 2025-06-03 16:11:59 +01:00
reuk
86e0248f79
WASAPI: Use more early returns 2025-06-03 16:11:59 +01:00
reuk
3c1012baeb
AudioDeviceManager: Handle loading of XML with missing fields more gracefully 2025-06-03 16:08:56 +01:00
reuk
f6df3e3ce1
CoreAudio: Respect buffer size passed to audio callback
We now query the incoming buffers to see how many samples are available.

If the callback's buffers will fit into our preallocated buffer (i.e. the
length in samples is smaller or equal to the preallocated buffer), then
we perform an audio callback with the provided data, even if the number
of samples is smaller than expected.

If the callback's buffers are larger than expected, we split the
incoming buffer into chunks that are no larger than the prepared
buffer-size.
2025-06-03 16:08:20 +01:00
reuk
ff99341179
CoreAudio: Replace HeapBlock with vector to retain allocation size 2025-06-03 16:08:20 +01:00
Tom Poole
b0d569c74b Bump version number to 8.0.8 2025-06-02 09:24:54 +01:00
reuk
457de394e0
iOS Audio: Remove buffer size assertion
This assertion is no longer relevant now that the AudioDeviceManager
enforces the maximum buffer size.
2025-05-27 14:39:27 +01:00
reuk
b4f71ab6db
AudioDeviceManager: Tidy up CallbackMaxSizeEnforcer 2025-05-27 14:39:25 +01:00
reuk
ee37564083
AudioDeviceManager: Move CallbackMaxSizeEnforcer from StandaloneFilterWindow 2025-05-27 14:39:25 +01:00
Tom Poole
99b752a1d2 Bump version number to 8.0.7 2025-04-08 10:51:07 +01:00
reuk
51be8b9332
Android: Remove unnecessary SDK version checks 2025-03-19 11:06:17 +00:00
Anthony Nicholls
f985cf0c31 iOS: Restore sample rate after iterating available sample rates 2025-02-27 14:50:53 +00:00
Anthony Nicholls
76e498f495 AudioDeviceManager: Skip validation when there is only one device 2025-02-27 14:50:53 +00:00
Anthony Nicholls
a433e4dce0 iOS: Set target settings before updating hardware info to reduce the number of device changes 2025-02-27 14:50:53 +00:00