SDL/src/audio
Ryan C. Gordon 32cc92dceb
pipewire: i/o callbacks should avoid higher-level iteration during device open.
Sometimes these callbacks will fire while we're still waiting on state to
settle down in PIPEWIRE_OpenDevice, which means we're holding the device lock,
but then the i/o callback will fire from a background thread and also try to
grab the device lock, but can't, because PIPEWIRE_OpenDevice is holding it and
waiting for this i/o callback to finish...hence, a deadlock.

So now, if the device is still opening, output callbacks will write silence
and input callbacks will just flush the buffer, without calling the main
iterate function, and thus avoid obtaining the lock.
2024-11-12 15:18:41 -05:00
..
aaudio Fixed audio dropouts when plenty of audio is queued on Android 2024-11-07 19:29:51 -08:00
alsa Rename SDL_SetThreadPriority() to SDL_SetCurrentThreadPriority() 2024-10-04 08:57:03 -07:00
coreaudio Renamed atomic functions to match SDL 3.0 naming convention 2024-09-17 08:53:27 -07:00
directsound loadso: library handles are now SDL_SharedObject* instead of void*. 2024-10-01 12:16:10 -04:00
disk Use SDL_bool instead an int return code in the SDL API 2024-08-27 10:31:46 -07:00
dsp Renamed atomic functions to match SDL 3.0 naming convention 2024-09-17 08:53:27 -07:00
dummy Fix typos (thanks @qndel!) 2024-09-18 08:18:26 -07:00
emscripten audio: fix incorrect dynCall in Emscripten audio. 2024-10-18 23:53:40 -04:00
haiku Use SDL_bool instead an int return code in the SDL API 2024-08-27 10:31:46 -07:00
jack loadso: library handles are now SDL_SharedObject* instead of void*. 2024-10-01 12:16:10 -04:00
n3ds Renamed atomic functions to match SDL 3.0 naming convention 2024-09-17 08:53:27 -07:00
netbsd Renamed atomic functions to match SDL 3.0 naming convention 2024-09-17 08:53:27 -07:00
openslES Removed SDL_bool in favor of plain bool 2024-09-18 08:32:30 -07:00
pipewire pipewire: i/o callbacks should avoid higher-level iteration during device open. 2024-11-12 15:18:41 -05:00
ps2 Use SDL_bool instead an int return code in the SDL API 2024-08-27 10:31:46 -07:00
psp Use SDL_bool instead an int return code in the SDL API 2024-08-27 10:31:46 -07:00
pulseaudio Rename SDL_SetThreadPriority() to SDL_SetCurrentThreadPriority() 2024-10-04 08:57:03 -07:00
qnx Renamed atomic functions to match SDL 3.0 naming convention 2024-09-17 08:53:27 -07:00
sndio loadso: library handles are now SDL_SharedObject* instead of void*. 2024-10-01 12:16:10 -04:00
vita Renamed atomic functions to match SDL 3.0 naming convention 2024-09-17 08:53:27 -07:00
wasapi Rename SDL_SetThreadPriority() to SDL_SetCurrentThreadPriority() 2024-10-04 08:57:03 -07:00
SDL_audio.c Improve support for private platforms (#11220) 2024-10-15 18:02:07 -04:00
SDL_audio_c.h Use C++ style comments consistently in SDL source code 2024-08-22 13:30:02 -07:00
SDL_audio_channel_converters.h Use C++ style comments consistently in SDL source code 2024-08-22 13:30:02 -07:00
SDL_audiocvt.c audio: Make SDL_GetAudioStreamProperties() thread safe. 2024-10-24 14:37:23 -04:00
SDL_audiodev.c Re-added SDL_getenv() as a thread-safe getenv() implementation 2024-09-15 09:37:04 -07:00
SDL_audiodev_c.h Use C99 bool internally in SDL 2024-08-22 13:30:02 -07:00
SDL_audioqueue.c Additional cleanup exposed by building with a C++ compiler 2024-08-27 10:31:46 -07:00
SDL_audioqueue.h Use SDL_bool instead an int return code in the SDL API 2024-08-27 10:31:46 -07:00
SDL_audioresample.c Added thread-safe initialization/cleanup support 2024-09-17 08:53:27 -07:00
SDL_audioresample.h Updated copyright for 2024 2024-01-01 13:15:26 -08:00
SDL_audiotypecvt.c Use C99 bool internally in SDL 2024-08-22 13:30:02 -07:00
SDL_mixer.c Removed SDL_bool in favor of plain bool 2024-09-18 08:32:30 -07:00
SDL_sysaudio.h Improve support for private platforms (#11220) 2024-10-15 18:02:07 -04:00
SDL_wave.c Set error for NULL SDL_IOStream in SDL_LoadWAV_IO() 2024-10-14 20:07:03 -07:00
SDL_wave.h Use C++ style comments consistently in SDL source code 2024-08-22 13:30:02 -07:00