Go to file
Ryan C. Gordon 48e71ae87b
wasapi: Deal with HDMI or DisplayPort-based audio devices.
They can vanish for UP TO EIGHT SECONDS...!

This is for devices that connect to HDMI/DisplayPort/etc, where it
presumably has to wait for a display to get up and running before it
can play audio through it, so one can see the audio device fail when
changing display modes, or the system returning from sleep. Since this
can be triggered by a game changing video resolutions at startup (either
before or after opening the audio device!), it's important to deal with.

In normal conditions, it shouldn't take this long to open or recover an
audio device, but this is better than unexpectedly losing the device
in this situation.

Fixes #7044.
Fixes #5571.
2023-05-26 19:15:28 -04:00
.github ci: test with (old) Intel compiler + (new) oneAPI compiler 2023-03-27 06:13:28 +00:00
VisualC cmake: use compatible interface properties to disallow linking to a different version of SDL 2023-03-03 23:41:18 +01:00
VisualC-GDK Updated copyright for 2023 2023-01-09 09:48:21 -08:00
VisualC-WinRT Move SDL_mslibc.c into the source file list 2022-11-13 11:09:38 -08:00
Xcode The macOS minimum deployment target is now 10.11 2023-04-05 11:40:50 -07:00
Xcode-iOS/Demos Cleanup add brace (#6545) 2022-11-28 12:33:03 -08:00
acinclude autotools: revised and silenced esound detection a bit. 2022-09-24 20:01:04 +03:00
android-project Document the Android SDK versions checked in Java code 2023-05-23 08:45:43 -07:00
android-project-ant Added the old ant Android build project structure 2017-10-28 12:11:25 -07:00
build-scripts wikiheaders.pl: make it work with older perl versions, e.g. 5.10. 2023-03-24 11:56:40 +03:00
cmake cmake: really fix detection of pthread_setname_np() on Apple platforms. 2023-02-13 11:56:10 +03:00
docs Made the Android documentation more clear and understandable (#7535) 2023-03-25 15:11:51 -07:00
include fix mingw build failures in CI with clang-tidy. 2023-05-26 23:55:04 +03:00
mingw/pkg-support/cmake cmake: else() does not need an argument 2022-10-20 13:29:35 +02:00
src wasapi: Deal with HDMI or DisplayPort-based audio devices. 2023-05-26 19:15:28 -04:00
test Added support for printing wide strings using "%ls" syntax 2023-05-26 14:59:30 -07:00
visualtest Remove unneeded semicolon 2022-11-17 10:43:45 +01:00
wayland-protocols Support wayland fractional scale protocol 2022-11-29 16:37:02 -05:00
.clang-format Commented out syntax that causes Visual Studio 2019 to complain on every edit 2022-12-02 00:43:46 -08:00
.editorconfig editorconfig: remove trailing whitespace in source code 2022-12-26 10:34:45 -08:00
.gitignore cmake: use FindALSA.cmake to find ALSA library 2022-12-11 23:23:45 +01:00
.wikiheaders-options wikiheaders: Bridge README files in the docs directory to wiki. 2023-02-28 11:46:46 -05:00
Android.mk android.mk: LOCAL_EXPORT_C_INCLUDES does not need to add include subfolder 2022-11-22 09:41:23 -08:00
BUGS.txt Cleaned up a few more Bugzilla mentions. 2021-02-12 14:46:49 -05:00
CMakeLists.txt Disable unused local typedefs warning 2023-05-24 04:45:40 +03:00
CREDITS.txt Fixed crash if initialization of EGL failed but was tried again later. 2015-06-21 17:33:46 +02:00
INSTALL.txt INSTALL.txt: Say "macOS" instead of "Mac OS X" in modern times. 2022-03-15 13:07:55 -04:00
LICENSE.txt Updated copyright for 2023 2023-01-09 09:48:21 -08:00
Makefile.in added missing FGREP to Makefile.in. fixed syntax. regenerated configure. 2022-11-24 17:00:20 +03:00
Makefile.minimal Split up CFLAGS construction so it can be overridden 2023-03-29 07:26:34 -07:00
Makefile.os2 Updated to version 2.27.0 for development 2022-11-21 16:36:10 -08:00
Makefile.pandora more fixes to standalone makefiles. 2021-11-13 21:56:20 +03:00
Makefile.w32 Updated to version 2.27.0 for development 2022-11-21 16:36:10 -08:00
README-SDL.txt More HTTPS changes in the documentation. 2017-02-16 16:52:03 -05:00
README.md Update and rename README.txt to README.md 2021-03-20 18:46:37 -04:00
SDL2.spec.in license: Fixed references to COPYING.txt that are now LICENSE.txt. 2021-02-18 11:07:26 -05:00
SDL2Config.cmake.in cmake: use FindALSA.cmake to find ALSA library 2022-12-11 23:23:45 +01:00
TODO.txt Fixed up legacy MoinMoin URLs at wiki.libsdl.org 2021-04-01 12:20:33 -04:00
WhatsNew.txt Added the hint SDL_HINT_ENABLE_SCREEN_KEYBOARD to control whether the on-screen keyboard should be shown when text input is active 2023-05-20 11:09:36 -07:00
autogen.sh Simplified autogen.sh, thanks to @smcv for the tip 2022-05-05 11:54:24 -07:00
cmake_uninstall.cmake.in Fixed bug 3867 - Can't find install_manifest.txt when running 'uninstall' target 2017-10-12 08:44:45 -07:00
configure Disable unused local typedefs warning 2023-05-24 04:45:40 +03:00
configure.ac Disable unused local typedefs warning 2023-05-24 04:45:40 +03:00
sdl2-config-version.cmake.in Add documentation to autotoo'ls sdl2-config-version.cmake.in 2022-05-31 00:10:55 +02:00
sdl2-config.cmake.in cmake: allow users of sdl2-config.cmake to not add -mwindows to the link options 2023-04-18 14:10:12 -04:00
sdl2-config.in Revert "sdl2-config.in: Deprecate sdl2-config" 2022-11-18 06:53:13 -08:00
sdl2.m4 Revert "sdl2.m4: Deprecate AM_PATH_SDL2 in favour of PKG_CHECK_MODULES" 2022-11-18 06:52:12 -08:00
sdl2.pc.in cmake: use FindALSA.cmake to find ALSA library 2022-12-11 23:23:45 +01:00

README.md

Simple DirectMedia Layer (SDL) Version 2.0

https://www.libsdl.org/

Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D. It is used by video playback software, emulators, and popular games including Valve's award winning catalog and many Humble Bundle games.

More extensive documentation is available in the docs directory, starting with README.md

Enjoy!

Sam Lantinga (slouken@libsdl.org)