Clever Geek Handbook
📜 ⬆️ ⬇️

Simple DirectMedia Layer

Simple DirectMedia Layer (SDL) is a free cross-platform multimedia library that implements a single software interface to the graphics subsystem, sound devices and input means for a wide range of platforms. This library is actively used when writing cross-platform multimedia programs (mainly games).

Simple DirectMedia Layer
SDL logo.png
Sdl
Type ofAPI
Author
DeveloperSam Lanting
Written onC [1]
operating systemCross-platform software
First edition
Latest version
Licensezlib (since version 2.0);
GNU LGPL (up to 2.0)
Websitelibsdl.org
Simple DirectMedia Layer

Officially supported operating systems: Linux , Microsoft Windows , Mac OS X , iOS and Android [4] .

SDL APIs are available for languages: C , C ++ , C # , VB.NET , D , Ada , Vala , Eiffel , Haskell , Erlang , Euphoria , Java , Lisp , Lua , ML , Pascal , Perl , PHP , Pike , PureBasic , Python and Ruby [5] .

The bulk of the SDL contains a basic, very limited range of features. Additional functionality is provided by the extension libraries that are usually included with the SDL.

Starting with version 2.0, SDL is distributed under the terms of the zlib license ; before that, the GNU LGPL license was used, which allowed the library to be freely used in commercial programs, provided that it is used in them as a dynamically connected library . [6]

Content

  • 1 History
  • 2 Structure
  • 3 Gallery
  • 4 notes
  • 5 See also
  • 6 Literature
  • 7 References

History

SDL was created by Sam Lanting, as the lead programmer at Loki Entertainment Software . The SDL story begins when Sam worked on a Microsoft Windows emulator program for the Macintosh . He noticed that many pieces of code can work on Linux without problems. And he decided to create a small library so that other programmers could use it. In October 1997, a library release with version 0.3 was released, and later this library was used by Loki Software to port games for Linux .

After the bankruptcy of Loki Software, Sam worked as a lead developer at Blizzard , where he was porting World of Warcraft to Linux, but the company decided to close the project.

Since July 2012, Sam joined the Valve development team, where he is engaged in the further development of SDL.

Structure

 
SDL architecture

SDL itself is pretty simple. It can be thought of as a thin layer that provides support for 2D pixel operations, sound, file access, event processing, etc. It is often used in addition to OpenGL , providing support for the mouse, keyboard, and joysticks.

The library consists of several subsystems, such as Video, Audio, CD-ROM, Joystick and Timer. In addition to this basic low-level functionality, there are a number of standard libraries that provide additional functionality:

  • SDL_image - support for various raster formats [7] [8]
  • SDL_mixer - functions for organizing complex audio, mainly mixing data from several sources [9] [10]
  • SDL_net - support for network functions [11] [12]
  • SDL_ttf - TrueType Font Support [13] [14]
  • SDL_rtf - rendering text in RTF format (available only for SDL 1.2) [15]

Gallery

  •  

    Freeciv

  •  

    Unknown Horizons

  •  

    0 AD

  •  

    Hedgewars

  •  

    Frets on fire

  •  

    OpenTTD

  •  

    The battle for wesnoth

  •  

    Oolite

  •  

    Secret maryo chronicles

  •  

    Trine

Notes

  1. ↑ Simple DirectMedia Layer
  2. ↑ Sdl 1.2.15 released!
  3. ↑ http://libsdl.org/download-2.0.php
  4. ↑ Simple DirectMedia Layer (Neopr.) . Archived August 16, 2013.
  5. ↑ Simple DirectMedia Layer - Language Bindings (Neopr.) . www.libsdl.org. Date of treatment March 5, 2019.
  6. ↑ Simple DirectMedia Layer - License (unspecified) . www.libsdl.org. Date of treatment March 5, 2019.
  7. ↑ SDL_image 2.0 ( unspecified ) . www.libsdl.org. Date of treatment March 5, 2019.
  8. ↑ SDL_image 1.2 ( unspecified ) . www.libsdl.org. Date of treatment March 5, 2019.
  9. ↑ SDL_mixer 2.0 ( unspecified ) . www.libsdl.org. Date of treatment March 5, 2019.
  10. ↑ SDL_mixer 1.2 ( unspecified ) . www.libsdl.org. Date of treatment March 5, 2019.
  11. ↑ SDL_net 2.0 ( unspecified ) . www.libsdl.org. Date of treatment March 5, 2019.
  12. ↑ SDL_net 1.2 ( unspecified ) . www.libsdl.org. Date of treatment March 5, 2019.
  13. ↑ SDL_ttf 2.0 ( unspecified ) . www.libsdl.org. Date of treatment March 5, 2019.
  14. ↑ SDL_ttf 1.2 ( unspecified ) . www.libsdl.org. Date of treatment March 5, 2019.
  15. ↑ SDL_rtf 0.1 ( unopened ) . www.libsdl.org. Date of treatment March 5, 2019.

See also

  • Simple and Fast Multimedia Library (SFML)
  • GLFW
  • freeglut

Literature

  • Rankin, K. Linux Multimedia Hacks: Tips & Tools for Taming Images, Audio, and Video. - O'Reilly Media, 2006. - P. 139. - ISBN 9780596100766 .
  • Loki Software, Inc and Hall, JR Ch. 4. Mastering SDL // Programming Linux Games. - No Starch Press, 2001 .-- ISBN 9781886411494 .

Links

  • Official Page
  • Introduction to Simple DirectMedia Layer (Russian)
  • The low-level extension of the SDL library (Russian) the link does not work
  • Lessons on SDL (Russian) link does not work
  • SDL library reference in Russian
Source - https://ru.wikipedia.org/w/index.php?title=Simple_DirectMedia_Layer&oldid=101868887


More articles:

  • Lo Espejo
  • Lo Prado
  • Macul
  • Maipu (Chile)
  • 1939 Conclave Electoral Cardinals
  • Nunoa
  • Providencia (Chile)
  • Pudahuel
  • STS-129
  • Big Buyalyk

All articles

Clever Geek | 2019