Anonymous Maarten
248cb3ca9c
Fix -Wdeclaration-after-statement warnings
2024-08-14 10:35:43 +00:00
Ryan C. Gordon
510f413bb8
coreaudio: simplify memory leak fix.
...
I _did_ appreciate the explanation, but it doesn't have to live in the
source code; also we can just release `devuid` and then check for error with
the usual macro, since SDL is done with it either way at this point.
(cherry picked from commit 17af09f3a9 )
2024-06-15 11:47:27 -04:00
obeecodes
a9da8dd22d
Addressed memory leak in SDL_coreaudio.m
...
(cherry picked from commit 3b5dce10c4 )
2024-06-15 08:09:14 -07:00
Sam Lantinga
b6e97d9ff0
Fixed Xcode warnings
2024-01-13 08:15:41 -08:00
Sam Lantinga
0fc3574464
Updated copyright for 2024
2024-01-01 13:19:49 -08:00
Anonymous Maarten
d81d986858
cmake: fix uses of undefined macro identifiers (-Wundef)
2023-11-17 03:06:26 +00:00
Ryan C. Gordon
9d7feaaf9e
coreaudio: If paused, clear any pending stream data.
...
This makes sure stuff that was still pending for conversion/resampling doesn't
pop in later when the device is unpaused again.
Fixes #8485 .
2023-11-06 09:57:00 -05:00
Ryan C. Gordon
86786ed544
coreaudio: Flush/stop the AudioQueue before disposing of it.
...
Otherwise, a CoreAudio thread lingers forever, and coreaudiod eats CPU
until the SDL process terminates.
Fixes #7689 .
2023-05-08 14:25:01 -04:00
Sam Lantinga
0d76380042
Code style: changed "sizeof foo" to "sizeof(foo)" (thanks @sezero!)
...
(cherry picked from commit c6443d86c9 )
2023-03-09 15:23:59 -08:00
Sam Lantinga
0479df53ca
Updated copyright for 2023
2023-01-09 09:48:21 -08:00
Pierre Wendling
d0bbfdbfb8
Clang-Tidy fixes ( #6725 )
...
(cherry picked from commit 3c501b963d )
2022-12-01 13:08:50 -08:00
Sam Lantinga
b8d85c6939
Update for SDL3 coding style ( #6717 )
...
I updated .clang-format and ran clang-format 14 over the src and test directories to standardize the code base.
In general I let clang-format have it's way, and added markup to prevent formatting of code that would break or be completely unreadable if formatted.
The script I ran for the src directory is added as build-scripts/clang-format-src.sh
This fixes:
#6592
#6593
#6594
(cherry picked from commit 5750bcb174 )
2022-11-30 12:57:41 -08:00
Ryan C. Gordon
b0dc6709b9
coreaudio: Don't use deprecated kAudioObjectPropertyElementMaster symbol.
...
Fixes #6449 .
2022-11-07 14:26:48 -05:00
Ryan C. Gordon
e7ab581d79
coreaudio: Dispose of AudioQueue before waiting on the thread.
...
Otherwise the thread might block for a long time (more than 10 seconds!).
It's not clear to me why this happens, or why its safe to do this with a
resource that's still in use, but we have, until recently, always
disposed of the AudioQueue first, so changing back is probably okay.
Also changed the disposal to allow in-flight buffers to reach hardware;
otherwise you lose the last little bit of audio that's already been queued
but not played, which you can hear clearly in the loopwave test program.
Fixes #6377 .
2022-10-19 09:14:16 -04:00
daniel
e41942e814
fix compilation error SDL_coreaudio mixing declarations and code
2022-10-04 21:04:45 -07:00
Ryan C. Gordon
e6640ef2d4
coreaudio: Possibly fixed another shutdown race condition.
...
Reference Issue #6159 .
2022-09-30 14:53:49 -04:00
Jarod Hillman
40893821f2
coreaudio: Add support for SDL_GetDefaultAudioInfo ( #6277 )
...
Co-authored-by: Ethan Lee <flibitijibibo@gmail.com >
Co-authored-by: Ozkan Sezer <sezeroz@gmail.com >
2022-09-29 10:33:07 -04:00
Ryan C. Gordon
f6565c329b
coreaudio: Remove redundant variable.
2022-09-28 09:27:45 -04:00
Ryan C. Gordon
411582c710
coreaudio: Don't crash on shutdown in a race condition.
...
Fixed #6159 .
2022-09-28 09:22:17 -04:00
Ethan Lee
90b86b132a
audio: Handle non-power-of-two spec.samples when unsupported
...
Fixes #3685
2022-07-17 10:36:15 -04:00
Pierre Wendling
6c536afdb7
Fix C89 declaration for macOS modules.
...
Since Clang 14, `-Wdeclaration-after-statement` is enforced on every
standard.
2022-06-27 15:19:40 -07:00
Ryan C. Gordon
dc62fec5e9
audio: Fix locking in backends that manage their own callback threads.
...
Otherwise you might get a race where an app pauses the device, but
the audio callback still manages to run after the pause is in place.
2022-05-20 21:08:29 -04:00
pionere
a70bb259c7
drop handle parameter of OpenDevice
2022-01-28 20:40:19 -05:00
pionere
47ddb04e17
cleanup/sync the main loop of *_OpenDevice functions to pick audio format II.
2022-01-28 20:40:19 -05:00
pionere
2eafe4340c
cleanup/sync the main loop of *_OpenDevice functions to pick audio format
2022-01-28 20:40:19 -05:00
pionere
1043dd8c0d
adjust handling of iscapture
...
- drop iscapture parameter of OpenDevice
- use SDL_bool for iscapture
2022-01-28 20:40:19 -05:00
pionere
60deadba59
re-use return value of SDL_SetError/WIN_SetErrorFromHRESULT/SDL_OutOfMemory
2022-01-28 20:40:19 -05:00
pionere
0dda8a7f4c
cleanup init functions of audio
...
- use SDL_bool if possible
- assume NULL/SDL_FALSE filled impl
- skip zfill of current_audio at the beginning of SDL_AudioInit (done before the init() calls)
2022-01-28 20:40:19 -05:00
Sam Lantinga
120c76c84b
Updated copyright for 2022
2022-01-03 09:40:21 -08:00
Per Nyblom
86ee383fdd
Removed duplicate SDL_AtomicGet()
2021-05-28 12:29:54 -04:00
Ethan Lee
67e8522d31
Add SDL_GetAudioDeviceSpec.
...
This API is supported by pipewire, pulseaudio, coreaudio, wasapi, and disk.
2021-03-05 12:03:07 -08:00
Sam Lantinga
9130f7c377
Updated copyright for 2021
2021-01-02 10:25:38 -08:00
Sam Lantinga
cb36189692
Fixed bug 5235 - All internal sources should include SDL_assert.h
...
Ryan C. Gordon
We should really stick this in SDL_internal.h or something so it's always available.
2020-12-09 07:16:22 -08:00
Ryan C. Gordon
1b8dee7caf
coreaudio: Remove unnecessary include of CoreServices.h
2020-10-31 11:32:40 -04:00
Sam Lantinga
ff53521bc6
Fixed Bluetooth audio output on Apple TV
2020-06-04 12:26:57 -07:00
Sam Lantinga
a990a34ac4
Cleanly switch between audio recording, playback, and both, on iOS
2020-04-14 22:26:02 -07:00
Sam Lantinga
2ae1c0f5d0
Allow Bluetooth headphones for iOS playandrecord mode
2020-04-14 09:52:27 -07:00
Sam Lantinga
f3e609679d
Fixed setting the "playandrecord" audio hint on Apple TV
...
The Apple TV doesn't have record capability by default, so activating the audio session with AVAudioSessionCategoryPlayAndRecord fails.
2020-04-02 12:27:29 -07:00
Ryan C. Gordon
55b4f18e1a
coreaudio: The default SDL audio device now tracks the system output default.
...
So if you go into System Preferences on a MacBook and toggle between a pair of
connected bluetooth headphones and built-in internal speakers, SDL will
switch the device it is playing sound through, to match this setting, on the
fly.
Likewise if the default output device is a USB thing and is unplugged; as the
default device changes at the system level, SDL will pick this up and carry
on with the new default. This is different from our unplug detection for
specific devices, as in those cases we want to send the app a disconnect
notification, instead of migrating transparently as we now do for default
devices.
Note that this should also work for capture devices; if the device changes,
SDL will start recording from the new default.
Fixes Bugzilla #4851 .
2020-03-29 01:54:00 -04:00
Sam Lantinga
abdc5cbf24
Allow background music to play in the "play and record" case on iOS
2020-03-26 19:30:17 -07:00
Sam Lantinga
e3b0713e40
Don't call setPreferredOutputNumberOfChannels on iOS, it breaks audio output
2020-02-24 12:07:18 -08:00
Sam Lantinga
2c9871a4a8
Fixed surround sound support on Apple TV
2020-02-24 10:25:57 -08:00
Sam Lantinga
f4e23553d7
Fixed audio not coming out of the phone speakers while recording on iOS
2020-02-14 15:19:34 -08:00
Sam Lantinga
922b3dc3e7
Fixed re-setting the audio session category when closing an audio device
2020-02-14 14:18:12 -08:00
Sam Lantinga
a8780c6a28
Updated copyright date for 2020
2020-01-16 20:49:25 -08:00
Ryan C. Gordon
693755f0b2
coreaudio: Apple doesn't support U16 data, so convert in that case.
2019-09-25 15:07:07 -04:00
Sam Lantinga
455944c870
Fixed whitespace
2019-08-22 16:12:16 -07:00
Sam Lantinga
b521df66c3
[SDL][IOS] Audio fix - applies stream to sound data when resampling or reformatting is required.
2019-08-22 16:09:42 -07:00
Sam Lantinga
abcfe80480
[SDL] iOS fix bug with audio interrupted by a phone call not restoring.
2019-05-14 14:20:54 -07:00
Ryan C. Gordon
2fbfe8b912
coreaudio: Set audio callback thread priority.
...
Fixes Bugzilla #4155 .
2019-03-25 12:59:30 -04:00