ALERT

[FREE DEMO] Deploy Your Enterprise Cloud in Minutes

Simple Directmedia Layer

Definition - What does Simple Directmedia Layer mean?

Simple directmedia layer (SDL) is a cross-platform multimedia library written in C to provide low level access to keyboard, mouse, audio, joystick and 3D hardware through OpenGL. It is also used by MPEG playback software and many popular games.

Techopedia explains Simple Directmedia Layer

SDL was first released in 1998 by Sam Lantinga while working for Loki Software. SDL is a thin, cross platform library providing support for 2D pixel operations, sound, file access, event handling and threading. It complements OpenGL enabling the graphical output by providing mouse and keyboard input. All operations in SDL are performed by passing parameters to functions. The library is divided into numerous subsystems, such as the video, audio, CD-ROM, joystick and timer. Besides this basic low level support, there are also a few official libraries providing additional functionalities.

SDL is widely used to write computer games or other multimedia applications running on a variety of operating systems, including:

  • Windows
  • Mac OS X
  • OS 9
  • Linux
  • Google Android
  • AmigaOS
  • Haiku/BeOS
  • Syllable
  • WebOS

It also provides bindings to many other languages, including (a partial listing):

  • C#
  • Ada
  • Eiffel
  • D
  • Euphoria
  • Erlang
  • Haskell
  • Guile
  • Lisp
  • Java
  • ML

Thus, it is a common choice for many multimedia applications. It is also distributed under GNU LGPL version 2 and enables game development for several platforms at the same time, and porting of the game to a new platform within time. While the SDL sound features are modest, the SDL API, which is mainly graphic related, holds around 200 functions and a few structures. It also offers tools for parallel programming such as semaphores, mutex, condition variables and threads.

SDL has the title layer as its wrapper around specific operating system's functionality providing access to it. The SDL source codes are split into different modules for specific operating systems. On compilation, the right modules are selected for the target system. SDL use a GDI backend for Microsoft Windows, while it makes use of the Xlib to communicate with the Linux and OpenVMS for graphics and events.


Techopedia Deals

Connect with us

Techopedia on Linkedin
Techopedia on Linkedin
Tweat cdn.techopedia.com
"Techopedia" on Twitter


'@Techopedia'
Sign up for Techopedia's Free Newsletter!

Email Newsletter

Join thousands of others with our weekly newsletter

Resources
The 4th Era of IT Infrastructure: Superconverged Systems
The 4th Era of IT Infrastructure: Superconverged Systems:
Learn the benefits and limitations of the 3 generations of IT infrastructure – siloed, converged and hyperconverged – and discover how the 4th...
Approaches and Benefits of Network Virtualization
Approaches and Benefits of Network Virtualization:
Businesses today aspire to achieve a software-defined datacenter (SDDC) to enhance business agility and reduce operational complexity. However, the...
Free E-Book: Public Cloud Guide
Free E-Book: Public Cloud Guide:
This white paper is for leaders of Operations, Engineering, or Infrastructure teams who are creating or executing an IT roadmap.
Free Tool: Virtual Health Monitor
Free Tool: Virtual Health Monitor:
Virtual Health Monitor is a free virtualization monitoring and reporting tool for VMware, Hyper-V, RHEV, and XenServer environments.
Free 30 Day Trial – Turbonomic
Free 30 Day Trial – Turbonomic:
Turbonomic delivers an autonomic platform where virtual and cloud environments self-manage in real-time to assure application performance.