SDL

Simple DirectMedia Layer (SDL) is a cross-platform development library designed to provide low-level access to multimedia hardware components like graphics, audio, and input devices. It acts as a lightweight abstraction layer, enabling developers to write high-performance applications,…

Key facts

First appeared
1997
Category
technology
Problem solved
SDL was created to address the significant challenge of developing multimedia-rich applications, particularly games, across different operating systems. Before SDL, developers had to write separate, complex codebases using distinct, low-level APIs for graphics (like GDI on Windows, Xlib on Linux), audio (like DirectSound, OSS, ALSA), and input (like DirectInput, raw keyboard/mouse events) for each target platform. SDL provided a unified, simple API that abstracted away these platform-specific complexities, allowing a single codebase to run on Windows, macOS, Linux, and many other systems.
Platforms
OpenBSD, Emscripten (WebAssembly), Xbox One/Series X|S, Haiku, Nintendo Switch, FreeBSD, Windows, Linux, QNX, PlayStation 4/5, NetBSD, Android, iOS, macOS

Related technologies

Notable users

  • Blizzard Entertainment (used in legacy titles, some tools)
  • GOG.com (for compatibility layers for classic games)
  • Dolphin Emulator
  • ScummVM
  • RetroArch
  • PPSSPP Emulator
  • Valve Corporation (Steam Deck, Proton, games like Portal 2)
  • PICO-8
  • Humble Bundle
  • Minecraft (Bedrock Edition on some platforms)