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

119 commits

Author SHA1 Message Date
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
9a7ac1f743
Bela: Drop support 2025-09-17 12:50:05 +01:00
reuk
3c1012baeb
AudioDeviceManager: Handle loading of XML with missing fields more gracefully 2025-06-03 16:08:56 +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
Anthony Nicholls
76e498f495 AudioDeviceManager: Skip validation when there is only one device 2025-02-27 14:50:53 +00:00
Oliver James
951b02c86d AudioDeviceManager: Always save audioDeviceBufferSize 2024-12-06 12:19:16 +00:00
attila
1f8882dee0 Avoid assertions during AudioDeviceManagerTests 2024-12-04 15:40:21 +00:00
Tom Poole
94d98a2b10 Update licensing information 2024-04-16 11:39:35 +01:00
Tom Poole
6bf9bb9a2e Add final specifiers in implementation files 2023-10-10 16:12:38 +01:00
Tom Poole
4153d59e39 Formatting 2023-10-02 15:42:20 +01:00
Oliver James
7d9cdd3016 Audio: Add AudioWorkgroup support
This allows real-time threads to join an audio workgroup on Apple platforms.
2023-08-30 12:03:47 +01:00
reuk
26a872ba9f
AudioDeviceManager: Send changeNotification when MIDI devices change
This patch also updates the MidiDemo to automatically refresh the device
lists when the set of available devices changes.
2023-01-25 17:07:24 +00:00
attila
c97864d7f3 Remove AudioIODeviceCallback::audioDeviceIOCallback 2022-09-22 07:50:18 +00:00
attila
f075de78fa AudioIODeviceCallback, AudioBuffer, AudioFormatReader: Use const T* const* for multi-channel data 2022-09-22 07:50:18 +00: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
Oli
2bca60e52c AudioDeviceManager: Fix MidiOutput dangling pointer
Changed the lifetime of the default MIDI oputput.
Removed the need for Timer workaround in AudioDeviceSelectorComponent.
2022-05-10 16:32:36 +01:00
reuk
cfa289d943
AudioProcessor: Allow querying of the host timestamp in processBlock 2022-04-22 14:18:49 +01:00
Tom Poole
dea3fe60e4 Update copyright banners 2022-04-04 12:36:32 +01:00
reuk
df206371ff
AudioDeviceManager: Ensure device settings are up to date before notifying callbacks 2022-01-17 10:58:18 +00:00
reuk
2fc254b72e
AudioDeviceManager: Avoid overwriting user-specified devices in initialise unless absolutely necessary
This fixes an issue where specifying an audio device type before calling
initialise could cause a different device to become active, even if the
requested device type had usable devices.

With this change in place, a new device type will only be selected if
the current device type has no devices.
2021-11-24 11:51:12 +00:00
reuk
4011c2e898
AudioDeviceManager: Compute output level after all IO callbacks have run 2021-11-19 16:35:21 +00:00
reuk
58be21d6dc
AudioProcessLoadMeasurer: Allow specifying number of samples per-block 2021-09-28 14:04:11 +01:00
reuk
fb09a97be4
AudioDeviceManager: Fix and test preferredDeviceName lookup 2021-09-28 11:31:47 +01:00
reuk
22f0f2b433
AudioDeviceManager: Refactor to avoid repetition 2021-09-28 11:31:47 +01:00
reuk
34bda5d75b
AudioDeviceManager: Always try to pick an initial device type that has some connected devices 2021-09-28 11:31:47 +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
reuk
4cefb3707c
AudioDeviceManager: Ensure current state is updated correctly when device settings are updated 2021-04-14 14:31:43 +01:00
ed
240089bcbc AudioDeviceManager: Fixed backwards compatibility when passing an empty string to removeMidiInputCallback() 2021-02-18 08:47:42 +00:00
reuk
3baaad8b5b
XmlElement: Update loops to use new iterators 2021-01-28 20:14:11 +00:00
ed
b235b8de09 Updated some old docs 2021-01-06 17:16:52 +00:00
ed
6195a5ab60 Windows: Added support for IAudioClient3 shared stream low latency mode in the WASAPI audio device, removed JUCE_WASAPI_EXCLUSIVE config flag and refactored AudioIODeviceType creation 2020-09-04 16:51:39 +01:00
ed
21e4522891 Ensure that audio device is always stopped before modifying in AudioDeviceManager::setAudioDeviceSetup() 2020-07-21 15:51:15 +01:00
ed
b5214a341e Normalised lambda whitespace 2020-06-05 09:37:56 +01:00
Tom Poole
894e7d2bd2 Updated all license headers 2020-04-23 17:30:39 +01:00
ed
8b4ba1ff25 Fixed an issue in 9fda031 2020-02-14 10:39:23 +00:00
ed
9fda031414 Check input as well as output devices names when checking if current audio device is still available in AudioDeviceManager::audioDeviceListChanged() 2020-02-13 17:04:35 +00:00
ed
859315fe4f Added a removeAudioDeviceType() method to AudioDeviceManager and made the ownership semantics of addAudioDeviceType() clearer 2019-12-18 09:47:37 +00:00
jules
31e82060f1 Removed dependency on libalchemy for Bela support 2019-12-06 14:18:10 +00:00
ed
e4b3cd80a6 Fixed backwards compatibility of AudioDeviceManager::addMidiInputCallback() when passing an empty string 2019-08-15 15:34:02 +01:00
Tom Poole
16dd26649a Fixed some GCC compiler warnings and removed deprecated functions 2019-06-04 16:48:44 +01:00
ed
e26529d5e9 Added identifier-based MIDI input/output methods to AudioDeviceManager and deprecated the old name-based methods 2019-05-22 15:45:15 +01:00
jules
6463529371 Another batch of conversion of methods which returned bare XmlElement* to return unique_ptrs 2019-05-15 11:02:03 +01:00
ed
4fa131f5a7 Delete the current audio device when no inputs or outputs are specified in AudioDeviceManager::setAudioDeviceSetup() and ensure that the AudioDeviceSelectorComponent displays this correctly 2019-04-03 11:55:20 +01:00
ed
e14a183886 Update requested input/output channels whenever AudioDeviceManager::setAudioDeviceSetup() is called 2019-03-06 17:13:54 +00:00
ed
8a66f1f3d3 Don't use default input/output device names when setting up an AudioDeviceManager if no channels have been requested 2019-03-01 13:57:39 +00:00
Tom Poole
7d13b82a10 Fixed a bug attempting to open an audio device with zero channels 2019-02-06 10:38:32 +00:00
Tom Poole
d81ce3ce03 Fixed an issue falling back to an incompatible audio device configuration after a disconnection 2018-12-05 08:38:02 +00:00
Tom Poole
faf7fb1960 Fixed a bug in the AudioDeviceSelectorComponent when selecting zero channels 2018-12-04 14:47:25 +00:00