Ryan C. Gordon
5a0c819863
audio: Add channel convert filter _after_ choosing an SIMD version.
2022-07-20 18:41:53 -04:00
Ryan C. Gordon
fe16084075
audio: LOG_DEBUG_CONVERT should use SDL_Log, not fprintf(stderr).
2022-07-20 18:41:53 -04:00
Ryan C. Gordon
257277903e
audio: first attempt at rewriting the channel converters.
...
This is not ready for production use!
2022-07-20 18:41:53 -04:00
Sam Lantinga
be3a945a8b
Added support for the 8BitDo Ultimate Wired Controller for Xbox
2022-07-20 11:05:55 -07:00
Ozkan Sezer
b700a32630
audio, pipewire: fix signatures of pw_get_library_version and pw_init.
...
Reference issue: https://github.com/libsdl-org/SDL/issues/5938
2022-07-20 07:01:10 +03:00
Ozkan Sezer
6e210d3797
audio, pipewire: pipewire_version_xx globals out of dynamic loading
...
Fixes build with --disable-pipewire-shared
Reference issue: https://github.com/libsdl-org/SDL/issues/5938
2022-07-20 07:01:10 +03:00
David Gow
78bad66773
video: wayland: Resize the window before sending the SDL_RESIZE event
...
Currently, the SDL_WINDOWEVENT_RESIZED event is sent before the actual
window is resized (and various internal state, such as the desired
GL/Vulkan backbuffer size, are updated). This makes sense, as SDL will
discard a no-op resize, which would be the case if we had resized before
sending the event (indeed, there are existing hacks to prevent this).
However, this means that SDL_{GL,Vulkan}_GetDrawableSize() will still
use the old size in the SDL_WINDOWEVENT_RESIZED handler. In the case of
SDL_Renderer, this means the drawable size it uses will be wrong, and
the viewport will get "updated" to the old value.
This then results in bug #5899 .
2022-07-18 09:21:15 -07:00
Sam Lantinga
53e685168d
Fixed declaration-after-statement warning
2022-07-18 07:31:23 -07:00
Sam Lantinga
6ad7fdecce
Fixed infinite loop for values bigger than 0x40000000
...
Fixes https://github.com/libsdl-org/SDL/issues/5930
2022-07-18 07:26:29 -07:00
Sam Lantinga
986818143d
Fixed missing imports in SDLActivity (thanks @guusw!)
2022-07-18 07:20:58 -07:00
Sam Lantinga
2be9301410
Fixed comment (thanks @pionere!)
2022-07-18 07:18:56 -07:00
Sam Lantinga
cef1514b01
Fixed some Xcode warnings
2022-07-17 09:07:04 -07:00
Sam Lantinga
e3916993e2
Added SDL_utils.c to the Xcode project
2022-07-17 08:47:06 -07:00
Sam Lantinga
b299cb3d3c
Added a utility function to calculate the next power of 2 for a value
2022-07-17 08:31:16 -07:00
Ethan Lee
90b86b132a
audio: Handle non-power-of-two spec.samples when unsupported
...
Fixes #3685
2022-07-17 10:36:15 -04:00
Cameron Gutman
d21a18c65f
WhatsNew.txt: Add line for Shield HIDAPI driver
2022-07-17 01:06:16 -05:00
Ethan Lee
cdf9010a19
Added new audio features to WhatsNew.txt
2022-07-16 12:39:30 -04:00
Ethan Lee
a09d62e4d8
directsound: Remove redundant SubFormat copy
2022-07-15 23:45:56 -04:00
Ethan Lee
c5e408ae98
directsound: For channel counts > 2, generate a dwChannelMask for CreateSoundBuffer
2022-07-15 13:59:46 -04:00
Ethan Lee
fff34f6304
windows: SDL_IMMDevice needed more deinit code from the Win32 path.
...
Fixes #5919
2022-07-15 09:49:29 -04:00
Frank Praznik
37aecda2c1
pipewire: Use PW_KEY_TARGET_OBJECT to specify stream connection nodes
...
Pipewire 0.3.44 introduced PW_KEY_TARGET_OBJECT, which is to be used to specify target connection nodes for streams. This parameter takes either a node path (PW_KEY_NODE_NAME) or serial number (PW_KEY_OBJECT_SERIAL) to specify a target node. The former is used in this case since the path is already being retrieved and stored for other purposes.
The target_id parameter in pw_stream_connect() is now deprecated and should always be PW_ID_ANY when PW_KEY_TARGET_OBJECT is used.
2022-07-14 12:23:50 -04:00
Ozkan Sezer
2201d80255
avoid -Werror=declaration-after-statement after last commit.
2022-07-14 02:40:00 +03:00
freebsd
24b3efd08d
(OpenBSD) Exe Path: Use PWD instead of CWD and use CWD as fallback
2022-07-13 16:24:20 -07:00
Sam Lantinga
883409ea07
Added support for the misc1 button on the Nintendo Switch Pro Controller
...
when using hid_nintendo kernel driver
2022-07-13 11:26:42 -07:00
SuperSamus
9a4f200d44
gamecontrollerdb: Linux, add mappings for hid-nintendo driver and more
...
Taken from https://github.com/gabomdq/SDL_GameControllerDB/blob/master/gamecontrollerdb.txt
2022-07-13 11:23:15 -07:00
Sam Lantinga
7e2a996958
Added a virtual joystick automated test
...
Useful to verify 4fa2653394
on a big-endian system
2022-07-13 08:58:15 -07:00
Sam Lantinga
06c7d22653
Added mappings for the HORI Fighting Stick mini 4 on Linux and macOS
2022-07-12 18:53:53 -07:00
Sam Lantinga
27d8cbf026
Added PowerA and Qanba vendors for Android USB device support
2022-07-12 18:18:00 -07:00
Sam Lantinga
e24b971a34
Added support for the NVIDIA Shield controller guide button
2022-07-12 17:53:03 -07:00
Sam Lantinga
c92ddddde6
Sort libraries by version and pick the shortest symlink (thanks @jpalus!)
...
Fixes https://github.com/libsdl-org/SDL_image/issues/289
2022-07-12 13:00:43 -07:00
Cameron Gutman
b321eae51a
joystick: Fix spurious battery empty events when opening a Shield controller
2022-07-11 19:43:25 -05:00
Cameron Gutman
a0d8848baa
joystick: Plumb SDL_JoystickSendEffect() for the Shield HIDAPI driver
...
The effect data format consists of one command byte followed by zero or more
payload bytes.
2022-07-11 19:38:26 -05:00
Sam Lantinga
deca77c166
Regenerated configure
2022-07-11 15:55:14 -07:00
Sam Lantinga
d5b8cf72f4
Revert "autotools: relax soname pattern for dynamic loading"
...
This reverts commit 8553632827
.
An issue with choosing the shortest one, is that it will prefer development libraries: libfoo.so is shorter then libfoo.so.0.6.
2022-07-11 15:54:15 -07:00
Frank Praznik
36d8460c9e
pipewire: Dynamically allocate the buffer for node strings
...
Calculate and allocate the buffer for the IO node name and path strings dynamically instead of using arbitrary sized static buffers.
2022-07-11 18:03:56 -04:00
Frank Praznik
996cea31ee
pipewire: Update default audio devices during runtime
...
Make the default device metadata node persist for the lifetime of the hotplug loop so the default source/sink devices will be updated if they change during runtime.
2022-07-11 18:03:56 -04:00
Frank Praznik
60da11f0e2
pipewire: Remove deprecated configuration key
...
With Pipewire now requiring a minimum version 0.3.24, the PW_KEY_CONTEXT_PROFILE_MODULES value is no longer required for legacy compatability and can be safely removed.
2022-07-11 18:03:56 -04:00
Ozkan Sezer
4fa2653394
SDL_GetJoystickGUIDInfo: byte-swap vendor, product and version values.
...
Reference issue: https://github.com/libsdl-org/SDL/issues/5907
2022-07-12 00:55:00 +03:00
Ozkan Sezer
b8f30c021b
SDL_endian.h: check for __powerpc__ and __PPC__ in big endian decision.
...
Also remove the _M_PPC check from there.
Reference issue: https://github.com/libsdl-org/SDL/issues/5907
2022-07-12 00:55:00 +03:00
SDL Wiki Bot
5d09b63155
Sync SDL wiki -> header
2022-07-11 17:35:11 +00:00
Ethan Lee
ecfbdce64b
pipewire: Require version 0.3.24 or newer at runtime
2022-07-11 13:34:35 -04:00
Ethan Lee
2f0816adb7
Add SDL_GetDefaultAudioInfo.
...
This API is supported on pipewire, pulseaudio, wasapi, and directsound.
Co-authored-by: Frank Praznik <frank.praznik@gmail.com>
2022-07-11 13:34:35 -04:00
Ethan Lee
15d0618083
SDL_IMMDevice: Fix a WASAPI-specific leak, clean up Add()
2022-07-11 12:54:34 -04:00
Ethan Lee
ae105ae1c7
windows: Move IMMDevice work to common file, implement DirectSound enumeration support
2022-07-11 12:54:34 -04:00
Sam Lantinga
2373da5d94
Exposed SDL_ResetKeyboard() as a public function
...
This will be used by Source 2 titles to reset keyboard state before showing assertion dialogs
2022-07-11 09:49:00 -07:00
Sam Lantinga
739155c44c
We want to ship the CMake input file, not the generated file
...
Fixes https://github.com/libsdl-org/SDL/issues/5905
2022-07-11 08:55:49 -07:00
Sam Lantinga
2c22d7204c
Fixed typo in description
2022-07-11 08:44:49 -07:00
Ozkan Sezer
cd2dcf54af
regenerated configure script.
2022-07-10 21:10:00 +03:00
Jan Palus
8553632827
autotools: relax soname pattern for dynamic loading
...
SDL makes assumption that each dynamically loaded library must have
SONAME matching pattern <libname>.so.<digit>+ hence it discards any file
that has two (or more) digits after ".so". in practice however SONAME
might be in the form of ie <libname>.so.<major>.<minor>.
as a solution keep requirement for dynamically loaded files to be named
<libname>.so.* but consider all the possibilities and prefer the shortest
one.
2022-07-10 10:54:29 -07:00
Cameron Gutman
6e712d2440
joystick: Add HIDAPI driver for NVIDIA SHIELD 2017 controller
...
Basic input already works using the OS HID driver, but this enables
force feedback and battery state reporting.
2022-07-10 10:53:26 -07:00