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

533 commits

Author SHA1 Message Date
ed
69d4e0186f Update code to use new AudioData interleaving/deinterleaving API 2021-10-06 16:44:51 +01:00
ed
3e606cc378 Update code to use new AudioData interleaving/deinterleaving helper methods 2021-10-05 17:30:13 +01:00
ed
291f88abb2 macOS/iOS: Suppress and fix unguarded availability warnings 2021-09-29 16:13:27 +01:00
reuk
22f0f2b433
AudioDeviceManager: Refactor to avoid repetition 2021-09-28 11:31:47 +01:00
reuk
b0bd1c4f63
SingleThreadedAbstractFifo: Move into juce_core 2021-09-27 13:15:39 +01:00
reuk
9199fa3c51
Warnings: Avoid triggering missing-prototypes warnings on macOS/iOS 2021-09-23 10:28:47 +01:00
reuk
fd87195941
iOS Audio: Allow specifying a fixed set of preferred sample rates
By defining JUCE_IOS_AUDIO_EXPLICIT_SAMPLERATES, the iOS audio device
will always use the requested samplerates instead of querying the
current audio device for the samplerates it supports. This is useful
because certain hardware (such as the Focusrite iTrack Dock) takes a
long time to set new samplerates, which can end up freezing the main
thread for significant lengths of time.

This approach is inspired by the AUM app for iOS, which appears to
provide a fixed list of "allowed" samplerates, rather than querying the
device for its allowed samplerates.
2021-09-22 10:23:04 +01:00
reuk
3f5862cf17
WASAPI: Tidy up internal buffering mechanism 2021-09-22 10:23:04 +01:00
ed
a6df818255 Android: Update to Oboe release 1.6.1 2021-08-11 11:50:04 +01:00
ed
cffb544941 UMP: Remove juce_audio_devices dependency 2021-07-27 12:32:22 +01:00
reuk
3c68581567
Use jassertquiet where possible 2021-07-23 10:58:44 +01:00
reuk
48659d6e9b
MIDI: Avoid data races in Linux MidiInput 2021-07-15 09:59:08 +01:00
ed
0c89469ab6 CoreAudio: Call AudioDeviceStop() on IO thread when stopping audio devices
When AudioDeviceStop() is called from a thread other than the IO thread there are no guarantees about the IOProc being called before the thread actually terminates. Moving this call to the audioCallback() method ensures that the device will be stopped immediately and we can remove a check that was taking a few seconds to close devices.
2021-06-29 16:14:48 +01:00
reuk
a70488e38e MacOS: Fix API deprecations in macOS 12.0 and iOS 15.0 2021-06-10 15:20:39 +01:00
ed
7d349fd68f CoreAudio: Pass AudioDeviceIOProcID to AudioDeviceStart()/AudioDeviceStop() functions 2021-06-10 14:17:16 +01:00
reuk
7ac6911ccc
Windows: Fix clang/gnu compiler warnings 2021-06-03 17:30:44 +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
900282ccf3
MinGW: Fix warnings and errors emitted when building VST3 plugins 2021-05-13 12:10:06 +01:00
ed
d6ac6b543b Removed some unnecessary angled brackets 2021-04-27 15:56:01 +01:00
ed
8aa84abd7c Oboe: Updated to release 1.5.1 2021-04-27 11:56:35 +01:00
ed
0fc1ede50f Used MemoryBlock::isEmpty() in a few places 2021-04-22 18:22:06 +01:00
ed
b5c0c75a5b ASIO: Read buffer size after setting device sample rate 2021-04-20 17:24:49 +01:00
ed
27af34af8b ASIO: Support larger buffer sizes 2021-04-20 17:24:49 +01:00
ed
d30c0502bf ASIO: Update buffer size list when opening a device
This fixes a bug where a new buffer size set from the device control panel may not be added to the bufferSizes array
2021-04-19 09:54:02 +01:00
Tom Poole
765eafb1eb Fixed some file permissions 2021-03-31 10:12:59 +01:00
ed
52fbaa6042 Linux: Stop MidiInputThread before freeing handle in AlsaClient destructor
When immediately closing a MidiInput after starting, the ALSA handle may be closed whilst the MidiInputThread is running and it polls a destroyed handle
2021-03-29 15:41:16 +01:00
ed
d8004e2e2b Docs: Fixed a few switched "namespace juce" comments 2021-03-29 09:22:01 +01:00
Tom Poole
a9ad07a945 Use RAII for CFTypes 2021-03-25 15:48:35 +00:00
reuk
69b630a2c0 CoreMidi: Use RAII to avoid potential leaks of MIDI ports/endpoints 2021-02-23 18:05:06 +00:00
ed
46f5b126d5 Tidied up some template statement whitespace 2021-01-29 15:40:12 +00:00
ed
af69be5346 Windows: Tidied up the usage of the JUCE_COMCALL, JUCE_COMCLASS, and JUCE_IUNKNOWNCLASS macros 2021-01-29 15:40:12 +00:00
ed
3754cadf55 Windows: Removed WinRT::ComSmartPtr and use existing class instead 2021-01-28 11:26:13 +00:00
ed
f2df19f4fe Android: Integrated Oboe fix from google/oboe@893feef 2021-01-28 11:22:39 +00:00
ed
1000c4ce2e Android: Fixed a warning in the Oboe code with -Wswitch-enum enabled 2021-01-07 11:16:59 +00:00
ed
757417a47a Android: Updated to Oboe 1.5 2021-01-07 09:59:42 +00:00
reuk
9032f589eb
CoreMIDI: Enable support for new API 2020-12-03 12:30:22 +00:00
ed
4de5726775 Android: Don't assert on device type 25 which seems to be valid when debugging from Android Studio (although undocumented) 2020-11-25 17:40:03 +00:00
ed
270e056e40 CoreAudio: Fixed a data race on isWaitingForInput in DeviceWrapper 2020-11-03 17:07:47 +00:00
ed
99bce8a3a8 Android: Fixed large buffer sizes on some devices
Requesting a callback when opening an Oboe device is required on some devices to get a FAST stream, so pass a dummy callback object to the temporary stream used when querying the device buffer size in order to get the best available.
2020-10-23 14:17:49 +01:00
ed
32b9b1e9db CoreAudio: Prevent audio glitches before microphone permission granted
If input channels have been requested but no data is being sent from CoreAudio (usually due to permissions not being granted yet) then avoid waiting unnecessarily in AudioIODeviceCombiner::readInput() which could previously cause audio glitches. Also changed the wait time to use an exponential backoff.
2020-10-23 10:53:12 +01:00
ed
22f0e26451 Android: Use performance mode from stream directly when logging Oboe stream details 2020-10-21 17:03:17 +01:00
reuk
0fe90b8d3f ALSA: Fix an issue where the MidiInput/Output Pimpl classes would be undefined when JUCE_ALSA=0 2020-10-06 11:17:09 -07:00
ed
e28e22989e WASAPI: Find a supported format before querying for supported sample rates when opening an exclusive mode stream 2020-10-06 15:40:04 +01:00
reuk
c3849041ae Midi: Use proper PImpl idiom in MidiInput and MidiOutput 2020-10-02 14:49:49 +01:00
reuk
c897a4f2cb Linux: Fix some clang 10 warnings 2020-09-24 12:52:45 +01:00
reuk
a32b3e7f23 ASIO: Fix unused data member warning 2020-09-24 12:47:23 +01:00
ed
54164fac3f Windows: Added ComSmartPtr::getInterface() and used it in a few places to simplify some COM code 2020-09-07 16:01:48 +01:00
ed
99b3d85fcc Windows: Always use requested sample rate when opening a WASAPI device with sample rate conversion enabled 2020-09-07 15:55:18 +01: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
b01e9276ba Windows: Added support for sample rate conversion between input/output in the WASAPI audio device 2020-09-04 16:50:20 +01:00