Release of multimedia library SDL 3

The release of the SDL 3.2.0 library (Simple DirectMedia Layer) has been announced, marked as the first official stable release of the SDL 3 branch. The library aims to simplify game and multimedia application development and provides features such as hardware-accelerated output for 2D and 3D graphics, input handling, sound playback, and 3D output through OpenGL, OpenGL ES, Metal, Direct3D, or Vulkan. The code is written in C and distributed under the Zlib license. Bindings for using SDL in projects in various programming languages are provided.

Key innovations:

  • Significant improvements have been made to Wayland protocol support, which is now enabled by default in environments providing simultaneous support for Wayland and X11, and supporting the fifo-v1 and commit-timing-v1 protocol extensions.
  • Multimedia is enabled by default. server PipeWire, which is prioritized over PulseAudio.
  • Support for video capture from webcams has been added (when PipeWire is available).
  • Support for graphic tablets and digital pens has been introduced.
  • Significantly improved support for high pixel density screens (High DPI).
  • Support for color spaces and the ability to manage multiple color spaces have been added. Initial support for HDR has been implemented.
  • The audio handling code has been completely rewritten. Support for logical audio devices has been added (different parts of the program can work with their own separate audio device). Tools for audio stream management, stream transformation, sample rate conversion, mixing, buffering control, pitch, and volume adjustment have been added. Automatic handling of audio device connection or disconnection has been implemented, along with the ability to change the default audio device.
  • A backend for rendering through the Vulkan API has been added to the 2D rendering API. Functions for working with surfaces via the Vulkan API have been introduced.
  • A major cleanup of outdated features that have lost relevance in modern realities has been carried out. For example, support for OpenGL ES 1.0 and DirectFB has been discontinued, and code for working on obsolete platforms such as QNX, Pandora, WinRT, and OS/2 has been removed.
  • The ability to organize the program's work using callback calls and define the event processing loop in the main() function has been provided.
  • The API has undergone changes that affect compatibility. The naming rules for the API have been unified — calls in different subsystems are now named using a single common scheme.
  • New APIs added:
    • GPU API — cross-platform access to GPU and 3D rendering capabilities.
    • Dialog API — using dialogs for selecting/opening/saving files and directories.
    • Filesystem API — operations with the file system, managing directories, and searching for files.
    • Storage API — an abstract programming interface for accessing different storage systems.
    • Camera API — access to webcams.
    • Pen API — working with graphics tablets and digital pens, such as Wacom and Apple Pencil.

    • Source: opennet.ru
Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster