Simple DirectMedia Layer https://libsdl.org
Find a file
Ryan C. Gordon e6a7121904
audio: Binding an SDL_AudioStream will set missing formats.
It _must_ have the format set for the opposite side from the device (so
playback needs the src format set, and recording needs the dst format set),
since the stream gets mangled by the device thread if not. So if it has never
been set (stream created with NULL audiospec), just set it to match the device.
If the stream is just meant to buffer and not convert, this is desired
behavior, even if it didn't also fix a bug.

Binding the audio stream will always set the device side's format, as usual;
this does not need to be set by the caller at all.

Fixes #13363.

(cherry picked from commit f2ae6503c0)
2025-07-15 06:44:12 -04:00
.github ci: build MSVC release binary on windows-2025 2025-07-12 01:25:08 +02:00
android-project Updated to version 3.2.19 for development 2025-07-14 11:44:22 -07:00
build-scripts wikiheaders: Man pages should escape apostrophe chars. 2025-05-14 11:41:14 -04:00
cmake cmake: Android always needs a native HIDAPI implementation 2025-06-26 15:43:29 -07:00
docs README-macos.md: replace old API calls 2025-07-11 12:08:58 -07:00
examples examples: Use SDL_GetAudioStreamQueued, not SDL_GetAudioStreamAvailable. 2025-02-27 11:46:56 -05:00
include audio: Binding an SDL_AudioStream will set missing formats. 2025-07-15 06:44:12 -04:00
src audio: Binding an SDL_AudioStream will set missing formats. 2025-07-15 06:44:12 -04:00
test Add support for non-constrained and non-grabbing popups 2025-07-11 14:26:51 -04:00
VisualC Cocoa metal layers need their size updated before renderer updates 2025-02-24 15:37:13 -08:00
VisualC-GDK GDK: Handle ProjectDir with space 2025-04-25 15:01:07 -07:00
wayland-protocols wayland: Add color manager protocol support 2025-02-17 11:31:12 -05:00
Xcode Updated to version 3.2.19 for development 2025-07-14 11:44:22 -07:00
.clang-format Add 'wl_list_for_each_safe' to the clang-format macro list 2024-03-14 10:22:23 -04:00
.clang-tidy Fix size of memcpy in SDL_AudioDeviceFormatChangedAlreadyLocked 2023-08-05 14:14:45 -04:00
.editorconfig .editorconfig: Remove excess apostrophe at *.cocci 2024-06-16 09:18:17 -07:00
.gitignore Allow in-tree build 2024-10-30 00:04:17 +01:00
.wikiheaders-options .wikiheaders-options: Removed wikipreamble setting. 2025-01-24 01:53:51 -05:00
Android.mk io: Renamed src/file to src/io 2025-01-16 08:18:40 -05:00
BUGS.txt Added a Discord link to BUGS.txt 2025-01-13 16:42:50 -08:00
CMakeLists.txt Updated to version 3.2.19 for development 2025-07-14 11:44:22 -07:00
CREDITS.md Updated the credits for SDL 3.0 2025-01-13 16:42:50 -08:00
INSTALL.md Add a link to docs/INTRO-mingw.md 2025-03-06 16:26:15 -08:00
LICENSE.txt Updated copyright for 2025 2025-01-01 07:45:52 -08:00
README.md Updating documentation for the 3.2.0 release 2025-01-15 20:38:16 -08:00
WhatsNew.txt Added SDL_HINT_VIDEO_X11_EXTERNAL_WINDOW_INPUT 2025-03-05 09:13:10 -08:00

Simple DirectMedia Layer (SDL for short) is a cross-platform library designed to make it easy to write multi-media software, such as games and emulators.

You can find the latest release and additional information at: https://www.libsdl.org/

Installation instructions and a quick introduction is available in INSTALL.md

This library is distributed under the terms of the zlib license, available in LICENSE.txt.

Enjoy!

Sam Lantinga (slouken@libsdl.org)