SDL 2 is the magnificent bit of cross-platform development open source tech that gives developers access to audio, keyboard, mouse, joystick, and graphics hardware. Not something normal users will touch, as it's part of the magic behind the scenes to get everything doing what it does on Linux and multiple other platforms.
This is used across many games and game engines including Steam, lots of Valve games like Portal and Half-Life, tons of indie games like Dead Cells, Baba is You, Bastion, Amnesia, FTL and the list goes on.
With the SDL 2.0.14 release out now it adds in support for the new PS5 DualSense and Xbox Series X controllers, there's a bunch of new functions just for game controllers for developers to be able to get additional information like if it has an LED or a particular sensor and more. There's also a whole new API for developers to create virtual joysticks.
Various other fixes, improvements and new API features too. Here's what's specific to Linux in SDL 2.0.14:
- Added the hint SDL_HINT_AUDIO_DEVICE_APP_NAME to specify the name that shows up in PulseAudio for your application
- Added the hint SDL_HINT_AUDIO_DEVICE_STREAM_NAME to specify the name that shows up in PulseAudio associated with your audio stream
- Added the hint SDL_HINT_LINUX_JOYSTICK_DEADZONES to control whether HID defined dead zones should be respected on Linux
- Added the hint SDL_HINT_THREAD_PRIORITY_POLICY to specify the thread scheduler policy
- Added the hint SDL_HINT_THREAD_FORCE_REALTIME_TIME_CRITICAL to allow time critical threads to use a realtime scheduling policy